での SDK 認証 AWS - AWS SDK for PHP

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

での SDK 認証 AWS

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

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

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

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

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

  • 共有configファイルには region設定が含まれています。これにより、SDK AWS リージョン がリクエストに使用するデフォルトが設定されます。このリージョンは、 regionプロパティで明示的に設定されていない SDK サービスリクエストに使用されます。

  • SDK は、リクエストを 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 = 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

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

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名前のバリエーションが含まれている場合があります。

認証の詳細はこちら