

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# `env`penyedia di SDK for PHP
<a name="env-provider"></a>

Menggunakan variabel lingkungan untuk memuat kredensi Anda mencegah Anda berbagi kunci akses AWS rahasia secara tidak sengaja. Kami menyarankan Anda untuk tidak pernah menambahkan kunci AWS akses Anda langsung ke klien dalam file produksi apa pun.

Untuk mengautentikasi ke Amazon Web Services, SDK terlebih dahulu memeriksa kredensi di variabel lingkungan Anda. SDK menggunakan `getenv()` fungsi untuk mencari variabel`AWS_ACCESS_KEY_ID`,`AWS_SECRET_ACCESS_KEY`, dan `AWS_SESSION_TOKEN` lingkungan. Kredensial ini disebut sebagai kredensial lingkungan. Untuk petunjuk tentang cara mendapatkan nilai ini, lihat [Mengautentikasi menggunakan kredensi jangka pendek di Panduan Referensi](https://docs.aws.amazon.com/sdkref/latest/guide/access-temp-idc.html) *Alat AWS SDKs dan Alat*.

Jika Anda meng-hosting aplikasi [AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_PHP_eb.html), Anda dapat mengatur variabel`AWS_ACCESS_KEY_ID`,`AWS_SECRET_KEY`, dan `AWS_SESSION_TOKEN` lingkungan [melalui AWS Elastic Beanstalk konsol](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environments-cfg-softwaresettings.html#environments-cfg-softwaresettings-console) sehingga SDK dapat menggunakan kredenal tersebut secara otomatis.

Untuk informasi selengkapnya tentang cara mengatur variabel lingkungan, lihat [Dukungan variabel lingkungan](https://docs.aws.amazon.com/sdkref/latest/guide/environment-variables.html) di *Panduan Referensi Alat AWS SDKs dan Alat*. Juga, untuk daftar semua variabel lingkungan yang didukung oleh sebagian besar AWS SDKs, lihat [Daftar variabel lingkungan](https://docs.aws.amazon.com/sdkref/latest/guide/settings-reference.html#EVarSettings).

Anda juga dapat mengatur variabel lingkungan di baris perintah, seperti yang ditunjukkan di sini.

 **Linux** 

```
$ export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
   # The access key for your Akun AWS.
$ export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   # The secret access key for your Akun AWS.
$ export AWS_SESSION_TOKEN=AQoDYXdzEJr...<remainder of security token>
   # The temporary session key for your Akun 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 Akun AWS.
C:\> SET  AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   # The secret access key for your Akun AWS.
C:\> SET AWS_SESSION_TOKEN=AQoDYXdzEJr...<remainder of security token>
   # The temporary session key for your Akun 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`mencoba memuat kredensi dari variabel lingkungan.

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

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