翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Studio JupyterLab ノートブックを Amazon S3 Access Grants に接続する
次の情報を使用して、Studio JupyterLab ノートブックで Amazon S3 アクセス許可を付与します。
Amazon S3 Access Grants を設定したら、ドメインまたはユーザーの実行ロールに以下のアクセス許可を追加します。
-
は、 AWS リージョンです。us-east-1 -
は、 AWS アカウント ID です。111122223333 -
は、Amazon S3 Access Grant ロールです。S3-ACCESS-GRANT-ROLE
Amazon S3 Access Grants ロールの信頼ポリシーで、sts:SetContext アクションと sts:AssumeRole アクションが許可されていることを確認します。ロールの信頼ポリシーを更新する場合のポリシーの例は、次のとおりです。
Amazon S3 Access Grants を使用して Amazon S3 を呼び出す
以下は、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 でのアクセス管理」を参照してください。