一時的な認証情報へのアクセスを設定する - AWS SDK for Java 2.x

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

一時的な認証情報へのアクセスを設定する

セキュリティを強化するために、 では、有効期間の長い認証情報ではなく一時的な認証情報を使用するように SDK for Java を設定する AWS ことをお勧めします。一時的な認証情報は、アクセスキー (アクセスキー ID とシークレットアクセスキー) およびセッショントークンで構成されています。トークンの更新プロセスは自動的に行われるため、一時的な認証情報を自動的に取得するように を設定するSDKことをお勧めします。ただし、 SDKに一時的な認証情報を直接提供することはできます。

IAM Identity Center の設定

このガイド設定の概要で説明されているように IAM Identity Center のシングルサインオンアクセスを使用するSDKように を設定すると、 SDKは自動的に一時的な認証情報を使用します。

SDK は、IAMIdentity Center アクセストークンを使用して、 config ファイルの sso_role_name 設定で設定されたIAMロールにアクセスします。はこのIAMロールをSDK引き受け、 AWS のサービス リクエストに使用する一時的な認証情報を取得します。

が設定から一時的な認証情報SDKを取得する方法の詳細については、「」およびツールリファレンスガイドの AWS SDKsIAM「アイデンティティセンターの認証について」セクションを参照してください。

注記

すべてのプロジェクトで機能する config ファイルで設定した設定に加えて、個々の Java プロジェクトごとに、Maven pom.xml ファイルには次の依存関係が含まれている必要があります。

<dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>sso</artifactId> </dependency> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>ssooidc</artifactId> </dependency>

ssossooidc の依存関係は、 SDK for Java 2.x が一時的な認証情報にアクセスできるようにするコードを提供します。

AWS アクセスポータルから取得する

IAM Identity Center のシングルサインオン設定の代わりに、 AWS アクセスポータルで使用できる一時的な認証情報をコピーして使用できます。一時的な認証情報は、プロファイルで使用することも、システムプロパティや環境変数の値として使用することもできます。

一時的な認証情報用のローカルの認証情報ファイルを設定する
  1. 認証情報の共有ファイルを作成する

  2. 認証情報ファイルに、作業用の一時的な認証情報を貼り付けるまで、次のプレースホルダーテキストを貼り付けます。

    [default] aws_access_key_id=<value from AWS access portal> aws_secret_access_key=<value from AWS access portal> aws_session_token=<value from AWS access portal>
  3. ファイルを保存します。これで、ファイル ~/.aws/credentials はローカルの開発システムに存在しているはずです。このファイルには、特定の名前付きプロファイルが指定されていない場合に for Java が使用する [デフォルト〕 プロファイルが含まれています。 SDK

  4. AWS アクセスポータルにサインインする

  5. アクセス AWS ポータルからIAMロールの認証情報をコピーするには、手動認証情報更新の見出しの下の手順に従ってください。

    1. リンクされた手順のステップ 4 では、開発ニーズに応じたアクセスを許可するIAMロール名を選択します。このロールには通常、 PowerUserAccessまたは Developer などの名前があります。

    2. ステップ 7 で、[ AWS 認証情報ファイルにプロファイルを手動追加] オプションを選択し、内容をコピーします。

  6. コピーした認証情報をローカル credentials ファイルに貼り付け、生成されたプロファイル名を削除します。ファイルは以下のようになります。

    [default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
  7. credentials ファイルを保存します。

SDK for Java がサービスクライアントを作成すると、これらの一時的な認証情報にアクセスし、リクエストごとに使用します。ステップ 5a で選択したIAMロールの設定により、一時的な認証情報が有効である期間が決まります。最大期間は 12 時間です。

一時的な認証情報の有効期限が切れたら、ステップ 4~7 を繰り返します。