SageMaker Studio で信頼できる ID の伝播を設定する - AWS IAM Identity Center

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

SageMaker Studio で信頼できる ID の伝播を設定する

次の手順では、信頼できる ID の伝播とユーザーバックグラウンドセッション用に SageMaker Studio を設定する手順を説明します。

前提条件

このチュートリアルを開始する前に、次のタスクを完了する必要があります。

  1. IAM アイデンティティセンターを有効にします。組織インスタンスが必要です。詳細については、「前提条件と考慮事項」を参照してください。

  2. ID のソースから IAM アイデンティティセンターにユーザーとグループをプロビジョニングします

  3. IAM Identity Center コンソールでユーザーバックグラウンドセッションが有効になっていることを確認します。デフォルトでは、ユーザーバックグラウンドセッションは有効になっており、セッション期間は 7 日間に設定されています。この期間は変更できます。

SageMaker Studio から信頼できる ID の伝播を設定するには、SageMaker Studio 管理者が次のステップを実行する必要があります。

ステップ 1: 新規または既存の SageMaker Studio ドメインで信頼できる ID の伝播を有効にする

SageMaker Studio はドメインを使用して、ユーザープロファイル、アプリケーション、および関連するリソースを整理します。信頼できる ID の伝播を有効にするには、次の手順で説明するように、SageMaker Studio ドメインを作成するか、既存のドメインを変更する必要があります。

  1. SageMaker AI コンソールを開き、ドメインに移動して、次のいずれかを実行します。

    • 組織の Setup を使用して、新しい SageMaker Studio ドメインを作成します。

      組織のセットアップを選択し、次の操作を行います。

      • 認証方法として AWS Identity Center を選択します。

      • このドメインですべてのユーザーの信頼できる ID 伝達を有効にするチェックボックスをオンにします。

    • 既存の SageMaker Studio ドメインを変更します。

      • 認証に IAM アイデンティティセンターを使用する既存のドメインを選択します。

        重要

        信頼できる ID の伝播は、認証に IAM アイデンティティセンターを使用する SageMaker Studio ドメインでのみサポートされます。ドメインが認証に IAM を使用している場合、認証方法を変更することはできないため、信頼できる ID の伝播を有効にすることはできません。

      • ドメイン設定を編集します。認証とアクセス許可の設定を編集して、信頼できる ID の伝播を有効にします。

  2. ステップ 2: デフォルトのドメイン実行ロールを設定するに進みます。このロールは、SageMaker Studio ドメインのユーザーが Amazon S3 などの他の AWS サービスにアクセスするために必要です。

ステップ 2: デフォルトのドメイン実行ロールとロールの信頼ポリシーを設定する

ドメイン実行ロールは、SageMaker Studio ドメインがドメイン内のすべてのユーザーに代わって引き受ける IAM ロールです。このロールに割り当てるアクセス許可によって、SageMaker Studio が実行できるアクションが決まります。

  1. ドメイン実行ロールを作成または選択するには、次のいずれかを実行します。

    • 組織の Setup を使用してロールを作成または選択します。

      • SageMaker AI コンソールを開き、「ステップ 2: ロールと ML アクティビティを設定して新しいドメイン実行ロールを作成するか、既存のロールを選択する」のコンソールガイダンスに従います。

      • 残りのセットアップステップを完了して、SageMaker Studio ドメインを作成します。

    • 実行ロールを手動で作成します。

  2. ドメイン実行ロールにアタッチされている信頼ポリシーを更新して、 sts:AssumeRoleと の 2 つのアクションを含めますsts:SetContext。SageMaker Studio ドメインの実行ロールを検索する方法については、「Get domain execution role」を参照してください。

    信頼ポリシーは、 がロールを引き受けることができる ID を指定します。このポリシーは、SageMaker Studio サービスがドメイン実行ロールを引き受けられるようにするために必要です。これら 2 つのアクションを追加して、ポリシーに次のように表示されます。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] }, "Action": [ "sts:AssumeRole", "sts:SetContext" ] } ] }

ステップ 3: ドメイン実行ロールに必要な Amazon S3 Access Grant アクセス許可を検証する

Amazon S3 Access Grants を使用するには、以下のアクセス許可を含むアクセス許可ポリシーを (インラインポリシーまたはカスタマー管理ポリシーとして) SageMaker Studio ドメイン実行ロールにアタッチする必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ] "Resource": "arn:aws:s3:us-east-2:111122223333:access-grants/default" } ] }

これらのアクセス許可を含むポリシーがない場合は、AWS Identity and Access Management 「 ユーザーガイド」の「IAM ID アクセス許可の追加と削除」の手順に従います。

ステップ 4: グループとユーザーをドメインに割り当てる

「グループとユーザーを追加する」の手順に従って、グループとユーザーを SageMaker Studio ドメインに割り当てます。

ステップ 5: Amazon S3 Access Grants を設定する

Amazon S3 Access Grants を設定するには、「IAM Identity Center を介した信頼できる ID 伝達のための Amazon S3 Access Grants の設定」のステップに従います。ステップstep-by-stepの手順を使用して、以下のタスクを完了します。

  1. Amazon S3 Access Grants インスタンスを作成します。

  2. そのインスタンスにロケーションを登録します。

  3. 特定の IAM Identity Center ユーザーまたはグループが、指定された Amazon S3 ロケーションまたはそれらのロケーション内のサブセット (特定のプレフィックスなど) にアクセスできるようにする権限を作成します。

ステップ 6: SageMaker トレーニングジョブを送信し、ユーザーバックグラウンドセッションの詳細を表示する

SageMaker Studio で、新しい Jupyter ノートブックを起動し、トレーニングジョブを送信します。ジョブの実行中に、次の手順を実行してセッション情報を表示し、ユーザーバックグラウンドセッションコンテキストがアクティブであることを確認します。

  1. IAM アイデンティティセンターコンソールを開きます。

  2. ユーザー を選択します。

  3. [ユーザー] ページで、セッションを管理したいユーザーのユーザー名を選択します。これにより、ユーザーの情報を含むページに移動します。

  4. ユーザーのページで、アクティブセッションタブを選択します。アクティブなセッションの横にある括弧内の数字は、このユーザーのアクティブなセッションの数を示します。

  5. セッションを使用しているジョブの Amazon リソースネーム (ARN) でセッションを検索するには、セッションタイプリストでユーザーバックグラウンドセッションを選択し、検索ボックスにジョブ ARN を入力します。

以下は、ユーザーバックグラウンドセッションを使用しているトレーニングジョブがユーザーの Active セッションタブにどのように表示されるかの例です。

ステップ 7: CloudTrail ログを表示して CloudTrail での信頼できる ID の伝播を検証する

信頼できる ID の伝播を有効にすると、 onBehalfOf 要素の下の CloudTrail イベントログにアクションが表示されます。には、トレーニングジョブを開始した IAM Identity Center ユーザーの ID userIdが反映されます。次の CloudTrail イベントは、信頼できる ID の伝播プロセスをキャプチャします。

"userIdentity": { "type": "AssumedRole", "principalId": "AROA123456789EXAMPLE:SageMaker", "arn": "arn:aws:sts::111122223333:assumed-role/SageMaker-ExecutionRole-20250728T125817/SageMaker", "accountId": "111122223333", "accessKeyId": "ASIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROA123456789EXAMPLE", "arn": "arn:aws:iam::111122223333:role/service-role/SageMaker-ExecutionRole-20250728T125817", "accountId": "111122223333", "userName": "SageMaker-ExecutionRole-20250728T125817" }, "attributes": { "creationDate": "2025-07-29T17:17:10Z", "mfaAuthenticated": "false" } }, "onBehalfOf": { "userId": "2801d3e0-f0e1-707f-54e8-f558b19f0a10", "identityStoreArn": "arn:aws:identitystore::777788889999:identitystore/d-1234567890" } },

ランタイムの考慮事項

管理者がユーザーバックグラウンドセッション期間よりも短い長時間実行されるトレーニングジョブまたは処理ジョブに MaxRuntimeInSeconds を設定した場合、SageMaker Studio は MaxRuntimeInSeconds またはユーザーバックグラウンドセッション期間の最小値でジョブを実行します。

MaxRuntimeInSeconds の詳細については、Amazon SageMaker API リファレンスCreateTrainingJob StoppingCondition パラメータのガイダンスを参照してください。