

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

# 웹 자격 증명 또는 OpenID Connect를 사용하여 역할을 수임하여 인증 AWS SDKs 및 도구
<a name="access-assume-role-web"></a>

역할 수임에는 액세스 권한이 없을 수 있는 AWS 리소스에 액세스하기 위해 일련의 임시 보안 보안 인증을 사용하는 것이 포함됩니다. 이러한 임시 보안 인증은 액세스 키 ID, 보안 액세스 키 및 보안 토큰으로 구성됩니다. AWS Security Token Service (AWS STS) API 요청에 대해 자세히 알아보려면AWS Security Token Service API 참조**의 [작업](https://docs.aws.amazon.com/STS/latest/APIReference/API_Operations.html)을 참조하세요.

역할을 수임하도록 SDK 또는 도구를 설정하려면 먼저 수임할 특정 *역할*을 만들거나 식별해야 합니다. IAM 역할은 Amazon 리소스 이름([ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html))역할로 고유하게 식별됩니다. 역할은 다른 엔티티와 신뢰 관계를 구축합니다. 해당 역할을 사용하는 신뢰 주체는 웹 ID 공급자, OpenID Connect(OIDC), 또는 SAML 페더레이션일 수 있습니다. IAM 역할에 대한 자세한 내용은 *IAM 사용 설명서*의 [역할 수임 방법](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)을 참조하세요.

SDK에서 IAM 역할을 구성한 후 해당 역할이 자격 증명 공급자를 신뢰하도록 구성된 경우 임시 AWS 자격 증명을 가져오기 위해 해당 역할을 수임하도록 SDK를 추가로 구성할 수 있습니다.

**참고**  
가능하면 리전 엔드포인트를 사용하고를 구성하는 것이 AWS 가장 좋습니다[AWS 리전](feature-region.md).

## 웹 자격 증명 또는 OpenID Connect와 페더레이션
<a name="webidentity"></a>

Login With Amazon, Facebook, Google과 같은 퍼블릭 자격 증명 공급자의 JSON 웹 토큰(JWTs)을 사용하여를 사용하여 임시 AWS 자격 증명을 가져올 수 있습니다`AssumeRoleWithWebIdentity`. 사용 방식에 따라 이러한 JWT는 ID 토큰 또는 액세스 토큰이라고 불릴 수 있습니다. 또한 EntraID나 PingFederate처럼 OIDC 디스커버리 프로토콜을 지원하는 ID 제공업체(idP)가 발급한 JWT도 사용할 수 있습니다.

Amazon Elastic Kubernetes Service를 사용하는 경우, 이 기능을 통해 Amazon EKS 클러스터 내 각 서비스 계정마다 서로 다른 IAM 역할을 지정할 수 있습니다. 이 Kubernetes 기능은 JWTs 포드에 배포한 다음이 자격 증명 공급자가 임시 AWS 자격 증명을 얻는 데 사용합니다. 이 Amazon EKS 구성에 대한 자세한 내용은 *Amazon EKS 사용 설명서***의 [서비스 계정에 대한 IAM 역할](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html)을 참조하세요. 그러나 더 간단한 옵션을 원하면 [SDK에서 지원하는 경우](feature-container-credentials.md#feature-container-credentials-sdk-compat) [Amazon EKS Pod Identitie](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html)를 대신 사용하는 것이 좋습니다.

### 1단계: 보안 인증 공급자 및 IAM 역할 설정
<a name="webidentity_step1"></a>

외부 IdP와의 페더레이션을 구성하려면 IAM 자격 증명 공급자를 사용하여 외부 IdP 및 해당 구성에 AWS 대해 알립니다. 이렇게 하면 AWS 계정 와 외부 IdP 간에 *신뢰*가 설정됩니다. SDK에서 인증을 위해 JSON 웹 토큰(JWT)을 사용하도록 구성하기 전에, 먼저 ID 제공업체(idP)와 해당 idP에 접근하는 데 사용될 IAM 역할을 설정해야 합니다. 이러한 설정을 하려면 *IAM 사용 설명서*의 [웹 보안 인증 또는 OpenID Connect 페더레이션을 위한 역할 생성(콘솔)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)을 참조하십시오.

### 2단계: SDK 또는 도구 구성
<a name="webidentity_step2"></a>

 AWS STS 인증을 위해의 JSON 웹 토큰(JWT)을 사용하도록 SDK 또는 도구를 구성합니다.

프로필에서 이를 지정하면 SDK 또는 도구가 자동으로 해당 AWS STS [https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) API 호출을 수행합니다. 웹 자격 증명 연동을 사용하여 임시 자격 증명을 검색하고 사용하려면 공유 AWS `config` 파일에 다음 구성 값을 지정합니다. 이러한 설정에 대한 자세한 내용은 [역할 보안 인증 제공자 수임 설정](feature-assume-role-credentials.md#feature-assume-role-credentials-settings) 섹션을 참조하십시오.
+ `role_arn` - 1단계에서 생성한 IAM 역할에서
+ `web_identity_token_file`- 외부 IdP에서
+ (선택 사항) `duration_seconds`
+ (선택 사항) `role_session_name` 

다음은 웹 ID를 사용하여 역할을 수임하는 공유 `config` 파일 구성의 예입니다.

```
[profile web-identity]
role_arn=arn:aws:iam::123456789012:role/my-role-name
web_identity_token_file=/path/to/a/token
```

**참고**  
모바일 애플리케이션의 경우 Amazon Cognito를 사용하는 것이 좋습니다. Amazon Cognito는 ID 브로커로 활동하며 사용자를 대신하여 상당한 페더레이션을 합니다. 하지만 Amazon Cognito 보안 인증 공급자는 다른 보안 인증 공급자처럼 SDK 및 도구 코어 라이브러리에 포함되지 않습니다. Amazon Cognito API에 액세스하려면 SDK 또는 도구용 빌드 또는 라이브러리에 Amazon Cognito 서비스 클라이언트를 포함시키십시오. AWS SDKs. [https://docs.aws.amazon.com/cognito/latest/developerguide/service_code_examples.html](https://docs.aws.amazon.com/cognito/latest/developerguide/service_code_examples.html) *Amazon Cognito *

모든 역할 수임 보안 인증 공급자 설정에 대한 자세한 내용은 이 안내서의 [역할 보안 인증 제공자 수임](feature-assume-role-credentials.md)를 참조하세요.