

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

# AWS SDK for Ruby 자격 증명 공급자 사용
<a name="credential-providers"></a>

에 대한 모든 요청은에서 발급한 자격 증명을 사용하여 암호화 방식으로 서명해야 AWS 합니다 AWS. 런타임에 SDK는 여러 위치를 확인하여 자격 증명의 구성 값을 검색합니다.

를 사용한 인증은 코드베이스 외부에서 처리할 AWS 수 있습니다. SDK는 자격 증명 공급자 체인을 사용하여 많은 인증 방법을 자동으로 감지하고 사용하며 새로 고칠 수 있습니다.

프로젝트의 AWS 인증을 시작하기 위한 안내 옵션은 *AWS SDKs 및 도구 참조 안내서*의 [인증 및 액세스를](https://docs.aws.amazon.com/sdkref/latest/guide/access.html) 참조하세요.

## 보안 인증 공급자 체인
<a name="credchain"></a>

모든 SDK에는 AWS 서비스에 요청하는 데 사용할 유효한 보안 인증을 얻기 위해 확인하는 일련의 장소(또는 소스)가 있습니다. 유효한 보안 인증 정보를 찾은 후에는 검색이 중지됩니다. 이러한 체계적인 검색을 기본 보안 인증 공급자 체인이라고 합니다.

**참고**  
새 사용자가 시작할 수 있도록 권장 접근 방식을 따른 경우에서 콘솔 자격 증명으로 로그인을 사용하여 인증한 것입니다[AWS SDK for Ruby를 AWS 사용하여 로 인증](credentials.md). 상황에 따라 다른 인증 방법이 유용할 수 있습니다. 보안 위험을 방지하려면 항상 단기 보안 인증을 사용하는 것이 좋습니다. 다른 인증 방법 절차에 대해서는AWS SDK 및 도구 참조 안내서**의 [Authentication and access](https://docs.aws.amazon.com/sdkref/latest/guide/access.html)를 참조하세요.

체인의 각 단계마다 값을 설정하는 다양한 방법이 있습니다. 코드에서 직접 값을 설정하는 것이 항상 우선하며, 환경 변수로를 설정한 다음 공유 AWS `config` 파일에서를 설정합니다.

*AWS SDKs 및 도구 참조 가이드*에는 모든 AWS SDKs 및에서 사용하는 SDK 구성 설정에 대한 정보가 있습니다 AWS CLI. 공유 AWS `config` 파일을 통해 SDK를 구성하는 방법에 대한 자세한 내용은 [공유 구성 및 자격 증명 파일을](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html) 참조하세요. 환경 변수 설정을 통해 SDK를 구성하는 방법에 관해 자세히 알아보려면 [Environment variables support](https://docs.aws.amazon.com/sdkref/latest/guide/environment-variables.html) 단원을 참조하세요.

를 인증하기 위해 AWS SDK for Ruby AWS는 다음 표에 나열된 순서대로 자격 증명 공급자를 확인합니다.


| 우선 순위에 따른 보안 인증 공급자 | *AWS SDKs 및 도구 참조 가이드* | *AWS SDK for Ruby API Reference* | 
| --- | --- | --- | 
| AWS 액세스 키(임시 및 장기 자격 증명) | [AWS 액세스 키](https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Credentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Credentials.html)[https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SharedCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SharedCredentials.html) | 
| 의 웹 자격 증명 토큰 AWS Security Token Service (AWS STS)  | [역할 보안 인증 공급자 위임](https://docs.aws.amazon.com/sdkref/latest/guide/feature-assume-role-credentials.html)`role_arn`, `role_session_name`, 및 `web_identity_token_file` 사용 | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleWebIdentityCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleWebIdentityCredentials.html)  | 
| AWS IAM Identity Center. 이 안내서의 [AWS SDK for Ruby를 AWS 사용하여 로 인증](credentials.md)를 참조하세요. | [IAM Identity Center 보안 인증 공급자](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SSOCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SSOCredentials.html) | 
| 신뢰할 수 있는 엔터티 공급자(예: AWS\$1ROLE\$1ARN). 이 안내서의 [AWS STS 액세스 토큰 생성](#aws-ruby-sdk-credentials-access-token)을 참조하세요. | [역할 보안 인증 공급자 위임](https://docs.aws.amazon.com/sdkref/latest/guide/feature-assume-role-credentials.html)`role_arn` 및 `role_session_name` 사용 | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html) | 
| 로그인 자격 증명 공급자 | [로그인 자격 증명 공급자](https://docs.aws.amazon.com/sdkref/latest/guide/feature-login-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/LoginCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/LoginCredentials.html) | 
| 프로세스 보안 인증 공급자 | [프로세스 보안 인증 공급자](https://docs.aws.amazon.com/sdkref/latest/guide/feature-process-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ProcessCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ProcessCredentials.html) | 
| Amazon Elastic Container Service(Amazon ECS) 보안 인증 | [컨테이너 보안 인증 공급자](https://docs.aws.amazon.com/sdkref/latest/guide/feature-container-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECSCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECSCredentials.html) | 
| Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 프로파일 보안 인증(IMDS 보안 인증 공급자) | [IMDS 보안 인증 공급자](https://docs.aws.amazon.com/sdkref/latest/guide/feature-imds-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/InstanceProfileCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/InstanceProfileCredentials.html) | 

 AWS SDK for Ruby 환경 변수`AWS_SDK_CONFIG_OPT_OUT`가 설정된 경우 일반적으로에 있는 공유 AWS `config` 파일은 자격 증명에 대해 구문 분석` ~/.aws/config`되지 않습니다.

## AWS STS 액세스 토큰 생성
<a name="aws-ruby-sdk-credentials-access-token"></a>

역할을 수임하려면 일반적으로 액세스할 수 없는 AWS 리소스에 액세스하는 데 사용할 수 있는 임시 보안 자격 증명 세트를 사용해야 합니다. 이러한 임시 보안 인증은 액세스 키 ID, 보안 액세스 키 및 보안 토큰으로 구성됩니다. [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html) 메서드를 사용하여 AWS Security Token Service (AWS STS) 액세스 토큰을 생성할 수 있습니다.

다음 예제에서는 액세스 토큰을 사용해 Amazon S3 클라이언트 객체를 생성합니다. 여기서 `linked::account::arn`은 위임할 역할의 Amazon 리소스 이름(ARN)이고 `session-name`은 위임된 역할 세션의 식별자입니다.

```
role_credentials = Aws::AssumeRoleCredentials.new(
  client: Aws::STS::Client.new,
  role_arn: "linked::account::arn",
  role_session_name: "session-name"
)

s3 = Aws::S3::Client.new(credentials: role_credentials)
```

`role_arn` 또는 설정에 AWS `config` 대한 자세한 내용은 SDK 및 도구 `role_session_name`참조 안내서의 [역할 자격 증명 공급자 수임을](https://docs.aws.amazon.com/sdkref/latest/guide/feature-assume-role-credentials.html) 참조하세요. *AWS SDKs * 