配置 Amazon Rekognition Video - Amazon Rekognition

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

配置 Amazon Rekognition Video

要将 Amazon Rekognition API Video 用于存储的视频,您必须配置用户和IAM服务角色才能访问您的亚马逊主题。SNS您还必须通过亚马逊SQS队列订阅您的亚马逊SNS主题。

注意

如果使用这些说明来设置 使用 Java 或 Python 分析存储在亚马逊 S3 存储桶中的视频 (SDK) 示例,则无需执行步骤 3、4、5 和 6。该示例包括用于创建和配置亚马逊SNS主题和亚马逊SQS队列的代码。

本节中的示例使用允许亚马逊 Rekognition Video 访问多个SNS主题的说明创建了一个新的亚马逊主题。如果您想使用现有的 Amazon SNS 主题,请使用允许访问现有的 Amazon SNS 主题步骤 3。

配置 Amazon Rekognition Video
  1. 设置 AWS 账户以访问亚马逊 Rekognition Video。有关更多信息,请参阅 步骤 1:设置AWS账户并创建用户

  2. 安装和配置所需的 AWS SDK。有关更多信息,请参阅 第 2 步:设置 AWS CLI 以及 AWS SDKs

  3. 要运行本开发人员指南中的代码示例,请确保您选择的用户具有编程访问权限。请参阅授予编程式访问权限了解更多信息。

    您的用户还需要至少以下权限:

    • A mazonSQSFull 访问权限

    • AmazonRekognitionFullAccess

    • 亚马逊 3 FullAccess

    • A mazonSNSFull 访问权限

    如果您使用 Identity Center 进行IAM身份验证,请将权限添加到角色的权限集中,否则将权限添加到您的IAM角色中。

  4. 使用@@ 亚马逊SNS控制台创建亚马逊SNS主题。在主题名称前面加上。AmazonRekognition请注意主题亚马逊资源名称 (ARN)。确保该主题与您使用的 AWS 端点位于同一区域。

  5. 使用@@ 亚马逊SQS控制台创建亚马逊SQS标准队列。注意队列ARN。

  6. 为队列订阅主题(您在步骤 3 中创建)。

  7. 授予亚马逊SNS主题向亚马逊SQS队列发送消息的权限。

  8. 创建IAM服务角色以授予亚马逊 Rekognition Video 访问您的亚马逊主题的权限。SNS记下服务角色的 Amazon 资源名称 (ARN)。有关更多信息,请参阅 授予访问多个 Amazon SNS 主题的权限

  9. 为确保您的账户安全,您需要将 Rekognition 的访问范围限制为仅限于您正在使用的资源。这可以通过将信任策略附加到您的IAM服务角色来完成。有关如何执行此操作的信息,请参阅 防止跨服务混淆代理

  10. 向您在步骤 1 中创建的用户添加以下内联策略

    { "Version": "2012-10-17", "Statement": [ { "Sid": "MySid", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:Service role ARN from step 7" } ] }

    为该内联策略提供您选择的名称。

  11. 如果您使用客户托管 AWS Key Management Service 密钥对 Amazon S3 存储桶中的视频进行加密,请向密钥添加权限,允许您在步骤 7 中创建的服务角色解密视频。服务角色至少需要权限才能执行 kms:GenerateDataKeykms:Decrypt 操作。例如:

    { "Sid": "Decrypt only", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/user from step 1" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*" }

    有关更多信息,请参阅我的 Amazon S3 存储桶使用自定义密AWSKMS钥进行默认加密。如何允许用户从存储桶下载并上传到存储桶? 以及使用存储在密钥管理服务中的KMSAWS密钥的服务器端加密来保护数据 (SSE-KMS)

  12. 现在您就可以运行使用 Java 或 Python 分析存储在亚马逊 S3 存储桶中的视频 (SDK)使用分析视频 AWS Command Line Interface中的示例了。

授予访问多个 Amazon SNS 主题的权限

您使用IAM服务角色授予亚马逊 Rekognition Video 访问您创建的SNS亚马逊主题的权限。IAM提供了用于创建亚马逊 Rekognition Video 服务角色的 Rekognition 用例。

您可以使用权限策略并在主题名称前加上(例如),即可授予 Amazon Rekogniti AmazonRekognitionServiceRole on Video 访问多个SNS亚马逊主题的权限。AmazonRekognitionAmazonRekognitionMyTopicName

让亚马逊 Rekognition Video 访问多个亚马逊话题 SNS
  1. 创建 IAM 服务角色。使用以下信息创建IAM服务角色:

    1. 对于服务名称,选择 Rekognition

    2. 对于服务角色使用案例,选择 Rekognition。您应该会看到列出的AmazonRekognitionServiceRole权限策略。AmazonRekognitionServiceRole允许亚马逊 Rekognition Video 访问前缀为的SNS亚马逊话题。AmazonRekognition

    3. 为该服务角色指定您选择的名称。

  2. 记下服务角色ARN的内容。您需要它才能开始视频分析操作。

允许访问现有的 Amazon SNS 主题

您可以创建权限策略,允许 Amazon Rekognition Video 访问现有亚马逊主题。SNS

让亚马逊 Rekognition Video 访问现有亚马逊话题的权限 SNS
  1. 使用@@ 策略编辑器创建新的权限IAMJSON策略,然后使用以下策略。topicarn替换为所需亚马逊SNS主题的亚马逊资源名称 (ARN)。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": "topicarn" } ] }
  2. 创建IAM服务角色或更新现有IAM服务角色。使用以下信息创建IAM服务角色:

    1. 对于服务名称,选择 Rekognition

    2. 对于服务角色使用案例,选择 Rekognition

    3. 附加您在步骤 1 中创建的权限策略。

  3. 记下服务角色ARN的内容。您需要它才能开始视频分析操作。