使用 IAM 身份中心自定义注册到 Amazon SageMaker 域名 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 IAM 身份中心自定义注册到 Amazon SageMaker 域名

重要

允许 Amazon SageMaker Studio 或 Amazon SageMaker Studio Classic 创建亚马逊 SageMaker资源的自定义 IAM 策略还必须授予向这些资源添加标签的权限。需要向资源添加标签的权限,因为 Studio 和 Studio Classic 会自动标记他们创建的任何资源。如果 IAM 策略允许 Studio 和 Studio Classic 创建资源但不允许标记,则在尝试创建资源时可能会出现 AccessDenied “” 错误。有关更多信息,请参阅 提供标记 SageMaker资源的权限

Amazon Amazon 托管政策 SageMaker授予创建 SageMaker 资源的权限已经包括在创建这些资源时添加标签的权限。

本主题介绍如何使用 SageMaker 控制台或中的身份验证登录 Amazon IAM Identity Center 到 Amazon SageMaker 域 Amazon CLI。有关设置用于域的 IAM 身份中心的信息,请参阅设置 IAM 身份中心以与 Amazon SageMaker 域一起使用。有关如何使用 Amazon Identity and Access Management (IAM) 身份验证进行登录的信息,请参阅快速入门使用 IAM 进行自定义入职

从控制台加入

满足中的先决条件(创建 Amazon 帐户、创建管理员用户和设置您的帐户 Amazon CLI)后设置 Amazon SageMaker 先决条件,请按照步骤操作。

使用 IAM 身份中心登录域名
  1. 打开SageMaker 控制台

  2. 在左侧导航窗格中,选择管理员配置

  3. 管理员配置下,选择

  4. 域名页面中,选择创建域名

  5. 设置 SageMaker 域名页面上,选择为组织设置

  6. 选择配置

第 1 步:域名详情

  1. 域名中,输入域名的唯一名称。例如,这可以是您的项目或团队名称。

  2. 选择下一步

步骤 2:用户和机器学习活动

选择群组或为该域创建用户,然后向他们授予您希望他们访问的机器学习活动的权限。

在这些设置说明中,我们使用 IAM 身份中心选项。要在 IAM Identity Center 中使用身份验证,您必须属于 Amazon Organizations中的一个组织。有关设置 IAM 身份中心的信息,请参阅设置 IAM 身份中心以与 Amazon SageMaker 域一起使用

您在此步骤中配置的 IAM 角色将分配给所选的 IAM Identity Center 群组以及属于该群组的所有用户。

  1. 在 “你想如何访问 Studio?” 下 ,选择 “Amazon 身份中心”。

  2. 在 “谁将使用 Studio?” 下 选择 IAM 身份中心用户或群组,然后选择选择。您需要在配置 IAM 身份中心的同一区域内设置 Amazon SageMaker Studio。您可以通过从控制台右上角的下拉列表中选择区域来更改域的区域,也可以通过导航到Amazon 访问门户来更改您的 IAM Identity Center 区域。

  3. 他们执行哪些机器学习活动? 您可以通过选择 “使用现有角色” 来使用现有角色,也可以通过选择 “创建新角色” 并选中您希望该角色有权访问的 ML 活动来创建新角色。您最多可以选择 10 个 ML 活动。

  4. 在选择机器学习活动时,您可能需要满足要求。要满足要求,请选择 “添加” 并完成要求。

  5. 满足所有要求后,选择 “下一步”。

第 3 步:应用程序

在此步骤中,您可以配置在上一步中启用的应用程序。有关 ML 活动的更多信息,请参阅机器学习活动参考

如果尚未启用该应用程序,则会收到有关该应用程序的警告。要启用尚未启用的应用程序,请选择 “返回” 返回上一步并按照前面的说明进行操作。

演播室配置:

Studio 下,您可以选择在 Studio 的新版本和经典版本之间进行选择,作为您的默认体验。这意味着要选择在打开 Studio 后要与之交互的 ML 环境。

  • Studio-新增功能包括多个集成开发环境 (IDE) 和应用程序,包括 Amazon SageMaker Studio Classic。如果选择该选项,Studio Classic IDE 将具有默认设置。有关默认设置的信息,请参阅默认设置

  • Studio Classic 包含 Jupyter 如果选择此选项,则可以配置您的 Studio 经典配置。

    有关 Studio Classic 的信息,请参阅亚马逊 SageMaker Studio 经典版

SageMaker 画布配置:

如果您启用了 Amazon SageMaker Canvas,开始使用 Amazon C SageMaker anvas请参阅,了解入门操作的说明和配置详情。

Studio 经典版配置:

如果您选择 Studio-新建(推荐)作为默认体验,则 Studio Classic IDE 将使用默认设置。有关默认设置的信息,请参阅默认设置

如果您选择 Studio Classic 作为默认体验,则可以选择启用或禁用笔记本资源共享。笔记本资源包括单元输出和 Git 存储库等工件。有关笔记本资源的更多信息,请参阅共享和使用 Amazon SageMaker Studio 经典笔记本电脑

如果您启用了笔记本资源共享:

  1. 在 “可共享笔记本资源的 S3 位置” 下,输入您的 Amazon S3 位置。

  2. 在 “加密密钥-可选” 下,保留为 “无自定义加密”,或者选择现有 Amazon KMS 密钥或选择 “输入 KMS 密钥 ARN” 并输入 Amazon KMS 密钥的 ARN。

  3. 在 “笔记本单元输出共享首选项” 下,选择 “允许用户共享单元格输出” 或 “禁用单元输出共享”。

RStudio 配置:

要启用 RStudio,你需要 rStudio 许可证。要进行设置,请参阅RStudio 许可证

  1. RStudio Workbench 下,验证是否会自动检测到您的 RStudio 许可证。有关获取 RStudio 许可证并使用激活许可证的更多信息 SageMaker,请参阅RStudio 许可证

  2. 选择要在其上启动 RStudio Server 的实例类型。有关更多信息,请参阅 R StudioServerPro 实例类型

  3. 权限下,创建您的角色或选择现有角色。该角色必须具有以下权限策略。此策略允许 R StudioServerPro 应用程序访问必要的资源。它还允许 Amazon SageMaker 在现有 R StudioServerPro StudioServerPro 应用程序处于DeletedFailed状态时自动启动 R 应用程序。有关向角色添加权限的信息,请参阅修改角色权限策略(控制台)

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "license-manager:ExtendLicenseConsumption", "license-manager:ListReceivedLicenses", "license-manager:GetLicense", "license-manager:CheckoutLicense", "license-manager:CheckInLicense", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DeleteLogDelivery", "logs:Describe*", "logs:GetLogDelivery", "logs:GetLogEvents", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy", "logs:UpdateLogDelivery", "sagemaker:CreateApp" ], "Resource": "*" } ] }
  4. RStudio Connect 下,添加 RStudio Connect 服务器的 URL。RStudio Connect 是 Shiny 应用程序、R Markdown 报告、控制面板、绘图等的发布平台。当你登录 RStudio 时 SageMaker,不会创建 RStudio Connect 服务器。有关更多信息,请参阅 RStudio Connect URL

  5. RStudio Package Manager 下,添加 rStudio Package Manager 的网 SageMaker 在您加载 RStudio 时为 Package Manager 创建默认的软件包存储库。有关 RStudio 软件包管理器的更多信息,请参阅 RStudio Package Manager

  6. 选择下一步

代码编辑器配置:

如果您启用了代码编辑器,请参阅代码编辑器以获取概述和配置详细信息。

第 4 步:网络

选择您希望 Studio 连接到其他 Amazon 服务的方式。

您可以通过指定仅限虚拟私有云 (VPC) 的网络访问类型来选择禁用对您的 Studio 的互联网访问。如果您选择此选项,则除非您的 VPC 具有指向 SageMaker API 和运行时的接口终端节点,或者具有互联网访问权限的网络地址转换 (NAT) 网关,并且您的安全组允许出站连接,否则您将无法运行 Studio 笔记本。有关 Amazon VPC 的更多信息,请参阅选择 Amazon VPC

如果您选择虚拟私有云 (VPC) Private Cloud,则只需执行以下步骤。如果您选择公共互联网接入,则需要执行以下前两个步骤。

  1. VPC 下,选择亚马逊 VPC ID。

  2. 在 “子网” 下,选择一个或多个子网。如果您未选择任何子网,则 SageMaker 使用 Amazon VPC 中的所有子网。我们建议您使用不在受限可用区中创建的多个子网。在这些受限可用区中使用子网可能会导致容量不足错误和更长的应用程序创建时间。有关受限可用区的更多信息,请参阅可用区

  3. 安全组下,选择一个或多个子网。

如果选择了 “仅限 VPC”,则 SageMaker 会自动将为该域定义的安全组设置应用于在该域中创建的所有共享空间。如果选择 “仅限公共互联网”,则 SageMaker 不会将安全组设置应用于在域中创建的共享空间。

第 5 步:存储

您可以选择对数据进行加密。创建域时为您创建的亚马逊弹性文件系统 (Amazon EFS) 和亚马逊弹性区块存储 (Amazon EBS) Block Store 文件系统。代码编辑器和 JupyterLab 空格都使用 Amazon EBS 的大小。

加密您的 Amazon EFS 和 Amazon EBS 文件系统后,您无法更改加密密钥。要加密您的 Amazon EFS 和 Amazon EBS 文件系统,您可以使用以下配置。

  • 在 “加密密钥-可选” 下,保留为 “无自定义加密”,或者选择现有 KMS 密钥或选择 “输入 KMS 密钥 ARN”,然后输入 KMS 密钥的 ARN。

  • 在 “默认空间大小-可选” 下,输入默认空间大小。

  • 在 “最大空间大小-可选” 下,输入最大空间大小。

步骤 6:查看并创建

查看您的域名设置。如果需要更改设置,请选择相关步骤旁边的 “编辑”。确认您的域名设置准确无误后,选择提交,即可为您创建域名。此过程可能需要几分钟时间。

从登机 Amazon CLI

使用以下命令通过 IAM Identity Center 中的身份验证登录到域 Amazon CLI。

满足中的先决条件(创建 Amazon 帐户、创建管理用户和设置您的帐户 Amazon CLI)后设置 Amazon SageMaker 先决条件,请执行以下步骤。

  1. 创建用于创建域和附加AmazonSageMakerFullAccess策略的执行角色。您也可以使用至少具有附加信任策略的现有角色,该策略可授予担任该角色的 SageMaker 权限。有关更多信息,请参阅 SageMaker 角色

    aws iam create-role --role-name execution-role-name --assume-role-policy-document file://execution-role-trust-policy.json aws iam attach-role-policy --role-name execution-role-name --policy-arn arn:aws:iam::aws:policy/AmazonSageMakerFullAccess
  2. 获取账户的默认 Amazon Virtual Private Cloud (Amazon VPC)。

    aws --region region ec2 describe-vpcs --filters Name=isDefault,Values=true --query "Vpcs[0].VpcId" --output text
  3. 获取默认 Amazon VPC 中的子网列表。

    aws --region region ec2 describe-subnets --filters Name=vpc-id,Values=default-vpc-id --query "Subnets[*].SubnetId" --output json
  4. 通过传递默认 Amazon VPC ID、子网和执行角色 ARN 来创建域。您还必须传递 SageMaker 图片 ARN。有关可用 JupyterLab版本 ARN 的信息,请参阅设置默认 JupyterLab版本

    aws --region region sagemaker create-domain --domain-name domain-name --vpc-id default-vpc-id --subnet-ids subnet-ids --auth-mode SSO --default-user-settings "ExecutionRole=arn:aws:iam::account-number:role/execution-role-name,JupyterServerAppSettings={DefaultResourceSpec={InstanceType=system,SageMakerImageArn=image-arn}}" \ --query DomainArn --output text
  5. 验证域名是否已创建。

    aws --region region sagemaker list-domains

登录后访问该域名

在您获得域访问权限后,系统会向您发送一封电子邮件,邀请您创建密码并使用 IAM Identity Center。该电子邮件还包含用于登录域名的 URL。有关登录和会话持续时间的更多信息,请参阅如何登录用户门户

激活账户后,前往域名 URL,登录,然后等待创建您的用户个人资料。后续访问时,您只需要等待 Studio 应用程序加载完毕即可。

为 URL 添加书签。网址也可以在域名设置页面上找到。