了解域空间权限和执行角色 - Amazon SageMaker

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

了解域空间权限和执行角色

对于许多 SageMaker 应用程序来说,当您在域中启动 SageMaker 应用程序时,会为该应用程序创建一个空间。当用户配置文件创建空间时,该空间将扮演一个 AWS Identity and Access Management (IAM) 角色,该角色定义了授予该空间的权限。下一页提供了有关空间类型和定义空间权限的执行角色的信息。

IAM角色是您可以在自己的账户中创建的具有特定权限的IAM身份。IAM角色与IAM用户的相似之处在于,它是一个 AWS 身份,其权限策略决定了该身份可以做什么和不能做什么 AWS。但是,角色旨在让需要它的任何人代入,而不是唯一地与某个人员关联。此外,角色没有关联的标准长期凭证(如密码或访问密钥)。相反,当您代入角色时,它会为您提供角色会话的临时安全凭证。

注意

当你启动 Amazon SageMaker Canvas 或时RStudio,它不会创建一个IAM扮演角色的空间。相反,您可以更改与用户配置文件关联的角色来管理他们对应用程序的权限。有关获取 SageMaker 用户配置文件角色的信息,请参阅获取用户执行角色

有关 SageMaker 画布的信息,请参阅Amazon SageMaker Canvas 设置和权限管理(适用于 IT 管理员)

有关信息RStudio,请参阅使用 RStudio 应用程序创建亚马逊 SageMaker 域名

用户可以在共享或私有空间中访问其 SageMaker 应用程序。

共享空间

  • 一个应用程序只能有一个与之关联的空间。域内的所有用户配置文件均可访问共享空间。这允许域中的所有用户配置文件访问应用程序的同一个底层文件存储系统。

  • 共享空间将被授予由空间默认执行角色定义的权限。如果要修改共享空间的执行角色,则必须修改空间的默认执行角色。

    有关获取空间默认执行角色的信息,请参阅获取空间执行角色

    有关修改执行角色的信息,请参阅修改执行角色的权限

  • 有关共享空间的信息,请参阅使用共享空间进行协作

  • 要创建共享空间,请参阅创建共享空间

私密空间

  • 一个应用程序只能有一个与之关联的空间。只有创建私有空间的用户个人资料才能访问该空间。此空间不能与其他用户共享。

  • 私有空间将扮演创建它的用户配置文件的用户配置文件执行角色。如果要修改私有空间的执行角色,则必须修改用户配置文件的执行角色。

    有关获取用户配置文件的执行角色的信息,请参阅获取用户执行角色

    有关修改执行角色的信息,请参阅修改执行角色的权限

  • 所有支持空间的应用程序也支持私有空间。

  • 默认情况下,已经为每个用户配置文件创建了 Studio Classic 的专用空间。

SageMaker 执行角色

SageMaker 执行角色是一个 Id AWS entity and Access Management (IAM) 角色,它分配给正在中执行的IAM身份 SageMaker。IAM身份提供对 AWS 账户的访问权限,代表可以进行身份验证然后授权在中执行操作的人类用户或编程工作负载 AWS,从而 SageMaker 授予代表您访问其他 AWS 资源的权限。此角色 SageMaker 允许执行诸如启动计算实例、访问存储在 Amazon S3 中的数据和模型项目或向写入日志之类的操作 CloudWatch。 SageMaker 在运行时担任执行角色,并被临时授予角色策略中定义的权限。该角色应包含必要的权限,用于定义身份可以执行的操作以及该身份可以访问的资源。您可以为各种身份分配角色,以提供灵活而精细的方法来管理域内的权限和访问权限。有关域的更多信息,请参阅Amazon SageMaker 域名概述。例如,您可以将IAM角色分配给:

  • 域执行角色,用于向域内的所有用户配置文件授予广泛权限。

  • 空间执行角色,用于授予对域内共享空间的广泛权限。域中的所有用户配置文件都可以访问共享空间,并且将在共享空间中使用该空间的执行角色。

  • 用户配置文件执行角色,用于为特定用户配置文件授予细粒度权限。由用户配置文件创建的私有空间将扮演该用户配置文件的执行角色。

这使您能够向域授予必要的权限,同时仍然保持用户配置文件最低权限的原则,以遵守《用户指南》IAM AWS IAM Identity Center 中的安全最佳实践

对执行角色的任何更改或修改可能需要几分钟才能传播。有关更多信息,请分别参见更改您的执行角色修改执行角色的权限

带有执行角色的灵活权限示例

使用IAM角色,您可以在广泛而精细的级别上管理和授予权限。以下示例包括在空间级别和用户级别授予权限。

假设您是一名管理员,正在为数据科学家团队设置一个域。您可以允许域内的用户配置文件完全访问亚马逊简单存储服务 (Amazon S3) Storage Service 存储桶、 SageMaker 运行训练作业以及使用共享空间中的应用程序部署模型。在此示例中,您可以创建具有广泛权限的名为 DataScienceTeamRole “” 的IAM角色。然后,您可以指定 “DataScienceTeamRole” 作为空间的默认执行角色,从而为您的团队授予广泛的权限。当用户配置文件创建共享空间时,该空间将扮演空间的默认执行角色。有关为现有域分配执行角色的信息,请参阅获取空间执行角色

您可以限制用户个人资料的权限,不允许他们更改 Amazon S3 存储桶,而不允许他们更改 Amazon S3 存储桶,而不是允许在自己的私有空间中工作的个人用户个人资料拥有对 Amazon S3 存储桶的完全访问权限。在此示例中,您可以授予他们对 Amazon S3 存储桶的读取权限,以便在他们的私有空间中检索数据、运行 SageMaker 训练作业和部署模型。您可以创建一个名为 “DataScientistRole” 的用户级执行角色,其权限相对较为有限。然后,您可以将 “DataScientistRole” 分配给用户配置文件执行角色,授予在定义的范围内执行其特定数据科学任务所需的权限。当用户配置文件创建私有空间时,该空间将扮演用户执行角色。有关为现有用户配置文件分配执行角色的信息,请参阅获取用户执行角色

有关 SageMaker 执行角色以及为其添加其他权限的信息,请参阅如何使用 SageMaker 执行角色