授予 IAM 使用权限 SageMaker Ground Truth 控制 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

授予 IAM 使用权限 SageMaker Ground Truth 控制

使用 “Ground Truth” 区域 SageMaker 控制台,您需要授予 IAM 实体访问的权限 SageMaker 和其他AmazonGround Truth 互作用的服务。访问其他所需的权限Amazon服务取决于您的使用情形:

  • 所有使用案例都需要 Amazon S3 权限。这些权限必须授予对包含输入和输出数据的 Amazon S3 存储桶的访问权限。

  • Amazon Web Services Marketplace使用供应商工作人员需要许可。

  • 私人工作团队设置需要 Amazon Cognito 许可。

  • Amazon KMS需要权限才能查看可用Amazon KMS可用于输出数据加密的密钥。

  • 需要 IAM 权限才能列出预先存在的执行角色或创建新的执行角色。此外,你必须使用添加PassRole允许的权限 SageMaker 以使用选择的执行角色来启动标记作业。

以下部分列出了您可能希望授予 IAM 角色以使用 Ground Truth 的一个或多个功能的策略。

Ground Truth 控制台权限

向 IAM 用户或角色授 Ground Truth 使用 SageMaker 要创建标记作业,请将以下策略附加到该用户或角色。以下策略将为 IAM 角色授予权限以使用内置任务类型任务类型。如果您要创建自定义标记工作流,请在中添加策略。自定义标记流程权限对于以下策略。每个Statement以下政策中包含的内容将在此代码块下面进行描述。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SageMakerApis", "Effect": "Allow", "Action": [ "sagemaker:*" ], "Resource": "*" }, { "Sid": "KmsKeysForCreateForms", "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ListAliases" ], "Resource": "*" }, { "Sid": "AccessAwsMarketplaceSubscriptions", "Effect": "Allow", "Action": [ "aws-marketplace:ViewSubscriptions" ], "Resource": "*" }, { "Sid": "SecretsManager", "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret", "secretsmanager:DescribeSecret", "secretsmanager:ListSecrets" ], "Resource": "*" }, { "Sid": "ListAndCreateExecutionRoles", "Effect": "Allow", "Action": [ "iam:ListRoles", "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy" ], "Resource": "*" }, { "Sid": "PassRoleForExecutionRoles", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "sagemaker.amazonaws.com" } } }, { "Sid": "GroundTruthConsole", "Effect": "Allow", "Action": [ "groundtruthlabeling:*", "lambda:InvokeFunction", "lambda:ListFunctions", "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:GetBucketCors", "s3:PutBucketCors", "s3:ListAllMyBuckets", "cognito-idp:AdminAddUserToGroup", "cognito-idp:AdminCreateUser", "cognito-idp:AdminDeleteUser", "cognito-idp:AdminDisableUser", "cognito-idp:AdminEnableUser", "cognito-idp:AdminRemoveUserFromGroup", "cognito-idp:CreateGroup", "cognito-idp:CreateUserPool", "cognito-idp:CreateUserPoolClient", "cognito-idp:CreateUserPoolDomain", "cognito-idp:DescribeUserPool", "cognito-idp:DescribeUserPoolClient", "cognito-idp:ListGroups", "cognito-idp:ListIdentityProviders", "cognito-idp:ListUsers", "cognito-idp:ListUsersInGroup", "cognito-idp:ListUserPoolClients", "cognito-idp:ListUserPools", "cognito-idp:UpdateUserPool", "cognito-idp:UpdateUserPoolClient" ], "Resource": "*" } ] }

此策略包括以下语句。您可以通过向Resource该声明的清单。

SageMakerApis

本声明包括sagemaker:*,这将允许用户执行所有操作SageMaker API 操作. 您可以通过限制用户执行不用于创建和监控标签作业的操作来缩小此策略的范围。

KmsKeysForCreateForms

如果要授予用户列出并选择的权限,则只需要包含此语句。Amazon KMSGround Truth 控制台中用于输出数据加密的密钥。以上策略向用户授予列出和选择账户中的任何密钥的权限。Amazon KMS. 要限制用户可以列出和选择的密钥,请在其中指定那些关键 ARNResource.

SecretsManager

该语句为用户提供描述、列出和创建资源的权限。Amazon Secrets Manager创建标签作业所必需的。

ListAndCreateExecutionRoles

此语句授予用户列表的权限 (ListRoles) 然后创建 (CreateRole) 您的账户中的 IAM 角色。它还授予用户创建的权限(CreatePolicy) 策略和附加 (AttachRolePolicy) 针对 IAM 实体的策略。在控制台中列出、选择并在必要时创建执行角色是必需的。

如果您已创建执行角色,并希望缩小此语句的范围,以便用户只能在控制台中选择该角色,请指定您希望用户有权在其中查看的 IAM 角色的 ARNResource然后删除操作CreateRoleCreatePolicy, 和AttachRolePolicy.

AccessAwsMarketplaceSubscriptions

需要这些权限才能查看和选择您在创建标签作业时已订阅的供应商工作团队。要授予用户以下操作的权限订阅向供应商工作团队添加声明供应商人力权限到上面的政策

PassRoleForExecutionRoles

为了授予标签作业创建者预览工作人员 UI 并验证输入数据、标签和说明是否正确显示的权限,这是必需的。此声明授予 IAM 实体权限,以便将用于创建标签作业的 IAM 执行角色传递给 SageMaker 以渲染和预览工作器 UI。要缩小此策略的范围,请在下面添加用于创建标签作业的执行角色的角色 ARNResource.

GroundTruthConsole

  • groundtruthlabeling— 这允许用户执行使用 Ground Truth 控制台的某些功能所需的操作。这些包括描述标签作业状态的权限 (DescribeConsoleJob) 中,列出输入清单文件中的所有数据集对象(ListDatasetObjects)中,如果选择了数据集采样,则过滤数据集(RunFilterOrSampleDatasetJob),如果使用自动数据标签,则生成输入清单文件(RunGenerateManifestByCrawlingJob)。这些操作仅在使用 Ground Truth 控制台时可用,不能直接使用 API 调用。

  • lambda:InvokeFunctionlambda:ListFunctions— 这些操作授予用户列出和调用用于运行自定义标签工作流程的 Lambda 函数的权限。

  • s3:*— 本声明中包含的所有 Amazon S3 权限都用于查看 Amazon S3 存储桶自动化数据设置(ListAllMyBuckets)中,访问 Amazon S3 中的输入数据(ListBucketGetObject),如果需要,请在 Amazon S3 中检查并创建 CORS 策略(GetBucketCorsPutBucketCors),然后将标签作业输出文件写入 S3 (PutObject)。

  • cognito-idp— 这些权限用于创建、查看和管理使用 Amazon Cognito 的私人员队伍。要了解这些操作的更多信息,请参阅Amazon Cognito API 参考.

自定义标记流程权限

将以下语句添加到策略中的语句类似于中的语句Ground Truth 控制台权限要为 IAM 用户提供选择预注释前和注释后 Lambda 函数的权限,同时创建自定义标签工作流.

{ "Sid": "GroundTruthConsoleCustomWorkflow", "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:ListFunctions" ], "Resource": "*" }

要了解如何为 IAM 实体授予权限以创建和测试注释前和注释后 Lambda 函数,请参阅使用带有 Ground Truth 的 Lambda 所需的权限.

私有人力权限

在添加到权限策略时,以下权限授予访问权限以使用 Amazon Cognito 创建和管理私有人力和工作组。使用不需要这些权限即可OIDC IdP 人力.

{ "Effect": "Allow", "Action": [ "cognito-idp:AdminAddUserToGroup", "cognito-idp:AdminCreateUser", "cognito-idp:AdminDeleteUser", "cognito-idp:AdminDisableUser", "cognito-idp:AdminEnableUser", "cognito-idp:AdminRemoveUserFromGroup", "cognito-idp:CreateGroup", "cognito-idp:CreateUserPool", "cognito-idp:CreateUserPoolClient", "cognito-idp:CreateUserPoolDomain", "cognito-idp:DescribeUserPool", "cognito-idp:DescribeUserPoolClient", "cognito-idp:ListGroups", "cognito-idp:ListIdentityProviders", "cognito-idp:ListUsers", "cognito-idp:ListUsersInGroup", "cognito-idp:ListUserPoolClients", "cognito-idp:ListUserPools", "cognito-idp:UpdateUserPool", "cognito-idp:UpdateUserPoolClient" ], "Resource": "*" }

要了解有关使用 Amazon Cognito 创建私有人力的更多信息,请参阅创建和管理 Amazon Cognito 人力.

供应商人力权限

您可以将以下语句添加到中的策略中。授予 IAM 使用权限 SageMaker Ground Truth 控制授予 IAM 实体订阅权限供应商人力.

{ "Sid": "AccessAwsMarketplaceSubscriptions", "Effect": "Allow", "Action": [ "aws-marketplace:Subscribe", "aws-marketplace:Unsubscribe", "aws-marketplace:ViewSubscriptions" ], "Resource": "*" }