

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

# 信頼できる ID 伝達を有効にして他の AWS サービスに接続する方法
<a name="trustedidentitypropagation-connect-other"></a>

Amazon SageMaker AI ドメインで信頼できる ID の伝播が有効になっている場合、ドメインユーザーは他の信頼できる ID の伝播が有効な AWS サービスに接続できます。信頼された ID の伝播を有効にすると、アイデンティティコンテキストが互換性のあるサービスに自動的に伝播されるため、機械学習ワークフロー全体にわたるきめ細かなアクセスコントロールが強化されます。この統合により、複雑な IAM ロールの切り替えが不要になり、 AWS サービス間で統一された ID エクスペリエンスが提供されます。以下のページでは、信頼できる ID の伝播が有効になっている場合に Amazon SageMaker Studio を他の AWS サービスに接続する方法について説明します。

**Topics**
+ [信頼された ID の伝播を有効にした Amazon S3 Access Grants に Studio JupyterLab ノートブックを接続する](trustedidentitypropagation-s3-access-grants.md)
+ [信頼された ID の伝播を有効にした Amazon EMR に Studio JupyterLab ノートブックを接続する](trustedidentitypropagation-emr-ec2.md)
+ [信頼された ID の伝播を有効にして Studio JupyterLab ノートブックを EMR Serverless に接続する](trustedidentitypropagation-emr-serverless.md)
+ [信頼された ID の伝播を有効にして Studio JupyterLab ノートブックを Redshift Data API に接続する](trustedidentitypropagation-redshift-data-apis.md)
+ [信頼された ID の伝播を有効にした Lake Formation と Athena に Studio JupyterLab ノートブックを接続する](trustedidentitypropagation-lake-formation-athena.md)

# 信頼された ID の伝播を有効にした Amazon S3 Access Grants に Studio JupyterLab ノートブックを接続する
<a name="trustedidentitypropagation-s3-access-grants"></a>

[Amazon S3 Access Grants](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html) を使用すると、Amazon S3 のロケーションに対して、アイデンティティベースのきめ細かなアクセスコントロールを柔軟に付与できます。これにより、Amazon S3 バケットへのアクセス権が企業のユーザーとグループに直接付与されます。以下のページでは、SageMaker AI の信頼された ID の伝播を有効にした Amazon S3 Access Grants の使用方法に関する情報と手順を説明します。

## 前提条件
<a name="s3-access-grants-prerequisites"></a>

信頼された ID の伝播を有効にして、Studio を Lake Formation と Athena に接続するには、次の前提条件を満たしていることを確認してください。
+  [Studio 向けの信頼された ID の伝播の設定](trustedidentitypropagation-setup.md) 
+ 「[Amazon S3 Access Grants の開始方法](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-get-started.html)」に従って、バケットの Amazon S3 Access Grants を設定します。詳細については、「[Amazon S3 Access Grants によるデータアクセスのスケーリング](https://aws.amazon.com/blogs/storage/scaling-data-access-with-amazon-s3-access-grants/)」を参照してください。
**注記**  
標準の Amazon S3 API は、Amazon S3 Access Grants とは、自動的には連携しません。Amazon S3 Access Grants API を明示的に使用する必要があります。詳細については、「[Amazon S3 Access Grants でのアクセス管理](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html)」を参照してください。

**Topics**
+ [前提条件](#s3-access-grants-prerequisites)
+ [Studio JupyterLab ノートブックを Amazon S3 Access Grants に接続する](s3-access-grants-setup.md)
+ [Studio JupyterLab ノートブックをトレーニングジョブと処理ジョブで Amazon S3 アクセス許可に接続する](trustedidentitypropagation-s3-access-grants-jobs.md)

# Studio JupyterLab ノートブックを Amazon S3 Access Grants に接続する
<a name="s3-access-grants-setup"></a>

次の情報を使用して、Studio JupyterLab ノートブックで Amazon S3 アクセス許可を付与します。

Amazon S3 Access Grants を設定したら、ドメインまたはユーザーの[実行ロール](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html#sagemaker-roles-get-execution-role)に以下の[アクセス許可を追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)します。
+ `us-east-1` は、 AWS リージョンです。
+ `111122223333` は、 AWS アカウント ID です。
+ `S3-ACCESS-GRANT-ROLE` は、Amazon S3 Access Grant ロールです。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDataAccessAPI",
            "Effect": "Allow",
            "Action": [
                "s3:GetDataAccess"
            ],
            "Resource": [
                "arn:aws:s3:us-east-1:111122223333:access-grants/default"
            ]
        },
        {
            "Sid": "RequiredForTIP",
            "Effect": "Allow",
            "Action": "sts:SetContext",
            "Resource": "arn:aws:iam::111122223333:role/S3-ACCESS-GRANT-ROLE"
        }
    ]
}
```

------

Amazon S3 Access Grants ロールの信頼ポリシーで、`sts:SetContext` アクションと `sts:AssumeRole` アクションが許可されていることを確認します。[ロールの信頼ポリシーを更新する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-trust-policy.html)場合のポリシーの例は、次のとおりです。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "access-grants.s3.amazonaws.com"
                ]
            },
            "Action": [
                "sts:AssumeRole",
                "sts:SetContext"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333",
                    "aws:SourceArn": "arn:aws:s3:us-east-1:111122223333:access-grants/default"
                }
            }
        }
    ]
}
```

------

## Amazon S3 Access Grants を使用して Amazon S3 を呼び出す
<a name="s3-access-grants-python-example"></a>

以下は、Amazon S3 Access Grants を使用して、Amazon S3 を呼び出す方法を説明している Python スクリプトの例です。これは、SageMaker AI で信頼された ID の伝播の設定が正常に完了していることを前提としています。

```
import boto3
from botocore.config import Config

def get_access_grant_credentials(account_id: str, target: str, 
                                 permission: str = 'READ'):
    s3control = boto3.client('s3control')
    response = s3control.get_data_access(
        AccountId=account_id,
        Target=target,
        Permission=permission
    )
    return response['Credentials']

def create_s3_client_from_credentials(credentials) -> boto3.client:
    return boto3.client(
        's3',
        aws_access_key_id=credentials['AccessKeyId'],
        aws_secret_access_key=credentials['SecretAccessKey'],
        aws_session_token=credentials['SessionToken']
    )

# Create client
credentials = get_access_grant_credentials('111122223333',
                                        "s3://tip-enabled-bucket/tip-enabled-path/")
s3 = create_s3_client_from_credentials(credentials)

s3.list_objects(Bucket="tip-enabled-bucket", Prefix="tip-enabled-path/")
```

Amazon S3 アクセス許可が有効になっていない Amazon S3 バケットへのパスを使用すると、呼び出しは失敗します。

その他のプログラミング言語の詳細については、「[Amazon S3 Access Grants でのアクセス管理](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html)」を参照してください。

# Studio JupyterLab ノートブックをトレーニングジョブと処理ジョブで Amazon S3 アクセス許可に接続する
<a name="trustedidentitypropagation-s3-access-grants-jobs"></a>

次の情報を使用して、Amazon SageMaker トレーニングジョブと処理ジョブのデータにアクセスするための Amazon S3 Access Grants を付与します。

信頼された ID の伝播が有効になっているユーザーが、Amazon S3 データにアクセスする必要がある SageMaker トレーニングジョブまたは処理ジョブを起動すると、以下のとおりになります。
+ SageMaker AI は、ユーザーのアイデンティティに基づいて一時的な認証情報を取得するために、Amazon S3 Access Grants を呼び出します。
+ 成功すると、これらの一時的な認証情報を使用して Amazon S3 データにアクセスします。
+ 失敗した場合、SageMaker AI は IAM ロールの認証情報を使用します。

**注記**  
すべてのアクセス許可が Amazon S3 Access Grants を介して付与されるようにするには、実行ロールから関連する Amazon S3 アクセス許可を削除し、対応する [Amazon S3 Access Grants](https://docs.aws.amazon.com/singlesignon/latest/userguide/tip-tutorial-s3.html#tip-tutorial-s3-create-grant) にアタッチする必要があります。

**Topics**
+ [考慮事項](#s3-access-grants-jobs-considerations)
+ [ノートブックをトレーニングジョブと処理ジョブで Amazon S3 Access Grants に設定する](#s3-access-grants-jobs-setup)

## 考慮事項
<a name="s3-access-grants-jobs-considerations"></a>

Amazon S3 Access Grants は、SageMaker Training と Processing の両方で、Amazon S3 入力用の[パイプモード](https://docs.aws.amazon.com/sagemaker/latest/dg/augmented-manifest-stream.html)では使用できません。

信頼された ID の伝播が有効になっている場合、次の機能を使用して SageMaker トレーニングジョブを起動することはできません。
+ リモートデバッグ
+ デバッガー
+ プロファイラー

信頼された ID の伝播が有効になっている場合、次の機能を使用して処理ジョブを起動することはできません。
+ DatasetDefinition

## ノートブックをトレーニングジョブと処理ジョブで Amazon S3 Access Grants に設定する
<a name="s3-access-grants-jobs-setup"></a>

Amazon S3 Access Grants を設定したら、ドメインまたはユーザーの[実行ロール](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html#sagemaker-roles-get-execution-role)に以下の[アクセス許可を追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)します。
+ `us-east-1` は、 AWS リージョンです。
+ `111122223333` は、 AWS アカウント ID です。
+ `S3-ACCESS-GRANT-ROLE` は、Amazon S3 Access Grant ロールです。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDataAccessAPI",
            "Effect": "Allow",
            "Action": [
                "s3:GetDataAccess",
                "s3:GetAccessGrantsInstanceForPrefix"
            ],
            "Resource": [
                "arn:aws:s3:us-east-1:111122223333:access-grants/default"
            ]
        },
        {
            "Sid": "RequiredForIdentificationPropagation",
            "Effect": "Allow",
            "Action": "sts:SetContext",
            "Resource": "arn:aws:iam::111122223333:role/S3-ACCESS-GRANT-ROLE"
        }
    ]
}
```

------

# 信頼された ID の伝播を有効にした Amazon EMR に Studio JupyterLab ノートブックを接続する
<a name="trustedidentitypropagation-emr-ec2"></a>

Amazon SageMaker Studio JupyterLab ノートブックを Amazon EMR クラスターに接続すると、Amazon EMR の分散コンピューティング能力を大規模なデータ処理および分析ワークロードに活用できます。信頼された ID の伝播を有効にすると、アイデンティティコンテキストが Amazon EMR に伝播され、きめ細かなアクセスコントロールと包括的な監査証跡が可能になります。次のページでは、Studio ノートブックを Amazon EMR クラスターに接続する方法について説明します。設定が完了すると、Studio ノートブックで `Connect to Cluster` オプションを使用できるようになります。

信頼された ID の伝播を有効にして Studio を Amazon EMR に接続するには、以下の設定が完了していることを確認してください。
+  [Studio 向けの信頼された ID の伝播の設定](trustedidentitypropagation-setup.md) 
+  [Amazon EMR AWS IAM アイデンティティセンター の統合の開始方法](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-idc-start.html) 
+  [Studio と Amazon EMR クラスター間の通信を有効にする](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-notebooks-emr-cluster.html) 

 **Amazon EMR クラスターに接続するAmazon EMR クラスターに接続する** 

JupyterLab ノートブックを Amazon EMR に接続する方法のオプションの完全なリストについては、「[Amazon EMR クラスターに接続する](https://docs.aws.amazon.com/sagemaker/latest/dg/connect-emr-clusters.html)」を参照してください。

# 信頼された ID の伝播を有効にして Studio JupyterLab ノートブックを EMR Serverless に接続する
<a name="trustedidentitypropagation-emr-serverless"></a>

Amazon EMR Serverless は、クラスターを管理する必要なく Apache Spark および Apache Hive アプリケーションを実行するためのサーバーレスオプションを提供します。信頼された ID の伝播と統合すると、EMR Serverless はアクセスコントロールと監査のためにアイデンティティコンテキストを維持しながら、コンピューティングリソースを自動的にスケーリングします。このアプローチにより、クラスター管理の運用オーバーヘッドを排除しながら、アイデンティティベースのアクセスコントロールによるセキュリティ上の利点も維持されます。次のセクションでは、信頼された ID の伝播が有効になっている Studio を EMR Serverless に接続する方法について説明します。

信頼された ID の伝播を有効にした Studio を Amazon EMR Serverless に接続するには、次の設定が完了していることを確認してください。
+  [Studio 向けの信頼された ID の伝播の設定](trustedidentitypropagation-setup.md) 
+  [EMR Serverless での信頼された ID の伝播](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-service-trusted-prop.html) 
+  [Studio と EMR Serverless 間の通信を有効にする](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-notebooks-emr-serverless.html) 

 **EMR Serverless アプリケーションに接続する** 

JupyterLab ノートブックを EMR Serverless に接続する方法のオプションの完全なリストについては、「[EMR Serverless アプリケーションに接続する](https://docs.aws.amazon.com/sagemaker/latest/dg/connect-emr-serverless-application.html)」を参照してください。

# 信頼された ID の伝播を有効にして Studio JupyterLab ノートブックを Redshift Data API に接続する
<a name="trustedidentitypropagation-redshift-data-apis"></a>

Amazon Redshift Data API を使用すると、永続的な接続を管理する必要なく、プログラムで Amazon Redshift クラスターを操作できます。信頼された ID の伝播と組み合わせることで、Redshift Data API はデータウェアハウスへの安全なアイデンティティベースのアクセスを提供し、ユーザーアクティビティの完全な監査証跡を維持しながら、SQL クエリを実行して結果を取得できます。この統合は、Redshift に保存されている構造化データへのアクセスを必要とするデータサイエンスワークフローに特に役立ちます。次のページでは、信頼された ID の伝播を Amazon SageMaker Studio と Redshift Data API に接続する方法に関する情報と手順を説明します。

信頼された ID の伝播を有効にして Studio を Redshift Data API に接続するには、以下の設定が完了していることを確認してください。
+  [Studio 向けの信頼された ID の伝播の設定](trustedidentitypropagation-setup.md) 
+  [信頼された ID の伝播で Redshift Data API を使用する](https://docs.aws.amazon.com/redshift/latest/mgmt/data-api-trusted-identity-propagation.html) 
  + 実行ロールに Redshift Data API に関連するアクセス許可があることを確認します。詳細については、「[アクセスの認可](https://docs.aws.amazon.com/redshift/latest/mgmt/data-api-access.html)」を参照してください。
+  [Amazon Redshift と外部 ID プロバイダーのユーザー AWS Lake Formation 向けのアクセス管理を簡素化する](https://aws.amazon.com/blogs/big-data/simplify-access-management-with-amazon-redshift-and-aws-lake-formation-for-users-in-an-external-identity-provider/) 

# 信頼された ID の伝播を有効にした Lake Formation と Athena に Studio JupyterLab ノートブックを接続する
<a name="trustedidentitypropagation-lake-formation-athena"></a>

AWS Lake Formation と Amazon Athena は連携して、きめ細かなアクセスコントロールとサーバーレスクエリ機能を備えた包括的なデータレイクソリューションを提供します。Lake Formation は、データレイクのアクセス許可管理を一元化し、Athena はインタラクティブなクエリサービスを提供します。信頼された ID の伝播と統合すると、データサイエンティストは表示が許可されているデータにのみアクセスでき、すべてのクエリとデータアクセスがコンプライアンスと監査の目的で自動的に記録されます。次のページでは、信頼された ID の伝播を使用する Amazon SageMaker Studio を Lake Formation および Athena に接続する方法に関する情報と手順を説明します。

信頼された ID の伝播を有効にして Studio を Lake Formation と Athenaに接続するには、以下の設定が完了していることを確認してください。
+  [Studio 向けの信頼された ID の伝播の設定](trustedidentitypropagation-setup.md) 
+  [Lake Formation ロールを作成する](https://docs.aws.amazon.com/lake-formation/latest/dg/prerequisites-identity-center.html) 
+  [Lake Formation を IAM アイデンティティセンターに接続する](https://docs.aws.amazon.com/lake-formation/latest/dg/connect-lf-identity-center.html) 
+ Lake Formation リソースの作成:
  +  [データベース](https://docs.aws.amazon.com/lake-formation/latest/dg/creating-database.html) 
  +  [テーブル](https://docs.aws.amazon.com/lake-formation/latest/dg/creating-tables.html) 
+  [Athena ワークグループを作成する](https://docs.aws.amazon.com/athena/latest/ug/creating-workgroups.html) 
  + エンジン用の **AthenaSQL** を選択する
  + 認証方法として **IAM アイデンティティセンター**を選択する
  + サービスロールを作成する
    + Amazon S3 Access Grants を使用して、IAM アイデンティティセンターユーザーがクエリ結果の場所にアクセスできることを確認する
+  [名前付きリソース方式を使用したデータベースのアクセス許可の付与](https://docs.aws.amazon.com/lake-formation/latest/dg/granting-database-permissions.html) 