AWS SDK for PHP バージョン 3 のサービスクライアントを外部で設定する - AWS SDK for PHP

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

AWS SDK for PHP バージョン 3 のサービスクライアントを外部で設定する

多くの設定はコードの外部で処理できます。ほとんどの設定は、環境変数として設定することも、別の共有 AWS configファイルで設定することもできます。 AWS 共有configファイルは、プロファイルと呼ばれる個別の設定セットを維持し、環境やテストごとに異なる設定を提供できます。共有ファイルconfigcredentials ファイルの詳細については AWS 、 AWS SDKsおよびツールリファレンスガイドを参照してください。

ほとんどの環境変数と共有configファイル設定は標準化され、 AWS SDKsやツール間で共有され、さまざまなプログラミング言語やアプリケーションで一貫した機能をサポートします。

SDK が環境変数または設定ファイルから解決できるすべての設定を確認するには、「 SDK およびツールリファレンスガイド」の「設定リファレンス」を参照してください。 AWS SDKs

クライアント設定の設定プロバイダーチェーン

SDK は、複数の場所 (またはソース) をチェックして設定値を見つけます。

  1. コードまたはサービスクライアント自体に設定されている明示的な設定は、他の設定よりも優先されます。

  2. 環境変数

    • 環境変数の設定の詳細については、 SDK およびツールリファレンスガイドの「環境変数」を参照してください。 AWS SDKs

    • シェルの環境変数は、システム全体、ユーザー全体、特定のターミナルセッションのさまざまなレベルで設定できることに注意してください。

  3. 共有 config および credentials ファイル

  4. SDK ソースコード自体によって提供されるデフォルト値が最後に使用されます。

    • リージョンなどの一部のプロパティにはデフォルトがありません。コード、環境設定、または共有configファイルで明示的に指定する必要があります。SDK が必要な設定を解決できない場合、API リクエストは実行時に失敗する可能性があります。

この一般的な設定チェーンに加えて、 AWS SDK for PHP バージョン 3 では、認証情報プロバイダーチェーンや解決チェーンなどの特殊なプロバイダーチェーンも使用します。 AWS リージョンこれらの特殊なチェーンは、SDK が実行されている環境を考慮したプロバイダーを追加します。たとえば、コンテナまたは EC2 インスタンスの場合です。

外部設定を使用して設定されたサービスクライアントを作成する

と通信するには、アプリケーションにサービスクライアントを作成する必要があります AWS のサービス。サービスクライアントは への重要な接続であり AWS のサービス、複雑な通信の詳細をすべて処理するため、心配する必要はありません。セキュリティ、エラー処理、再試行などの重要なタスクを自動的に処理するため、技術的な複雑さに対処するのではなく、アプリケーションの構築に集中できます。

パラメータなしでコンストラクタを使用してサービスクライアントを構築する

必要なすべての設定が外部ソースからのものである場合は、空のコンストラクタを使用してサービスクライアントを作成できます。

require 'vendor/autoload.php'; use Aws\S3\S3Client; $s3 = new S3Client([]);

前のコードスニペットはS3Clientインスタンスを作成します。作成時に、SDK は設定プロバイダーチェーンで設定を調べます。SDK が設定値を検出すると、その値が使用されます。

デフォルトの AWS リージョン プロバイダーチェーンとデフォルトの認証情報プロバイダーチェーンは、作成プロセスでも使用されます。チェーンのどこかで、SDK は を解決 AWS リージョン して使用し、リクエストに署名するための認証情報を取得できるようにする設定を見つける必要があります。SDK がこれらの値を見つけられない場合、クライアントの作成は失敗します。

AWS SDK for PHP バージョン 3 環境変数

AWS SDK for PHP バージョン 3 は、ほとんどの SDK でサポートされているクロス SDK 設定を超えて、次の環境変数で動作します。 AWS SDKs

AWS_SDK_LOAD_NONDEFAULT_CONFIG

設定すると、この環境変数は AWS config、ファイル () に加えてcredentials、ファイル (~/.aws/config) から認証情報をロードするように SDK に指示します~/.aws/credential

AWS_SDK_UA_APP_ID

SDK によって行われたリクエストの User-Agent ヘッダーに含まれるカスタムアプリケーション識別子を設定します。

AWS_SUPPRESS_PHP_DEPRECATION_WARNING

true に設定すると、SDK が生成する可能性のある PHP 非推奨警告が抑制されます。