为用户设置 SageMaker 画布 - 亚马逊 SageMaker AI

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

为用户设置 SageMaker 画布

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

  • 创建亚马逊 A SageMaker I 域名。

  • 为域创建用户配置文件

  • 为用户设置 Okta 单点登录 (Okta SSO)。

  • 激活模型的链接共享。

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

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

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

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

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

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

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

将 SageMaker Canvas 应用程序添加到 Okta

为 Okta 设置登录方法。

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

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

  3. 选择添加

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

  5. 选择下一步

  6. 选择 SAML 2.0 作为登录方法。

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

  8. 选择完成

在 IAM 中设置 ID 联合身份验证

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. 对于角色,选择用于 Okta SSO 访问的 IAM 角色。

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

  9. 通过指定已复制的提供商 ARN 值来修改 IAM 信任关系策略,并添加以下策略:

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

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "AmazonSageMakerPresignedUrlPolicy", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl" ], "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

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

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

  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 中,可以对创建用户配置文件的管理员用户应用以下策略。

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

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

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