为用户设置 SageMaker 画布 - Amazon SageMaker

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

为用户设置 SageMaker 画布

要设置 Amazon SageMaker Canvas,请执行以下操作:

  • 创建一个 Amazon SageMaker 域名。

  • 为域创建用户配置文件

  • 为您的用户设置 Okta 单点登录 (OktaSSO)。

  • 激活模型的链接共享。

使用 Okta 单点登录 (OktaSSO) 授予您的用户访问亚马逊 Canvas 的权限。 SageMaker SageMaker 画布支持 SAML 2.0 SSO 方法。以下各节将指导您完成设置 Okta SSO 的过程。

要设置域名,请参阅使用适用于 Amazon 的自定义设置 SageMaker并按照使用IAM身份验证设置域名的说明进行操作。您可以使用以下信息来帮助您完成本节中的过程:

  • 您可以忽略创建项目的步骤。

  • 您无需提供对其他 Amazon S3 存储桶的访问权限。您的用户可以使用我们在创建角色时提供的默认存储桶。

  • 要授予用户与数据科学家共享笔记本的权限,请打开笔记本共享配置

  • 使用 Amazon SageMaker Studio 经典版 3.19.0 或更高版本。有关更新 Amazon SageMaker Studio 经典版的信息,请参阅关闭并更新 SageMaker Studio 经典版

可使用以下过程设置 Okta。对于以下所有过程,您可以为指定相同的IAM角色IAM-role

将 SageMaker Canvas 应用程序添加到 Okta

为 Okta 设置登录方法。

  1. 登录 Okta 管理员控制面板。

  2. 选择添加应用程序。搜索 AWS 账户联合身份验证

  3. 选择添加

  4. 可选:将名称更改为 Amazon SageMaker Canvas

  5. 选择下一步

  6. 选择 SAML2.0 作为登录方法。

  7. 选择身份提供者元数据以打开元数据XML文件。将该文件保存在本地。

  8. 选择完成

在中设置 ID 联合 IAM

AWS Identity and Access Management (IAM) 是您用来获取 AWS 账户访问权限的 AWS 服务。您可以 AWS 通过IAM账户访问。

  1. 登录 AWS 控制台。

  2. 选择 AWS Identity and Access Management (IAM)

  3. 选择身份提供商

  4. 选择创建提供商

  5. 配置提供商中,指定以下内容:

  6. 身份提供商下找到您的身份提供商。复制其提供者ARN值。

  7. 对于角色,请选择您用于SSO访问 Okta 的角色。IAM

  8. 在IAM角色的 “信任关系” 下,选择 “编辑信任关系”。

  9. 通过指定您复制的 P ro ARN vider 值来修改IAM信任关系策略,然后添加以下策略:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::123456789012:saml-provider/Okta" }, "Action": [ "sts:AssumeRoleWithSAML", "sts:SetSourceIdentity", "sts:TagSession" ], "Condition": { "StringEquals": { "SAML:aud": "https://signin.aws.amazon.com/saml" } } } ] }
  10. 对于权限,添加以下策略:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonSageMakerPresignedUrlPolicy", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:CreatePresignedDomainUrlWithPrincipalTag" ], "Resource": "*" } ] }

在 Okt SageMaker a 中配置画布

使用以下步骤在 Okta 中配置 Amazon C SageMaker anvas。

要将 Amazon SageMaker Canvas 配置为使用 Okta,请按照本节中的步骤操作。必须为每个SageMakerStudioProfileName字段指定唯一的用户名。例如,您可以将 user.login 用作值。如果用户名与 SageMaker Canvas 配置文件名称不同,请选择不同的唯一标识属性。例如,您可以使用员工的 ID 号作为配置文件名称。

有关可以为属性设置的值的示例,请参阅该过程后面的代码。

  1. 目录下,选择

  2. 使用以下模式添加一个组:sagemaker#canvas#IAM-role#AWS-account-id

  3. 在 Okta 中,打开 AWS 账户联合身份验证应用程序集成配置。

  4. 为 AWS 账户联合应用程序选择登录

  5. 选择编辑并指定以下内容:

  6. 选择属性

  7. SageMakerStudioProfileName字段中,为每个用户名指定唯一值。用户名必须与您在 AWS 控制台中创建的用户名一致。

    Attribute 1: Name: https://aws.amazon.com/SAML/Attributes/PrincipalTag:SageMakerStudioUserProfileName Value: ${user.login} Attribute 2: Name: https://aws.amazon.com/SAML/Attributes/TransitiveTagKeys Value: {"SageMakerStudioUserProfileName"}
  8. 选择环境类型。选择常规 AWS

    • 如果您的环境类型未列出,则可以在ACSURL字段ACSURL中设置。如果列出了您的环境类型,则无需输入您的 ACS URL

  9. 对于身份提供商 ARN,请指定ARN您在上述过程的步骤 6 中使用的。

  10. 指定会话持续时间

  11. 选择加入所有角色

  12. 通过指定以下字段来打开使用组映射

    • 应用程序筛选条件okta

    • 组筛选条件^aws\#\S+\#(?IAM-role[\w\-]+)\#(?accountid\d+)$

    • 角色值模式arn:aws:iam::$accountid:saml-provider/Okta,arn:aws:iam::$accountid:role/IAM-role

  13. 选择保存/下一步

  14. 分配下,将应用程序分配给您已创建的组。

在中添加有关访问控制的可选策略 IAM

在中IAM,您可以将以下策略应用于创建用户配置文件的管理员用户。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateSageMakerStudioUserProfilePolicy", "Effect": "Allow", "Action": "sagemaker:CreateUserProfile", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": [ "studiouserid" ] } } } ] }

如果选择将上述策略添加到管理员用户,则必须使用在中设置 ID 联合 IAM中的以下权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonSageMakerPresignedUrlPolicy", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:CreatePresignedDomainUrlWithPrincipalTag" ], "Resource": "*", "Condition": { "StringEquals": { "sagemaker:ResourceTag/studiouserid": "${aws:PrincipalTag/SageMakerStudioUserProfileName}" } } } ] }