SDK による認証 AWS - AWS SDK for JavaScript

AWS SDK for JavaScript V3 APIリファレンスガイドでは、バージョン 3 (V3) のすべてのAPIオペレーションについて詳しく説明しています AWS SDK for JavaScript 。

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

SDK による認証 AWS

で開発 AWS する場合、コードが で認証される方法を確立する必要があります AWS のサービス。 AWS リソースへのプログラムによるアクセスは、環境や利用可能な AWS アクセスに応じてさまざまな方法で設定できます。

認証方法を選択し、 用に設定するにはSDK、「 AWS SDKsおよび ツールリファレンスガイド」の「認証とアクセス」を参照してください。

ローカルで開発中で、雇用主から認証方法を与えられていない新規ユーザーは、セットアップすることをお勧めします AWS IAM Identity Center。この方法には、設定を容易に AWS CLI するために をインストールし、 AWS アクセスポータルに定期的にサインインすることが含まれます。この方法を選択した場合、「 AWS SDKsおよびツールリファレンスガイド」の IAM Identity Center 認証の手順を完了した後、環境に次の要素が含まれている必要があります。

  • アプリケーションを実行する前に AWS アクセスポータルセッションを開始 AWS CLIするために使用する 。

  • SDK から参照できる設定値のセットを含む [default] プロファイルがある共有 AWSconfig ファイル。このファイルの場所を確認するには、「 AWS SDKsおよびツールリファレンスガイド」の「共有ファイルの場所」を参照してください。

  • 共有 config ファイルは region 設定を設定します。これにより、 AWS リージョン が AWS リクエストSDKに使用するデフォルトが設定されます。このリージョンは、使用するリージョンで指定されていないSDKサービスリクエストに使用されます。

  • SDK は、 にリクエストを送信する前に、プロファイルのSSOトークンプロバイダー設定を使用して認証情報を取得します AWS。sso_role_name 値は、IAMIdentity Center アクセス許可セットに接続された IAMロールであり、アプリケーションで AWS のサービス 使用されている へのアクセスを許可します。

    次のサンプルconfigファイルは、SSOトークンプロバイダー設定で設定されたデフォルトのプロファイルを示しています。プロファイルの sso_session 設定は、指定された sso-session セクションを参照します。sso-session セクションには、 AWS アクセスポータルセッションを開始するための設定が含まれています。

    [default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://provided-domain.awsapps.com/start sso_registration_scopes = sso:account:access

v3 AWS SDK for JavaScript では、IAMIdentity Center 認証を使用するために、アプリケーションに追加のパッケージ ( SSOや などSSOOIDC) を追加する必要はありません。

この認証情報プロバイダーを明示的に使用する方法の詳細については、npm (Node.js パッケージマネージャー) ウェブサイトの fromSSO() を参照してください。

AWS アクセスポータルセッションを開始する

にアクセスするアプリケーションを実行する前に AWS のサービス、 が IAM Identity Center 認証を使用して認証情報を解決SDKするためのアクティブな AWS アクセスポータルセッションが必要です。設定したセッションの長さに応じて、アクセスは最終的に期限切れになり、 SDKで認証エラーが発生します。 AWS アクセスポータルにサインインするには、 で次のコマンドを実行します AWS CLI。

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、 認証情報を指定する必要はありません。

サインインプロセスにより、データ AWS CLI へのアクセスを許可するように求められる場合があります。 AWS CLI は SDK for Python 上に構築されているため、アクセス許可メッセージにはbotocore名前のバリエーションが含まれている可能性があります。

詳細認証情報

人間のユーザーとは、別名人間 ID と呼ばれ、人、管理者、デベロッパー、オペレーター、およびアプリケーションのコンシューマーを指します。 AWS 環境とアプリケーションにアクセスするには、ID が必要です。組織のメンバーである人間のユーザー、つまり、ユーザーや開発者は、ワークフォースアイデンティティと呼ばれます。

アクセス時に一時的な認証情報を使用します AWS。一時的な認証情報を提供するロールを引き受けることで、人間のユーザーの ID プロバイダーを使用して AWS アカウントへのフェデレーションアクセスを提供できます。一元的なアクセス管理を行うには、 AWS IAM Identity Center (IAM Identity Center) を使用して、 アカウントへのアクセスと、それらのアカウント内のアクセス許可を管理することをお勧めします。その他の代替案については、以下を参照してください。