

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

# SDK for PHP の `env` プロバイダ
<a name="env-provider"></a>

環境変数を使用して認証情報を含めると、シー AWS クレットアクセスキーを誤って共有することを防ぐことができます。アクセス AWS キーを本稼働ファイル内のクライアントに直接追加しないことをお勧めします。

Amazon Web Services に対して認証する場合、SDK が最初に認証情報をチェックする場所はユーザーの環境変数です。SDK は `getenv()` 関数を使用して、環境変数の `AWS_ACCESS_KEY_ID`、`AWS_SECRET_ACCESS_KEY`、および `AWS_SESSION_TOKEN` を探します。これらの認証情報は、環境の認証情報と呼ばれます。これらの値を取得する方法については、*AWS SDK およびツールリファレンスガイド*の「[短期認証情報による認証](https://docs.aws.amazon.com/sdkref/latest/guide/access-temp-idc.html)」を参照してください。

でアプリケーションをホストしている場合は[AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_PHP_eb.html)、 [AWS Elastic Beanstalk コンソールから](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environments-cfg-softwaresettings.html#environments-cfg-softwaresettings-console) `AWS_ACCESS_KEY_ID`、`AWS_SECRET_KEY`、および `AWS_SESSION_TOKEN`環境変数を設定して、SDK がそれらの認証情報を自動的に使用できるようにします。

環境変数の設定の詳細については、*AWS SDK およびツールリファレンスガイド*の「[環境変数のサポート](https://docs.aws.amazon.com/sdkref/latest/guide/environment-variables.html)」を参照してください。また、ほとんどの AWS SDKs」を参照してください。 [https://docs.aws.amazon.com/sdkref/latest/guide/settings-reference.html#EVarSettings](https://docs.aws.amazon.com/sdkref/latest/guide/settings-reference.html#EVarSettings)

これらの環境変数は、次に示すように、コマンドラインで設定することもできます。

 **Linux** 

```
$ export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
   # The access key for your AWS アカウント.
$ export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   # The secret access key for your AWS アカウント.
$ export AWS_SESSION_TOKEN=AQoDYXdzEJr...<remainder of security token>
   # The temporary session key for your AWS アカウント. 
   # The AWS_SECURITY_TOKEN environment variable can also be used, but is only supported for backward compatibility purposes.
   # AWS_SESSION_TOKEN is supported by multiple AWS SDKs other than PHP.
```

 **Windows** 

```
C:\> SET  AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
   # The access key for your AWS アカウント.
C:\> SET  AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   # The secret access key for your AWS アカウント.
C:\> SET AWS_SESSION_TOKEN=AQoDYXdzEJr...<remainder of security token>
   # The temporary session key for your AWS アカウント. 
   # The AWS_SECURITY_TOKEN environment variable can also be used, but is only supported for backward compatibility purposes.
   # AWS_SESSION_TOKEN is supported by multiple AWS SDKs besides PHP.
```

 `Aws\Credentials\CredentialProvider::env` は、環境変数からの認証情報のロードを試行します。

```
use Aws\Credentials\CredentialProvider;
use Aws\S3\S3Client;

$client = new S3Client([
    'region'      => 'us-west-2',
    'version'     => '2006-03-01',
    'credentials' => CredentialProvider::env()
]);
```