翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS を使用した での認証 AWS SDK for Java 2.x
AWS サービスの開発 AWS 時に、 が で AWS SDK for Java 2.x 認証する方法を確立する必要があります。SDK は、認証情報の検出、署名の作成、認証情報の更新を完全にバックグラウンドで管理するため、ユーザーはアプリケーションロジックに集中できます。
認証の設定
AWS SDKsおよびツールリファレンスガイド」の「認証とアクセス」トピックでは、さまざまな認証アプローチについて説明します。
ローカル開発では、コンソールのログイン認証情報を使用して AWS CLI にログインし、短期認証情報を使用することをお勧めします。 AWS アカウントアクセスにルート、IAM ユーザー、または IAM とのフェデレーションを使用する場合に推奨されます。AWS SDK for Java 2.xを使用してインタラクティブな開発作業のための認証情報にアクセスする の指示に従います。
AWS SDKs およびツールリファレンスガイドの手順に従って、SDK がリクエストに署名できるようにシステムを設定する必要があります。
1. 短期認証情報を使用したローカル開発
ローカル開発では、コンソールのログイン認証情報を使用して AWS CLI にログインし、短期認証情報を使用することをお勧めします。 AWS アカウントアクセスにルート、IAM ユーザー、または IAM とのフェデレーションを使用する場合に推奨されます。
手順については、 の「認証情報プロバイダーの使用 AWS SDK for Java 2.x」を参照してください。
2. SDK のシングルサインオンアクセスの設定
SDK が IAM Identity Center 認証を使用するように「プログラムによるアクセス」セクションのステップ 2 を完了したら、システムに次の要素が含まれているはずです。
-
アプリケーションを実行する前に AWS アクセスポータルセッションを開始 AWS CLIするために使用する 。
-
デフォルトプロファイルを含む
~/.aws/configファイル。SDK for Java は、リクエストを AWSに送信する前に、プロファイルの SSO トークンプロバイダー設定を使用して認証情報を取得します。IAM Identity Center 許可セットに接続された IAM ロールであるsso_role_name値により、アプリケーションで使用されている AWS のサービス にアクセスできます。次のサンプル
configファイルは、SSO トークンプロバイダー設定で設定されたデフォルトプロファイルを示しています。プロファイルのsso_session設定は、指定されたsso-sessionセクションを参照します。sso-sessionセクションには、 AWS アクセスポータルセッションを開始するための設定が含まれています。[default] sso_session = my-sso sso_account_id =111122223333sso_role_name =SampleRoleregion = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url =https://provided-domain.awsapps.com/startsso_registration_scopes = sso:account:access
SSO トークンプロバイダー設定で使用される設定の詳細については、「 AWS SDKs and Tools リファレンスガイド」の「SSO token provider configuration」を参照してください。
開発環境が前述のようにプログラムによるアクセス用に設定されていない場合は、SDK リファレンスガイドのステップ 2 に従ってください。
3. を使用してサインインする AWS CLI
にアクセスするアプリケーションを実行する前に AWS のサービス、SDK が IAM Identity Center 認証を使用して認証情報を解決するには、アクティブな AWS アクセスポータルセッションが必要です。で次のコマンドを実行して AWS CLI 、 AWS アクセスポータルにサインインします。
aws sso login
デフォルトのプロファイルを設定している場合は、--profile オプションを指定してコマンドを呼び出す必要はありません。SSO トークンプロバイダー設定で名前付きプロファイルを使用している場合、コマンドは aws sso login --profile
です。named-profile
既にアクティブなセッションがあるかどうかをテストするには、次の AWS CLI コマンドを実行します。
aws sts get-caller-identity
このコマンドへの応答により、共有 config ファイルに設定されている IAM Identity Center アカウントとアクセス許可のセットが報告されます。
注記
既にアクティブな AWS アクセスポータルセッションがあり、 を実行している場合はaws sso login、認証情報を指定する必要はありません。
ただし、botocore に情報へのアクセス許可を求めるダイアログが表示されます。botocore は AWS CLI の基盤です。
AWS CLI および SDK for Java の情報へのアクセスを許可する を選択します。
追加認証オプション
プロファイルや環境変数の使用など、SDK の認証に関するその他のオプションについては、 AWS SDKsおよびツールリファレンスガイドの設定の章を参照してください。