本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建项目策略文档
Rekognition Custom Labels 使用基于资源的策略(称为项目策略)来管理模型版本的复制权限。项目策略是一个 JSON 格式的文档。
项目策略用于允许或拒绝将模型版本从源项目复制到目标项目的主体权限。如果目标项目属于不同的 AWS 账户,则需要使用项目策略。如果目标项目与源项目属于同一个 AWS 账户,而您想限制对特定模型版本的访问权限,则也需要使用项目策略。例如,您可能想拒绝授予 AWS 账户中的特定 IAM 角色复制权限。
以下示例允许主体 arn:aws:iam::111111111111:role/Admin
复制模型版本 arn:aws:rekognition:us-east-1:123456789012:project/my_project/version/test_1/1627045542080
。
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::111111111111:role/Admin" }, "Action":"rekognition:CopyProjectVersion", "Resource":"arn:aws:rekognition:us-east-1:111111111111:project/my_project/version/test_1/1627045542080" } ] }
注意
Action
、Resource
、Principal
和 Effect
是项目策略文档中的必填字段。
唯一支持的 action
是 rekognition:CopyProjectVersion
。
NotAction
、NotResource
和 NotPrincipal
是禁止的字段,不得出现在项目策略文档中。
如果不指定项目策略,则与源项目属于同一 AWS 账户的主体仍然可以复制模型,只要该主体具有基于身份的策略(例如 AmazonRekognitionCustomLabelsFullAccess
)来授予其调用 CopyProjectVersion
的权限即可。
以下过程会创建一个项目策略文档文件,您可将其与 附加项目策略 (SDK) 中的 Python 示例结合使用。如果您使用的是 put-project-policy
AWS CLI 命令,则可将项目策略作为 JSON 字符串提供。
创建项目策略文档
-
在文本编辑器中,创建以下文档。更改以下值:
{ "Version":"2012-10-17", "Statement":[ { "Effect":"
ALLOW or DENY
", "Principal":{ "AWS":"principal
" }, "Action":"rekognition:CopyProjectVersion", "Resource":"Model version ARN
" } ] } -
将项目策略保存到计算机中。
-
按照附加项目策略 (SDK)中的说明将项目策略附加到源项目。