從 Amazon SageMaker 工作室經典版監控使用者資源 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

從 Amazon SageMaker 工作室經典版監控使用者資源

使用 Amazon SageMaker 工作室經典版,您可以監控使用者資源存取。若要檢視資源存取活動,您可以設定 AWS CloudTrail 通過按照日誌 Amazon SageMaker API 呼叫中的步驟監視和記錄用戶活動 AWS CloudTrail.

然而, AWS CloudTrail 資源存取的記錄只會列出 Studio 傳統執行IAM角色做為識別碼。當每個使用者設定檔都有不同的執行角色時,這個記錄層級就足以稽核使用者活動。但是,在多個使用者設定檔之間共用單一執行IAM角色時,您無法取得存取 AWS 的費用。 

您可以獲取有關在中執行操作的特定用戶的信息 AWS CloudTrail 記錄使用共用執行角色時,使用sourceIdentity組態傳播 Studio 典型使用者設定檔名稱。如需來源身分的詳細資訊,請參閱監控並控制使用擔任角色所採取的動作

必要條件

  • 安裝和配置 AWS Command Line Interface 遵循安裝或更新最新版本中的步驟 AWS CLI.

  • 請確定您網域中的 Studio 典型使用者沒有允許他們更新或修改網域的原則。 

  • 若要開啟或關閉 sourceIdentity 傳播,網域中的所有應用程式都必須處於 StoppedDeleted 狀態。如需如何停止及關閉應用程式的詳細資訊,請參閱關閉和更新 Studio 傳統應用程式

  • 如果開啟來源識別傳播,則所有執行角色都必須具有下列信任原則權限: 

    • 網域執行角色所擔任的任何角色都必須具有信任原則中的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 的許可。否則,擔任角色操作將會失敗。

      • 這個角色鏈接可以發生在工作室經典或任何其他下游服務,如 Amazon EMR。如需有關角色串連的詳細資訊,請參閱中角色術語和概念

使用 sourceIdentity 的考量

當你做 AWS API來自 Studio 經典筆記本、 SageMaker 畫布或 Amazon SageMaker 資料牧馬人的呼叫,只有在 CloudTrail 使用 Studio 典型執行角色工作階段或該工作階段的任何鏈結角色進行呼叫時,才會記錄在中。sourceIdentity

當這些API呼叫叫用其他服務來執行其他作業時,sourceIdentity記錄視叫用服務的特定實作而定。

  • Amazon SageMaker 處理:使用這些功能建立任務時,任務建立APIs無法擷取工作階段中存在sourceIdentity的任務。其結果是,任何 AWS API從這些工作進行的呼叫不會記錄sourceIdentity在 CloudTrail 記錄中。

  • Amazon SageMaker 培訓:當您創建培訓任務時,任務創APIs建能夠導入會話中存在sourceIdentity的任務。其結果是,任何 AWS API從這些作業進行的呼叫會記錄sourceIdentity在 CloudTrail 記錄中。

  • Amazon SageMaker 管道:使用自動化 CI/CD 管道建立任務時,sourceIdentity會傳播下游,並可在日誌中檢視。 CloudTrail

  • AmazonEMR:使用運行時角色EMR從工作室經典版連接到 Amazon 時,管理員必須明確設置該 PropagateSourceIdentity 字段。這可確保 Amazon 將呼叫登入資料EMR套用至任務或查詢工作階段。sourceIdentity然後sourceIdentity會記錄在記錄 CloudTrail 檔中。

注意

使用 sourceIdentity 時,以下例外情況適用。

  • SageMaker 工作室經典共用空間不支援sourceIdentity直通。 AWS API從 SageMaker 共用空間發出的呼叫不會記錄sourceIdentity在記 CloudTrail 錄中。

  • If AWS API呼叫是從使用者或其他服務所建立的工作階段進行,而工作階段不是以 Studio Classic 執行角色工作階段為基礎,sourceIdentity則不會記錄在記錄 CloudTrail 檔中。

開啟 sourceIdentity

sourceIdentity在 Studio 經典中傳播使用者設定檔名稱的功能預設為關閉。

若要啟用以傳播使用者設定檔名稱的方式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 傳統應用程式

使用下列程式碼來啟用使用者設定檔名稱為 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

您也可以關閉使用者設定檔名稱的sourceIdentity傳播 AWS CLI。 這會在網域更新期間傳遞--domain-settings-for-update參數ExecutionRoleIdentityConfig=DISABLED值做為update-domainAPI呼叫的一部分,就會發生這種情況。

在 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>]