本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置 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
-
设置 AWS 账户以访问亚马逊 Rekognition Video。有关更多信息,请参阅 步骤 1:设置AWS账户并创建用户。
-
安装和配置所需的 AWS SDK。有关更多信息,请参阅 第 2 步:设置 AWS CLI 以及 AWS SDKs。
-
要运行本开发人员指南中的代码示例,请确保您选择的用户具有编程访问权限。请参阅授予编程式访问权限了解更多信息。
您的用户还需要至少以下权限:
-
A mazonSQSFull 访问权限
-
AmazonRekognitionFullAccess
-
亚马逊 3 FullAccess
-
A mazonSNSFull 访问权限
如果您使用 Identity Center 进行IAM身份验证,请将权限添加到角色的权限集中,否则将权限添加到您的IAM角色中。
-
-
使用@@ 亚马逊SNS控制台创建亚马逊SNS
主题。在主题名称前面加上。AmazonRekognition请注意主题亚马逊资源名称 (ARN)。确保该主题与您使用的 AWS 端点位于同一区域。 -
使用@@ 亚马逊SQS控制台创建亚马逊SQS
标准队列。注意队列ARN。 -
为队列订阅主题(您在步骤 3 中创建)。
-
创建IAM服务角色以授予亚马逊 Rekognition Video 访问您的亚马逊主题的权限。SNS记下服务角色的 Amazon 资源名称 (ARN)。有关更多信息,请参阅 授予访问多个 Amazon SNS 主题的权限。
-
为确保您的账户安全,您需要将 Rekognition 的访问范围限制为仅限于您正在使用的资源。这可以通过将信任策略附加到您的IAM服务角色来完成。有关如何执行此操作的信息,请参阅 防止跨服务混淆代理。
-
向您在步骤 1 中创建的用户添加以下内联策略:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
MySid
", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:Service role ARN from step 7
" } ] }为该内联策略提供您选择的名称。
-
如果您使用客户托管 AWS Key Management Service 密钥对 Amazon S3 存储桶中的视频进行加密,请向密钥添加权限,允许您在步骤 7 中创建的服务角色解密视频。服务角色至少需要权限才能执行
kms:GenerateDataKey
和kms: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)。 -
现在您就可以运行使用 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
-
创建 IAM 服务角色。使用以下信息创建IAM服务角色:
-
对于服务名称,选择 Rekognition。
-
对于服务角色使用案例,选择 Rekognition。您应该会看到列出的AmazonRekognitionServiceRole权限策略。AmazonRekognitionServiceRole允许亚马逊 Rekognition Video 访问前缀为的SNS亚马逊话题。AmazonRekognition
-
为该服务角色指定您选择的名称。
-
-
记下服务角色ARN的内容。您需要它才能开始视频分析操作。
允许访问现有的 Amazon SNS 主题
您可以创建权限策略,允许 Amazon Rekognition Video 访问现有亚马逊主题。SNS
让亚马逊 Rekognition Video 访问现有亚马逊话题的权限 SNS
-
使用@@ 策略编辑器创建新的权限IAMJSON策略,然后使用以下策略。
topicarn
替换为所需亚马逊SNS主题的亚马逊资源名称 (ARN)。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": "
topicarn
" } ] } -
创建IAM服务角色或更新现有IAM服务角色。使用以下信息创建IAM服务角色:
-
对于服务名称,选择 Rekognition。
-
对于服务角色使用案例,选择 Rekognition。
-
附加您在步骤 1 中创建的权限策略。
-
-
记下服务角色ARN的内容。您需要它才能开始视频分析操作。