Doc AWS SDK ExamplesWord リポジトリには、さらに多くの GitHub の例があります。 AWS SDK
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS SDK または CLI GetSessionToken
で使用する
以下のコード例は、GetSessionToken
の使用方法を示しています。
アクション例は、より大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。次のコード例で、このアクションのコンテキストを確認できます。
- CLI
-
- AWS CLI
-
IAM ID の短期認証情報を取得するには
次の
get-session-token
コマンドは、呼び出しを行う IAM ID の短期認証情報のセットを取得します。生成された認証情報は、ポリシーで多要素認証 (MFA) が必要なリクエストに使用できます。認証情報は生成されてから 15 分後に失効します。aws sts get-session-token \ --duration-seconds
900
\ --serial-number"YourMFADeviceSerialNumber"
\ --token-code123456
出力:
{ "Credentials": { "AccessKeyId": "ASIAIOSFODNN7EXAMPLE", "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY", "SessionToken": "AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtpZ3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE", "Expiration": "2020-05-19T18:06:10+00:00" } }
詳細については、AWS IAM ユーザーガイドの「一時的なセキュリティ認証情報のリクエスト」を参照してください。
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のGetSessionToken
」を参照してください。
-
- PowerShell
-
- ツール for PowerShell
-
例 1: 一定期間有効な一時的な認証情報を含む
Amazon.RuntimeAWSCredentials
インスタンスを返します。一時的な認証情報をリクエストするために使用される認証情報は、現在のシェルのデフォルトから推測されます。他の認証情報を指定するには、-ProfileName パラメータまたは -AccessKey/-SecretKey パラメータを使用します。Get-STSSessionToken
出力:
AccessKeyId Expiration SecretAccessKey SessionToken ----------- ---------- --------------- ------------ EXAMPLEACCESSKEYID 2/16/2015 9:12:28 PM examplesecretaccesskey... SamPleTokeN.....
例 2: 1 時間有効な一時的な認証情報を含む
Amazon.RuntimeAWSCredentials
インスタンスを返します。リクエストを行うために使用される認証情報は、指定されたプロファイルから取得されます。Get-STSSessionToken -DurationInSeconds 3600 -ProfileName myprofile
出力:
AccessKeyId Expiration SecretAccessKey SessionToken ----------- ---------- --------------- ------------ EXAMPLEACCESSKEYID 2/16/2015 9:12:28 PM examplesecretaccesskey... SamPleTokeN.....
例 3: プロファイル 'myprofilename' で認証情報が指定されているアカウントに関連付けられた MFA デバイスの識別番号と、デバイスによって提供される値を使用して、1 時間有効な一時的な認証情報を含む
Amazon.RuntimeAWSCredentials
インスタンスを返します。Get-STSSessionToken -DurationInSeconds 3600 -ProfileName myprofile -SerialNumber YourMFADeviceSerialNumber -TokenCode 123456
出力:
AccessKeyId Expiration SecretAccessKey SessionToken ----------- ---------- --------------- ------------ EXAMPLEACCESSKEYID 2/16/2015 9:12:28 PM examplesecretaccesskey... SamPleTokeN.....
-
APIの詳細については、「コマンドレットリファレンス」のGetSessionToken」を参照してください。 AWS Tools for PowerShell
-
- Python
-
- Python 用 SDK (Boto3)
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 MFA トークンを渡してセッショントークンを取得し、それを使用してアカウントの Amazon S3 バケットを一覧表示します。
def list_buckets_with_session_token_with_mfa(mfa_serial_number, mfa_totp, sts_client): """ Gets a session token with MFA credentials and uses the temporary session credentials to list Amazon S3 buckets. Requires an MFA device serial number and token. :param mfa_serial_number: The serial number of the MFA device. For a virtual MFA device, this is an Amazon Resource Name (ARN). :param mfa_totp: A time-based, one-time password issued by the MFA device. :param sts_client: A Boto3 STS instance that has permission to assume the role. """ if mfa_serial_number is not None: response = sts_client.get_session_token( SerialNumber=mfa_serial_number, TokenCode=mfa_totp ) else: response = sts_client.get_session_token() temp_credentials = response["Credentials"] s3_resource = boto3.resource( "s3", aws_access_key_id=temp_credentials["AccessKeyId"], aws_secret_access_key=temp_credentials["SecretAccessKey"], aws_session_token=temp_credentials["SessionToken"], ) print(f"Buckets for the account:") for bucket in s3_resource.buckets.all(): print(bucket.name)
-
API の詳細については、GetSessionToken for Python (Boto3) Word リファレンス」を参照してください。 AWS SDK API
-