で SDK 認証を設定します AWS - AWS SDK for .NET

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

で SDK 認証を設定します AWS

AWS のサービス を使用して開発する際には、AWS によりコードがどのように認証するかを設定する必要があります。環境と利用可能な AWS のアクセスに応じて、AWS リソースへのプログラムによるアクセスを設定する方法は異なります。

SDK のさまざまな認証方法については、『SDK およびツールリファレンスガイド』の AWS「認証とアクセス」を参照してください。

このトピックでは、新しいユーザーがローカルで開発しており、雇用主から認証方法を与えられておらず、AWS IAM Identity Center を使って一時的な認証情報を取得する予定であることを前提としています。ご使用の環境がこれらの前提条件に該当しない場合、このトピックの情報の一部が当てはまらない場合や、情報がすでに提供されている場合があります。

この環境を構成するにはいくつかのステップが必要で、その概要は以下のとおりです。

IAM Identity Center の有効化と設定

IAM Identity Center を使用するには、まず IAM Identity Center を有効にして設定する必要があります。SDK でこれを行う方法の詳細については、『AWSSDK およびツールリファレンスガイド』の IAM Identity Center 認証に関するトピックのステップ 1 を参照してください。具体的には、「IAM Identity Center 経由のアクセスを確立していません」にある必要な指示に従ってください。

IAM アイデンティティセンターを使用するように SDK を設定します。

IAM ID センターを使用するように SDK を設定する方法に関する情報は、『AWSSDK およびツールリファレンスガイド』の IAM ID センター認証に関するトピックのステップ 2 に記載されています。この設定を完了すると、システムには以下の要素が含まれるようになります。

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

  • SDK AWS config [default]から参照できる設定値のセットを含むプロファイルを含む共有ファイル。このファイルの場所を確認するには、AWS SDK とツールのリファレンスガイドの「共有ファイルの場所」を参照してください。は、にリクエストを送信する前に、プロファイルの SSO AWS SDK for .NET トークンプロバイダーを使用して認証情報を取得します。AWSIAM Identity Center 許可セットに接続された IAM ロールである sso_role_name 値により、アプリケーションで使用されている 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
重要

AWS IAM Identity Center認証にを使用している場合は、SSO NuGet 解決が機能するようにアプリケーションが次のパッケージを参照する必要があります。

  • AWSSDK.SSO

  • AWSSDK.SSOOIDC

これらのパッケージを参照しないと、実行時例外が発生します

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

AWS のサービス にアクセスするアプリケーションを実行する前に、SDK が IAM Identity Center 認証を使用して認証情報を解決するためのアクティブな 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 の名前のさまざまなバリエーションが含まれる場合があります。

追加情報