You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Amazon Textract异步OCR任务无法触发SNS通知问题求助

解决Amazon Textract异步任务无SNS通知问题

先修正输入参数的语法错误

你的输入参数中FeatureTypes的写法存在问题:

FeatureTypes: [
  // FeatureTypes // required
  "TABLES" || "FORMS",
],

在JavaScript中,"TABLES" || "FORMS"会被解析为单个值"TABLES"(逻辑或返回第一个真值)。若需同时启用表格和表单识别,应改为:

FeatureTypes: ["TABLES", "FORMS"],

若仅需其中一种,直接写单个值即可。虽然这不一定直接导致SNS通知失败,但参数异常可能引发任务执行问题,需先修正。

关键排查步骤

1. 验证SNS主题的权限策略

除了服务角色的信任策略,SNS主题本身必须允许Textract发布消息。给目标SNS主题添加以下权限策略(替换为你的账号和主题ARN):

{
  "Version": "2008-10-17",
  "Id": "TextractPublishPolicy",
  "Statement": [
    {
      "Sid": "AllowTextractToPublish",
      "Effect": "Allow",
      "Principal": {
        "Service": "textract.amazonaws.com"
      },
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:ap-southeast-1:123456789012:AmazonTextractTopic"
    }
  ]
}

这是最容易被忽略的配置项,仅配置服务角色信任策略不足以让Textract向SNS发送消息。

2. 检查服务角色的权限

确保AmazonTextractServiceRole角色拥有向目标SNS主题发布消息的权限,添加如下权限策略:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:ap-southeast-1:123456789012:AmazonTextractTopic"
    }
  ]
}

3. 查看CloudTrail日志

通过CloudTrail搜索事件名称为Publish、资源为你的SNS主题ARN的事件,检查是否存在AccessDenied错误,这能直接定位权限类问题。

4. 确认SNS订阅状态

检查SNS主题的订阅端点(邮箱、Lambda等)是否已完成订阅确认,未确认的订阅无法接收消息。在SNS控制台查看订阅状态是否为Confirmed。

5. 验证区域一致性

确保Textract任务执行区域与SNS主题所在区域一致(均为ap-southeast-1),跨区域配置易引发权限或网络问题,优先确认同区域部署。

6. 测试SNS主题可用性

手动向SNS主题发布测试消息,确认订阅者能正常接收,排除SNS主题本身或订阅端的故障。

内容的提问来源于stack exchange,提问作者zeagord

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 03:35:00