

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# SDK for PHP의 `env` 공급자
<a name="env-provider"></a>

환경 변수를 사용하여 자격 증명을 포함하면 실수로 AWS 보안 액세스 키를 공유할 수 없습니다. 프로덕션 파일의 클라이언트에 AWS 액세스 키를 직접 추가하지 않는 것이 좋습니다.

SDK는 Amazon Web Services에 인증하기 위해 먼저 환경 변수에서 보안 인증을 확인합니다. 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)을 참조하세요.

에서 애플리케이션을 호스팅하는 경우 SDK가 이러한 자격 증명을 자동으로 사용할 [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` 환경 변수를 설정할 수 있습니다.

환경 변수를 설정하는 방법에 대한 자세한 내용은 *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()
]);
```