打开 SageMaker Studio Classic 的 CloudTrail 日志记录 sourceIdentity - Amazon SageMaker

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

打开 SageMaker Studio Classic 的 CloudTrail 日志记录 sourceIdentity

使用 Amazon SageMaker Studio Classic,您可以监控用户资源访问情况。但是,资源访问 AWS CloudTrail 日志仅将 Studio Classic 执行IAM角色列为标识符。当多个用户配置文件之间共享一个执行IAM角色时,您必须使用该sourceIdentity配置来获取有关访问 AWS 资源的特定用户的信息。

以下主题说明了如何开启或关闭sourceIdentity配置。

先决条件

  • 按照安装或更新最新版本中的步骤安装和配置 AWS Command Line Interface 以下步骤 AWS CLI。

  • 确保您网域中的 Studio Classic 用户没有允许他们更新或修改域名的政策。 

  • 要打开或关闭 sourceIdentity 传播,域中的所有应用程序都必须处于 StoppedDeleted 状态。有关如何停止和关闭应用程序的更多信息,请参阅关闭和更新 Studio Classic 应用程序

  • 如果开启了源身份传播,则所有执行角色都必须具有以下信任策略权限: 

    • 域的执行角色所扮演的任何角色都必须具有信任策略中的sts:SetSourceIdentity权限。如果缺少此权限,则在调用创建任务ValidationErrorAccessDeniedException或调用创建任务时,您的操作将失败API。以下示例信任策略包含sts:SetSourceIdentity权限。

      {     "Version": "2012-10-17",     "Statement": [         {             "Effect": "Allow",             "Principal": {                 "Service": "sagemaker.amazonaws.com"             },             "Action": [                 "sts:AssumeRole",                 "sts:SetSourceIdentity"             ]         }     ] }
    • 当您使用一个角色担任另一角色(称为角色链)时,请执行以下操作:

      • 在担任角色的主体的权限策略和目标角色的角色信任策略中都需要对 sts:SetSourceIdentity 的权限。否则,担任角色的操作将失败。

      • 这种角色链接可能发生在 Studio Classic 或任何其他下游服务(例如亚马逊EMR)中。有关角色链的更多信息,请参阅角色术语和概念

启用 sourceIdentity

默认情况下,在 Studio Classic sourceIdentity 中传播用户配置文件名称的功能已关闭。

要启用将用户配置文件名称传播为的功能sourceIdentity,请在创建域和更新域名 AWS CLI 时使用。此功能在域级别启用,而不是在用户配置文件级别启用。

启用此配置后,管理员可以在 AWS CloudTrail 日志中查看所访问服务的用户配置文件。用户配置文件在 userIdentity 部分中作为 sourceIdentity 值给出。有关将 AWS CloudTrail 日志与配合使用的更多信息 SageMaker,请参阅使用记录 Amazon SageMaker API 通话 AWS CloudTrail

您可以使用以下代码在创建域sourceIdentity时启用用户配置文件名称的传播create-domainAPI。

create-domain --domain-name <value> --auth-mode <value> --default-user-settings <value> --subnet-ids <value> --vpc-id <value> [--tags <value>] [--app-network-access-type <value>] [--home-efs-file-system-kms-key-id <value>] [--kms-key-id <value>] [--app-security-group-management <value>] [--domain-settings "ExecutionRoleIdentityConfig=USER_PROFILE_NAME"] [--cli-input-json <value>] [--generate-cli-skeleton <value>]

您可以使用在域更新sourceIdentity期间启用用户配置文件名称的传播update-domainAPI。

要更新此配置,域中的所有应用程序都必须处于 StoppedDeleted 状态。有关如何停止和关闭应用程序的更多信息,请参阅关闭和更新 Studio Classic 应用程序

使用以下代码启用传播用户配置文件名称作为 sourceIdentity.

update-domain --domain-id <value> [--default-user-settings <value>] [--domain-settings-for-update "ExecutionRoleIdentityConfig=USER_PROFILE_NAME"] [--cli-input-json <value>] [--generate-cli-skeleton <value>]

关闭 sourceIdentity

您也可以使用 AWS CLI关闭传播用户配置文件名称作为 sourceIdentity。这是在域更新期间通过在update-domainAPI调用中传递--domain-settings-for-update参数ExecutionRoleIdentityConfig=DISABLED值来实现的。

在中 AWS CLI,使用以下代码禁用将用户配置文件名称传播为sourceIdentity

update-domain --domain-id <value> [--default-user-settings <value>] [--domain-settings-for-update "ExecutionRoleIdentityConfig=DISABLED"] [--cli-input-json <value>] [--generate-cli-skeleton <value>]