

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

# AWS SDK for PHP 버전 3 자격 증명 공급자 사용
<a name="guide_credentials"></a>

 AWS SDKs에 사용할 수 있는 자격 증명 메커니즘에 대한 참조 정보는 SDK 및 도구 참조 [안내서의 자격 증명 및 액세스를](https://docs.aws.amazon.com/sdkref/latest/guide/access.html) 참조하세요. *AWS SDKs *

**중요**  
보안을 위해 AWS 루트 계정을 액세스에 사용하지 **않는** 것이 *좋습니다*. 최신 보안 권장 사항은 항상 *IAM 사용자 설명서*의 [IAM의 보안 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)를 참조하세요.

 AWS SDK for PHP 버전 3에서 자격 증명 공급자의 역할은 자격 증명을 소싱하고 SDK의 AWS 서비스 클라이언트에 제공하는 것입니다. SDK는 획득한 자격 증명을 사용하여 각 요청에 암호화 방식으로 서명하여 서비스를 인증합니다. 자격 증명은 일반적으로 액세스 키(액세스 키 ID)와 시크릿 액세스 키로 구성됩니다.

[IAM Identity Center 인증을 설정](credentials.md#use-idc-for-auth)하거나 [IAM 역할을 수임](assumerole-provider.md)하도록 런타임을 구성할 때와 같이 임시 자격 증명을 사용하는 경우 액세스 키에 세션 토큰이 추가되어 AWS 리소스에 대한 시간 제한 액세스를 제공합니다.

## AWS SDK for PHP 버전 3의 자격 증명 공급자란 무엇입니까?
<a name="cred-provider-defn-php"></a>

보안 인증 공급자는 `GuzzleHttp\Promise\PromiseInterface` 인스턴스를 통해 이행되거나 `Aws\Credentials\CredentialsInterface`을 통해 거부되는 `Aws\Exception\CredentialsException`를 반환하는 함수입니다. [SDK는 자격 증명 공급자 함수의 여러 구현을 제공](built-in-providers-in-the-sdk.md)하며, 자격 증명을 생성하거나 자격 증명 로딩을 최적화하기 위해 [고유한 사용자 지정 로직을 구현](creating-a-custom-provider.md)할 수도 있습니다.

보안 인증 공급자는 `credentials` 클라이언트 생성자 옵션에 전달됩니다. 보안 인증 공급자는 비동기적이므로, API 작업을 호출할 때마다 강제로 늦게 평가됩니다. 따라서 보안 인증 공급자 함수를 SDK 클라이언트 생성자에 전달하면 보안 인증이 즉시 확인되지 않습니다. 보안 인증 공급자가 보안 인증 객체를 반환하지 않는 경우 API 작업은 `Aws\Exception\CredentialsException`을 통해 거부됩니다.

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

// Use the ECS credential provider. 
$provider = CredentialProvider::ecsCredentials();
// Be sure to memoize the credentials.
$memoizedProvider = CredentialProvider::memoize($provider);

// Pass the provider to the client
$client = new S3Client([
    'region'      => 'us-west-2',
    'version'     => '2006-03-01',
    'credentials' => $memoizedProvider
]);
```