

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

# 신뢰할 수 있는 토큰 발급자를 사용하여 애플리케이션 사용
<a name="using-apps-with-trusted-token-issuer"></a>

신뢰할 수 있는 토큰 발급자를 사용하면 외부에서 인증하는 애플리케이션에서 신뢰할 수 있는 자격 증명 전파를 사용할 수 있습니다 AWS. 신뢰할 수 있는 토큰 발급자를 사용하면 이러한 애플리케이션이 사용자를 대신하여 AWS 관리형 애플리케이션에 액세스하도록 요청할 수 있는 권한을 부여할 수 있습니다.

다음 주제에서는 신뢰할 수 있는 토큰 발급자의 작동 방식을 설명하고 설정 지침을 제공합니다.

**Topics**
+ [신뢰할 수 있는 토큰 발급자 개요](#trusted-token-issuer-overview)
+ [신뢰할 수 있는 토큰 발급자의 사전 조건 및 고려 사항](#trusted-token-issuer-prerequisites)
+ [JTI 클레임 세부 정보](#trusted-token-issuer-configuration-jti-claim)
+ [신뢰할 수 있는 토큰 발급자 구성 설정](trusted-token-issuer-configuration-settings.md)
+ [신뢰할 수 있는 토큰 발급자 설정](setuptrustedtokenissuer.md)
+ [ID 강화 IAM 역할 세션](trustedidentitypropagation-identity-enhanced-iam-role-sessions.md)

## 신뢰할 수 있는 토큰 발급자 개요
<a name="trusted-token-issuer-overview"></a>

신뢰할 수 있는 자격 증명 전파는 외부에서 인증하는 애플리케이션이 신뢰할 수 있는 토큰 발급자를 사용하여 사용자를 대신하여 요청을 AWS 할 수 있도록 하는 메커니즘을 제공합니다. **신뢰할 수 있는 토큰 발급자는 서명된 토큰을 생성하는 OAuth 2.0 권한 부여 서버입니다. 이러한 토큰은에 대한 액세스 요청(애플리케이션 요청)을 시작하는 애플리케이션 AWS 서비스(애플리케이션 수신)에 권한을 부여합니다. 요청 애플리케이션은 신뢰할 수 있는 토큰 발급자가 인증한 사용자 대신 액세스 요청을 시작합니다. 사용자는 신뢰할 수 있는 토큰 발급자와 IAM Identity Center 모두에 알려져 있습니다.

AWS 서비스 요청을 수신하는는 Identity Center 디렉터리에 표시된 사용자 및 그룹 멤버십을 기반으로 리소스에 대한 세분화된 권한 부여를 관리합니다.는 외부 토큰 발급자의 토큰을 직접 사용할 AWS 서비스 수 없습니다.

이 문제를 해결하기 위해 IAM Identity Center는 요청 애플리케이션 또는 요청 애플리케이션에서 사용하는 AWS 드라이버가 신뢰할 수 있는 토큰 발급자가 발행한 토큰을 IAM Identity Center에서 생성한 토큰으로 교환하는 방법을 제공합니다. IAM Identity Center에서 생성된 토큰은 해당 IAM Identity Center 사용자를 참조합니다. 요청 애플리케이션 또는 드라이버는 새 토큰을 사용하여 수신 애플리케이션에 대한 요청을 시작합니다. 새 토큰은 IAM Identity Center의 해당 사용자를 참조하므로 수신 애플리케이션은 IAM Identity Center에 표시된 사용자 또는 그룹 구성원 자격을 기반으로 요청된 액세스 권한을 부여할 수 있습니다.

**중요**  
신뢰할 수 있는 토큰 발급자로 추가할 OAuth 2.0 권한 부여 서버를 선택하는 것은 신중한 고려가 필요한 보안 결정입니다. 신뢰할 수 있는 토큰 발급자만 선택하여 다음 작업을 수행하세요.  
토큰에 지정된 사용자를 인증합니다.
수신 애플리케이션에 대한 해당 사용자의 액세스 권한을 부여합니다.
IAM Identity Center에서 IAM Identity Center 생성 토큰으로 교환할 수 있는 토큰을 생성합니다.

## 신뢰할 수 있는 토큰 발급자의 사전 조건 및 고려 사항
<a name="trusted-token-issuer-prerequisites"></a>

신뢰할 수 있는 토큰 발급자를 설정하기 전에 다음 사전 조건 및 고려 사항을 검토합니다.
+ **신뢰할 수 있는 토큰 발급자 구성**

  OAuth 2.0 권한 부여 서버(신뢰할 수 있는 토큰 발급자)를 구성해야 합니다. 신뢰할 수 있는 토큰 발급자는 일반적으로 IAM Identity Center의 ID 소스로 사용하는 ID 제공업체이지만 반드시 그럴 필요는 없습니다. 신뢰할 수 있는 토큰 발급자를 설정하는 방법에 대한 자세한 내용은 관련 ID 제공업체 설명서를 참조하세요.
**참고**  
신뢰할 수 있는 토큰 발급자의 각 사용자 ID를 IAM Identity Center의 해당 사용자에 매핑하는 한 IAM Identity Center에서 사용할 신뢰할 수 있는 토큰 발급자를 최대 10개까지 구성할 수 있습니다.
+ 토큰을 생성하는 OAuth 2.0 권한 부여 서버(신뢰할 수 있는 토큰 발급자)에는 IAM Identity Center에서 토큰 서명을 확인하기 위한 퍼블릭 키를 획득하는 데 사용할 수 있는 [OpenID Connect(OIDC)](https://openid.net/specs/openid-connect-discovery-1_0.html) 검색 엔드포인트가 있어야 합니다. 자세한 내용은 [OIDC 검색 엔드포인트 URL(발급자 URL)](trusted-token-issuer-configuration-settings.md#oidc-discovery-endpoint-url) 섹션을 참조하세요.
+ **신뢰할 수 있는 토큰 발급자가 발급한 토큰**

  신뢰할 수 있는 토큰 발급자의 토큰은 다음 요구 사항을 충족해야 합니다.
  + 토큰은 서명되고 RS256 알고리즘을 사용한 [JSON 웹 토큰(JWT)](https://datatracker.ietf.org/doc/html/rfc7519#section-3) 형식이어야 합니다.
  + 토큰에는 다음 클레임이 포함되어야 합니다.
    + [발급자](https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.1)(iss)-토큰을 발급한 엔터티입니다. 이 값은 신뢰할 수 있는 토큰 발급자의 OIDC 검색 엔드포인트(발급자 URL)에 구성된 값과 일치해야 합니다.
    + [제목](https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.2)(sub)-인증된 사용자입니다.
    + [대상](https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.3)(aud)-토큰의 의도된 수신자입니다. 이 서비스는 토큰을 IAM Identity Center의 토큰으로 교환한 후 액세스할 수 있는 AWS 서비스 입니다. 자세한 내용은 [aud 클레임](trusted-token-issuer-configuration-settings.md#trusted-token-issuer-aud-claim) 단원을 참조하십시오.
    + [만료 시간](https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.4)(exp)-토큰이 만료된 이후의 시간입니다.
  + 토큰은 ID 토큰 또는 액세스 토큰일 수 있습니다.
  + 토큰에는 IAM Identity Center 사용자 한 명에게 고유하게 매핑될 수 있는 속성이 있어야 합니다.
**참고**  
Microsoft Entra ID에서 발급한 JWT에 사용자 지정 서명 키를 사용하는 것은 지원되지 않습니다. 신뢰할 수 있는 토큰 발급자와 함께 Microsoft Entra ID에서 발급한 토큰을 사용하기 위해서는 사용자 지정 서명 키를 사용할 수 없습니다.
+ **선택적 클레임**

  IAM Identity Center는 RFC 7523에 정의된 모든 선택적 클레임을 지원합니다. 자세한 내용은 이 RFC의 [섹션 3: JWT 형식 및 처리 요구 사항](https://datatracker.ietf.org/doc/html/rfc7523#section-3)을 참조하세요.

  예를 들어 토큰에는 [JTI(JWT ID) 클레임](https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.7)이 포함될 수 있습니다. 이 클레임이 있는 경우 동일한 JTI를 가진 토큰을 토큰 교환에 재사용할 수 없게 됩니다. JTI 클레임에 관한 자세한 내용은 [JTI 클레임 세부 정보](#trusted-token-issuer-configuration-jti-claim)의 내용을 참조하세요.
+ **신뢰할 수 있는 토큰 발급자에서 사용하도록 IAM Identity Center 구성**

  또한 IAM Identity Center를 활성화하고, IAM Identity Center의 ID 소스를 구성하고, 신뢰할 수 있는 토큰 발급자 디렉터리의 사용자에 해당하는 사용자를 프로비저닝해야 합니다.

  이렇게 하려면 다음을 수행해야 합니다.
  + SCIM(System for Cross-domain Identity Management) 2.0 프로토콜을 사용하여 IAM Identity Center와 사용자를 동기화합니다.
  + IAM Identity Center에서 직접 사용자를 생성합니다.

## JTI 클레임 세부 정보
<a name="trusted-token-issuer-configuration-jti-claim"></a>

IAM Identity Center가 IAM Identity Center에서 이미 교환한 토큰을 교환하는 요청을 받으면 요청은 실패합니다. 토큰 교환을 위한 토큰 재사용을 감지하고 방지하려면 JTI 클레임을 포함시킬 수 있습니다. IAM Identity Center는 토큰의 클레임을 기반으로 토큰의 재사용을 방지합니다.

모든 OAuth 2.0 권한 부여 서버가 토큰에 JTI 클레임을 추가하는 것은 아닙니다. 일부 OAuth 2.0 권한 부여 서버는 JTI를 사용자 지정 클레임으로 추가하는 것을 허용하지 않을 수 있습니다. JTI 클레임 사용을 지원하는 OAuth 2.0 권한 부여 서버는 이 클레임을 ID 토큰에만 추가하거나 액세스 토큰에만 추가하거나 둘 모두에 추가할 수 있습니다. 자세한 내용은 OAuth 2.0 권한 부여 서버 설명서를 참조하세요.

 토큰을 교환하는 애플리케이션을 빌드하는 방법에 대한 자세한 내용은 IAM Identity Center API 설명서를 참조하세요. 올바른 토큰을 획득하고 교환하도록 고객 관리형 애플리케이션을 구성하는 방법에 대한 자세한 내용은 애플리케이션 설명서를 참조하세요.

# 신뢰할 수 있는 토큰 발급자 구성 설정
<a name="trusted-token-issuer-configuration-settings"></a>

다음 섹션에서는 신뢰할 수 있는 토큰 발급자를 설정하고 사용하는 데 필요한 설정을 설명합니다.

**Topics**
+ [OIDC 검색 엔드포인트 URL(발급자 URL)](#oidc-discovery-endpoint-url)
+ [속성 매핑](#trusted-token-issuer-attribute-mappings)
+ [aud 클레임](#trusted-token-issuer-aud-claim)

## OIDC 검색 엔드포인트 URL(발급자 URL)
<a name="oidc-discovery-endpoint-url"></a>

IAM Identity Center 콘솔에 신뢰할 수 있는 토큰 발급자를 추가하는 경우 OIDC 검색 엔드포인트 URL을 지정해야 합니다. 이 URL은 일반적으로 상대 URL(`/.well-known/openid-configuration`)로 참조됩니다. IAM Identity Center 콘솔에서는 이 URL을 **발급자 URL이라고 합니다.

**참고**  
검색 엔드포인트의 URL을 *`.well-known/openid-configuration`까지, 없이* 붙여 넣기해야 합니다. `.well-known/openid-configuration` 항목이 URL에 포함된 경우 신뢰할 수 있는 토큰 발급자 구성이 작동하지 않습니다. IAM Identity Center는 이 URL을 검증하지 않으므로 URL이 올바르게 구성되지 않으면 알림 없이 신뢰할 수 있는 토큰 발급자 설정이 실패합니다.  
OIDC 검색 엔드포인트 URL은 포트 80 및 443을 통해서만 연결할 수 있어야 합니다.

IAM Identity Center는 이 URL을 사용하여 신뢰할 수 있는 토큰 발급자에 관한 추가 정보를 획득합니다. 예를 들어 IAM Identity Center는 이 URL을 사용하여 신뢰할 수 있는 토큰 발급자가 생성하는 토큰을 확인하는 데 필요한 정보를 획득합니다. IAM Identity Center에 신뢰할 수 있는 토큰 발급자를 추가하는 경우 이 URL을 지정해야 합니다. URL을 찾으려면 애플리케이션용 토큰을 생성하는 데 사용하는 OAuth 2.0 권한 부여 서버 공급자의 설명서를 참조하거나 공급자에게 직접 문의하여 지원을 요청하세요.

## 속성 매핑
<a name="trusted-token-issuer-attribute-mappings"></a>

속성 매핑을 통해 IAM Identity Center는 신뢰할 수 있는 토큰 발급자가 발급한 토큰으로 표시되는 사용자와 IAM Identity Center의 단일 사용자를 매칭할 수 있습니다. IAM Identity Center에 신뢰할 수 있는 토큰 발급자를 추가하는 경우 이 속성 매핑을 지정해야 합니다. 이 속성 매핑은 신뢰할 수 있는 토큰 발급자가 생성한 토큰의 클레임에 사용됩니다. 클레임의 값은 IAM Identity Center를 검색하는 데 사용됩니다. 검색에서는 지정된 속성을 사용하여 IAM Identity Center의 단일 사용자를 검색하고, 이 사용자는 AWS내에서 사용자로 사용됩니다. 선택한 클레임을 IAM Identity Center ID 저장소의 사용 가능한 고정 속성 목록에 있는 하나의 속성에 매핑해야 합니다. IAM Identity Center ID 저장소 속성(사용자 이름, 이메일 및 외부 ID) 중 하나를 선택할 수 있습니다. IAM Identity Center에서 지정한 속성 값은 각 사용자마다 고유해야 합니다.

## aud 클레임
<a name="trusted-token-issuer-aud-claim"></a>

**aud 클레임은 토큰의 대상(수신자)을 식별합니다. 액세스를 요청하는 애플리케이션이 IAM Identity Center와 페더레이션되지 않은 ID 제공업체를 통해 인증하는 경우 해당 ID 제공업체를 신뢰할 수 있는 토큰 발급자로 설정해야 합니다. 액세스 요청을 수신하는 애플리케이션(수신 애플리케이션)은 신뢰할 수 있는 토큰 발급자가 생성한 토큰을 IAM Identity Center에서 생성한 토큰으로 교환해야 합니다.

신뢰할 수 있는 토큰 발급자에 등록된 수신 애플리케이션의 aud 클레임 값을 획득하는 방법에 대한 자세한 내용은 신뢰할 수 있는 토큰 발급자의 설명서를 참조하거나 신뢰할 수 있는 토큰 발급자 관리자에게 문의하여 지원을 요청하세요.

# 신뢰할 수 있는 토큰 발급자 설정
<a name="setuptrustedtokenissuer"></a>

IAM Identity Center 외부에서 인증하는 애플리케이션에 신뢰할 수 있는 ID 전파를 활성화하려면 한 명 이상의 관리자가 신뢰할 수 있는 토큰 발급자를 설정해야 합니다. 신뢰할 수 있는 토큰 발급자는 요청을 시작하는 애플리케이션(요청 애플리케이션)에 토큰을 발급하는 OAuth 2.0 권한 부여 서버입니다. 토큰은 이러한 애플리케이션이 사용자를 대신하여 수신 애플리케이션()에 대한 요청을 시작하도록 승인합니다 AWS 서비스.

**Topics**
+ [관리 역할 및 책임 협력](#coordinating-administrative-roles-responsibilities)
+ [신뢰할 수 있는 토큰 발급자 설정 작업](#setuptrustedtokenissuer-tasks)
+ [IAM Identity Center 콘솔에 신뢰할 수 있는 토큰 발급자를 추가하는 방법](#how-to-add-trustedtokenissuer)
+ [IAM Identity Center 콘솔에서 신뢰할 수 있는 토큰 발급자 설정을 보거나 편집하는 방법](#view-edit-trusted-token-issuers)
+ [신뢰할 수 있는 토큰 발급자를 사용하는 애플리케이션의 설정 프로세스 및 요청 흐름](#setuptrustedtokenissuer-setup-process-request-flow)

## 관리 역할 및 책임 협력
<a name="coordinating-administrative-roles-responsibilities"></a>

경우에 따라 단일 관리자가 신뢰할 수 있는 토큰 발급자를 설정하는 데 필요한 모든 작업을 수행할 수도 있습니다. 여러 관리자가 이러한 작업을 수행하는 경우 긴밀한 협력이 필요합니다. 다음 표에서는 여러 관리자가 신뢰할 수 있는 토큰 발급자를 설정하고 이를 사용하도록 AWS 서비스를 구성하는 방법을 설명합니다.

**참고**  
애플리케이션은 IAM Identity Center와 통합되고 신뢰할 수 있는 자격 증명 전파를 지원하는 모든 AWS 서비스일 수 있습니다.

자세한 내용은 [신뢰할 수 있는 토큰 발급자 설정 작업](#setuptrustedtokenissuer-tasks) 단원을 참조하십시오.


****  

| Role | 다음 작업 수행 | 협력 당사자 | 
| --- | --- | --- | 
| IAM Identity Center 관리자 |  외부 IdP를 신뢰할 수 있는 토큰 발급자로 IAM Identity Center 콘솔에 추가합니다. IAM Identity Center와 외부 IdP 간에 올바른 속성 매핑을 설정하는 데 도움을 줍니다. 신뢰할 수 있는 토큰 발급자가 IAM Identity Center 콘솔에 추가되면 AWS 서비스 관리자에게 알립니다.  |  외부 IdP(신뢰할 수 있는 토큰 발급자) 관리자 AWS 서비스 관리자  | 
| 외부 IdP(신뢰할 수 있는 토큰 발급자) 관리자 |  토큰을 발급하도록 외부 IdP를 구성합니다. IAM Identity Center와 외부 IdP 간에 올바른 속성 매핑을 설정하는 데 도움을 줍니다.  AWS 서비스 관리자에게 대상 이름(Aud 클레임)을 제공합니다.  |  IAM Identity Center 관리자 AWS 서비스 관리자  | 
| AWS 서비스 관리자 |   AWS 서비스 콘솔에서 신뢰할 수 있는 토큰 발급자를 확인합니다. IAM Identity Center 관리자가 IAM Identity Center 콘솔에 추가하면 신뢰할 수 있는 토큰 발급자가 AWS 서비스 콘솔에 표시됩니다. 신뢰할 수 있는 토큰 발급자를 사용하도록 AWS 서비스를 구성합니다.  |  IAM Identity Center 관리자 외부 IdP(신뢰할 수 있는 토큰 발급자) 관리자  | 

## 신뢰할 수 있는 토큰 발급자 설정 작업
<a name="setuptrustedtokenissuer-tasks"></a>

신뢰할 수 있는 토큰 발급자를 설정하려면 IAM Identity Center 관리자, 외부 IdP(신뢰할 수 있는 토큰 발급자) 관리자 및 애플리케이션 관리자가 다음 작업을 완료해야 합니다.

**참고**  
애플리케이션은 IAM Identity Center와 통합되고 신뢰할 수 있는 자격 증명 전파를 지원하는 모든 AWS 서비스일 수 있습니다.

1. **IAM Identity Center에 신뢰할 수 있는 토큰 발급자 추가** - IAM Identity Center 관리자가 [IAM Identity Center 콘솔 또는 [API](https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_Operations.html)를 사용하여 신뢰할 수 있는 토큰 발급자를 추가합니다](#how-to-add-trustedtokenissuer). 이 구성에서는 다음을 지정해야 합니다.
   + 신뢰할 수 있는 토큰 발급자 이름입니다.
   + OIDC 검색 엔드포인트 URL(IAM Identity Center 콘솔에서 이 URL은 **발급자 URL이라고 함). 검색 엔드포인트는 포트 80 및 443을 통해서만 연결할 수 있어야 합니다.
   + 사용자 조회를 위한 속성 매핑. 이 속성 매핑은 신뢰할 수 있는 토큰 발급자가 생성한 토큰의 클레임에 사용됩니다. 클레임의 값은 IAM Identity Center를 검색하는 데 사용됩니다. 검색에서는 지정된 속성을 사용하여 IAM Identity Center의 단일 사용자를 검색합니다.

1. **IAM Identity Center에 AWS 서비스 연결** - AWS 서비스 관리자는 애플리케이션용 콘솔 또는 애플리케이션 APIs를 사용하여 애플리케이션을 IAM Identity Center에 연결해야 합니다.

    신뢰할 수 있는 토큰 발급자가 IAM Identity Center 콘솔에 추가되면 AWS 서비스 콘솔에도 표시되며 AWS 서비스 관리자가 선택할 수 있습니다.

1. **토큰 교환 사용 구성** - AWS 서비스 콘솔에서 AWS 서비스 관리자는 신뢰할 수 있는 토큰 발급자가 발급한 토큰을 수락하도록 AWS 서비스를 구성합니다. 이러한 토큰은 IAM Identity Center에서 생성한 토큰으로 교환됩니다. 이를 위해서는 1단계에서 신뢰할 수 있는 토큰 발급자의 이름과 AWS 서비스에 해당하는 Aud 클레임 값을 지정해야 합니다.

   신뢰할 수 있는 토큰 발급자는 발급된 토큰에 Aud 클레임 값을 배치하여 토큰이 AWS 서비스에서 사용하기 위한 것임을 나타냅니다. 이 값을 구하려면 신뢰할 수 있는 토큰 발급자의 관리자에게 문의하세요.

## IAM Identity Center 콘솔에 신뢰할 수 있는 토큰 발급자를 추가하는 방법
<a name="how-to-add-trustedtokenissuer"></a>

관리자가 여럿인 조직에서는 IAM Identity Center 관리자가 이 작업을 수행합니다. IAM Identity Center 관리자인 경우 신뢰할 수 있는 토큰 발급자로 사용할 외부 IdP를 선택해야 합니다.

**IAM Identity Center 콘솔에 신뢰할 수 있는 토큰 발급자 추가**

1. [IAM Identity Center 콘솔](https://console.aws.amazon.com/singlesignon)을 엽니다.

1. **설정**을 선택합니다.

1. **설정** 페이지에서 **인증** 탭을 선택합니다.

1. **신뢰할 수 있는 토큰 발급자**에서 **신뢰할 수 있는 토큰 발급자 선택**을 선택합니다.

1. **신뢰할 수 있는 토큰을 발급하도록 외부 IdP 설정** 페이지의 **신뢰할 수 있는 토큰 발급자 세부 정보**에서 다음을 수행합니다.
   + **발급자 URL**의 경우 신뢰할 수 있는 ID 전파를 위해 토큰을 발급할 외부 IdP의 [OIDC 검색 URL](trusted-token-issuer-configuration-settings.md#oidc-discovery-endpoint-url)을 지정합니다. 검색 엔드포인트의 URL을 `.well-known/openid-configuration`까지(제외) 지정해야 합니다. 외부 IdP 관리자가 이 URL을 제공할 수 있습니다.
**참고**  
참고로 이 URL은 신뢰할 수 있는 ID 전파를 위해 발급된 토큰의 발급자(iss) 클레임의 URL과 일치해야 합니다.
   + **신뢰할 수 있는 토큰 발급자 이름**의 경우 IAM Identity Center와 애플리케이션 콘솔에서 신뢰할 수 있는 토큰 발급자로 식별할 이름을 입력합니다.

1. **속성 매핑**에서 다음을 수행합니다.
   + **ID 제공업체 속성**의 경우 목록에서 속성을 선택하여 IAM Identity Center ID 저장소의 속성에 매핑합니다.
   + **IAM Identity Center 속성**의 경우 속성 매핑에 사용할 속성을 선택합니다.

1. **태그(선택 사항)**에서 **새 태그 추가**를 선택하고, **키** 및 **값**(선택 사항)의 값을 지정합니다.

   태그에 대한 자세한 내용은 [AWS IAM Identity Center 리소스 태그 지정](tagging.md) 섹션을 참조하세요.

1. **신뢰할 수 있는 토큰 발급자 생성**을 선택합니다.

1. 신뢰할 수 있는 토큰 발급자 생성을 완료한 후에는 애플리케이션 관리자에게 문의하여 신뢰할 수 있는 토큰 발급자의 이름을 알리면 신뢰할 수 있는 토큰 발급자가 해당 콘솔에 표시되는지 확인할 수 있습니다.

1. 신뢰할 수 있는 ID 전파에 대해 구성된 애플리케이션에서 사용자가 애플리케이션에 액세스할 수 있도록 애플리케이션 관리자가 해당 콘솔에서 이 신뢰할 수 있는 토큰 발급자를 선택해야 합니다.

## IAM Identity Center 콘솔에서 신뢰할 수 있는 토큰 발급자 설정을 보거나 편집하는 방법
<a name="view-edit-trusted-token-issuers"></a>

IAM Identity Center 콘솔에 신뢰할 수 있는 토큰 발급자를 추가한 후에는 관련 설정을 보고 편집할 수 있습니다.

신뢰할 수 있는 토큰 발급자 설정을 편집하려는 경우 이로 인해 사용자가 신뢰할 수 있는 토큰 발급자를 사용하도록 구성된 애플리케이션에 대한 액세스 권한을 상실할 수 있다는 점을 명심해야 합니다. 사용자 액세스가 중단되지 않도록 설정 편집 전에 신뢰할 수 있는 토큰 발급자를 사용하도록 구성된 모든 애플리케이션의 관리자와 협력하는 것이 좋습니다.

**IAM Identity Center 콘솔에서 신뢰할 수 있는 토큰 발급자 설정 보기 또는 편집**

1. [IAM Identity Center 콘솔](https://console.aws.amazon.com/singlesignon)을 엽니다.

1. **설정**을 선택합니다.

1. **설정** 페이지에서 **인증** 탭을 선택합니다.

1. **신뢰할 수 있는 토큰 발급자**에서 보거나 편집하려는 신뢰할 수 있는 토큰 발급자를 선택합니다.

1. **작업**을 선택한 후 **편집**을 선택합니다.

1. **신뢰할 수 있는 토큰 발급자 편집** 페이지에서 필요한 설정을 보거나 편집합니다. 신뢰할 수 있는 토큰 발급자 이름, 속성 매핑 및 태그를 편집할 수 있습니다.

1. **변경 사항 저장**을 선택합니다.

1. **신뢰할 수 있는 토큰 발급자 편집** 대화 상자에서 변경을 확인하는 메시지가 표시됩니다. **확인**을 선택합니다.

## 신뢰할 수 있는 토큰 발급자를 사용하는 애플리케이션의 설정 프로세스 및 요청 흐름
<a name="setuptrustedtokenissuer-setup-process-request-flow"></a>

이 섹션에서는 신뢰할 수 있는 ID 전파에 신뢰할 수 있는 토큰 발급자를 사용하는 애플리케이션의 설정 프로세스와 요청 흐름을 설명합니다. 다음 다이어그램은 이 프로세스의 개요를 제공합니다.

![\[신뢰할 수 있는 ID 전파에 신뢰할 수 있는 토큰 발급자를 사용하는 애플리케이션의 설정 프로세스와 요청 흐름\]](http://docs.aws.amazon.com/ko_kr/singlesignon/latest/userguide/images/trusted-identity-propagation-trusted-token-issuer-request-flow.png)


다음 단계는 이 프로세스에 관한 추가 정보를 제공합니다.

1. 신뢰할 수 있는 토큰 발급자를 사용하도록 IAM Identity Center 및 수신 AWS 관리형 애플리케이션을 설정합니다. 자세한 내용은 [신뢰할 수 있는 토큰 발급자 설정 작업](#setuptrustedtokenissuer-tasks) 단원을 참조하세요.

1. 요청 흐름은 사용자가 요청 애플리케이션을 열 때 시작됩니다.

1. 요청 애플리케이션은 수신 AWS 관리형 애플리케이션에 대한 요청을 시작하기 위해 신뢰할 수 있는 토큰 발급자로부터 토큰을 요청합니다. 사용자가 아직 인증하지 않은 경우 이 프로세스가 인증 흐름을 트리거합니다. 토큰에는 다음 정보가 포함되어 있습니다.
   + 사용자의 주체(Sub).
   + IAM Identity Center가 IAM Identity Center에서 해당 사용자를 조회하는 데 사용하는 속성.
   + 신뢰할 수 있는 토큰 발급자가 수신 AWS 관리형 애플리케이션과 연결한 값을 포함한 대상(Aud) 클레임. 다른 클레임이 있는 경우 IAM Identity Center에서는 이를 사용하지 않습니다.

1. 요청 애플리케이션 또는 사용하는 AWS 드라이버는 토큰을 IAM Identity Center에 전달하고 토큰을 IAM Identity Center에서 생성한 토큰으로 교환하도록 요청합니다. AWS 드라이버를 사용하는 경우 이 사용 사례에 맞춰 드라이버를 구성해야 할 수 있습니다. 자세한 내용은 관련 AWS 관리형 애플리케이션에 대한 설명서를 참조하세요.

1. IAM Identity Center는 OIDC 검색 엔드포인트를 사용하여 토큰의 진본성을 확인하는 데 사용할 수 있는 퍼블릭 키를 획득합니다. 그러면 IAM Identity Center는 다음을 수행합니다.
   + 토큰을 확인합니다.
   + Identity Center 디렉터리를 검색합니다. 이를 위해 IAM Identity Center는 토큰에 지정된 매핑된 속성을 사용합니다.
   + 사용자에게 수신 애플리케이션 액세스 권한이 부여되어 있는지 확인합니다. AWS 관리형 애플리케이션이 사용자 및 그룹에 할당해야 하도록 구성된 경우 사용자에게 애플리케이션에 대한 직접 또는 그룹 기반 할당이 있어야 합니다. 그렇지 않으면 요청이 거부됩니다. AWS 관리형 애플리케이션이 사용자 및 그룹 할당이 필요하지 않도록 구성된 경우 처리가 계속됩니다.
**참고**  
AWS 서비스에는 사용자 및 그룹에 할당이 필요한지 여부를 결정하는 기본 설정 구성이 있습니다. 신뢰할 수 있는 ID 전파에 사용하려는 경우 이러한 애플리케이션의 **할당 필요** 설정을 수정하지 않는 것이 좋습니다. 특정 애플리케이션 리소스에 대한 사용자 액세스를 허용하는 세분화된 권한을 구성한 경우에도 **할당 필요** 설정을 수정하면 해당 리소스에 대한 사용자 액세스가 중단되는 등 예기치 않은 동작이 발생할 수 있습니다.
   + 요청 애플리케이션이 수신 AWS 관리형 애플리케이션에 유효한 범위를 사용하도록 구성되어 있는지 확인합니다.

1. 이전 확인 단계가 성공적이면 IAM Identity Center에서 새 토큰을 생성합니다. 새 토큰은 IAM Identity Center에서 해당 사용자의 자격 증명, 수신 AWS 관리형 애플리케이션의 대상(Aud) 및 요청 애플리케이션이 수신 AWS 관리형 애플리케이션에 요청할 때 사용할 수 있는 범위를 포함하는 불투명한(암호화된) 토큰입니다.

1. 요청 애플리케이션 또는 요청 애플리케이션에서 사용하는 드라이버는 수신 애플리케이션에 대한 리소스 요청을 시작하고 IAM Identity Center에서 생성한 토큰을 수신 애플리케이션에 전달합니다.

1. 수신 애플리케이션은 IAM Identity Center에 호출하여 사용자 ID와 토큰에 인코딩된 범위를 획득합니다. Identity Center 디렉터리에서 사용자 속성이나 사용자 그룹 구성원 자격을 획득하도록 요청할 수도 있습니다.

1. 수신 애플리케이션은 해당 권한 부여 구성을 사용하여 사용자에게 요청된 애플리케이션 리소스에 액세스할 권한이 부여되어 있는지 확인합니다.

1. 사용자에게 요청된 애플리케이션 리소스에 액세스할 수 있는 권한이 부여된 경우 애플리케이션은 요청에 응답합니다.

1. 사용자의 ID, 사용자를 대신하여 수행한 작업 및 기타 이벤트는 수신 애플리케이션 로그 및 CloudTrail 이벤트에 기록됩니다. 이 정보가 로깅되는 구체적인 방법은 애플리케이션에 따라 다릅니다.

# ID 강화 IAM 역할 세션
<a name="trustedidentitypropagation-identity-enhanced-iam-role-sessions"></a>

[AWS Security Token Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html)(STS)를 사용하면 애플리케이션이 ID 강화 IAM 역할 세션을 획득할 수 있습니다. 자격 증명 강화 역할 세션에는 호출하는에 사용자 식별자를 전달하는 자격 증명 컨텍스트 AWS 서비스 가 추가되었습니다. AWS 서비스 는 IAM Identity Center에서 사용자의 그룹 멤버십 및 속성을 조회하고 이를 사용하여 리소스에 대한 사용자의 액세스 권한을 부여할 수 있습니다.

AWS 애플리케이션은 AWS STS [AssumeRole](https://docs.aws.amazon.com//STS/latest/APIReference/API_AssumeRole.html) API 작업을 요청하고 요청의 `ProvidedContexts` 파라미터에서 사용자의 식별자(`userId`)를 사용하여 컨텍스트 어설션을에 전달하여 자격 증명 강화 역할 세션을 얻습니다`AssumeRole`. 컨텍스트 어설션은 `SSO OIDC`에 [https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateTokenWithIAM.html](https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateTokenWithIAM.html)을 요청할 때 응답으로 수신된 `idToken` 클레임에서 획득합니다. AWS 애플리케이션이 자격 증명 강화 역할 세션을 사용하여 리소스에 액세스하는 경우 CloudTrail은 `userId`, 시작 세션 및 수행된 작업을 로깅합니다. 자세한 내용은 [ID 강화 IAM 역할 세션 로그](#trustedidentitypropagation-identity-enhanced-iam-role-session-logging) 단원을 참조하십시오.

**Topics**
+ [ID 강화 IAM 역할 세션의 유형](#types-identity-enhanced-iam-role-sessions)
+ [ID 강화 IAM 역할 세션 로그](#trustedidentitypropagation-identity-enhanced-iam-role-session-logging)

## ID 강화 IAM 역할 세션의 유형
<a name="types-identity-enhanced-iam-role-sessions"></a>

AWS STS 는 `AssumeRole` 요청에 제공된 컨텍스트 어설션에 따라 두 가지 유형의 자격 증명 강화 IAM 역할 세션을 생성할 수 있습니다. IAM Identity Center에서 ID 토큰을 획득한 애플리케이션은 IAM 역할 세션에 `sts:identiy_context`(권장) 또는 `sts:audit_context`(이전 버전과의 호환성 지원)를 추가할 수 있습니다. ID 강화 IAM 역할 세션에는 이러한 컨텍스트 어설션 중 하나만 있을 수 있으며 둘 다 있을 수는 없습니다.

### `sts:identity_context`로 생성된 ID 강화 IAM 역할 세션
<a name="role_session_sts_identity_context"></a>

ID 강화 역할 세션에 `sts:identity_context`가 포함되어 있으면 직접적으로 호출된 AWS 서비스 는 리소스 권한 부여가 역할 세션에 나타난 사용자를 기반으로 할지, 아니면 역할을 기반으로 할지를 결정합니다. 사용자 기반 권한 부여를 지원하는 AWS 서비스 는 애플리케이션의 관리자에게 사용자 또는 사용자가 멤버인 그룹에 액세스 권한을 할당할 수 있는 제어권을 제공합니다.

AWS 서비스 사용자 기반 권한 부여를 지원하지 않는는를 무시합니다`sts:identity_context`. CloudTrail 로그는 역할이 수행한 모든 작업과 함께 IAM Identity Center 사용자의 userId를 기록합니다. 자세한 내용은 [ID 강화 IAM 역할 세션 로그](#trustedidentitypropagation-identity-enhanced-iam-role-session-logging) 단원을 참조하십시오.

이러한 유형의 자격 증명 강화 역할 세션을 얻기 위해 AWS STS애플리케이션은 요청 파라미터를 사용하여 [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) `ProvidedContexts` 요청에 `sts:identity_context` 필드 값을 제공합니다. `arn:aws:iam::aws:contextProvider/IdentityCenter`를 `ProviderArn`의 값으로 사용합니다.

권한 부여의 작동 방식에 대한 자세한 내용은 수신 설명서를 참조하세요 AWS 서비스.

### `sts:audit_context`로 생성된 ID 강화 IAM 역할 세션
<a name="role_session_sts_audit_context"></a>

과거에는 `sts:audit_context`가 권한 부여 결정을 내리는 데 사용하지 않고 사용자 자격 증명을 AWS 서비스 로깅할 수 있도록 했습니다. 이제 AWS 서비스 는 단일 컨텍스트 - `sts:identity_context`를 사용하여 이를 달성하고 권한 부여 결정을 내릴 수 있습니다. 신뢰할 수 있는 ID 전파의 모든 새 배포에서 `sts:identity_context`를 사용하는 것이 좋습니다.

## ID 강화 IAM 역할 세션 로그
<a name="trustedidentitypropagation-identity-enhanced-iam-role-session-logging"></a>

자격 증명 강화 IAM 역할 세션을 AWS 서비스 사용하여에 요청을 하면 사용자의 IAM Identity Center`userId`가 `OnBehalfOf` 요소의 CloudTrail에 로깅됩니다. 이벤트가 CloudTrail에 기록되는 방식은 AWS 서비스에 따라 다릅니다. 모든 AWS 서비스 항목이 `onBehalfOf` 요소를 기록하지는 않습니다.

다음은 ID 강화 역할 세션을 사용하여 AWS 서비스 에 대한 요청이 CloudTrail에 기록되는 방법의 예입니다.

```
"userIdentity": {
      "type": "AssumedRole",
      "principalId": "AROAEXAMPLE:MyRole",
      "arn": "arn:aws:sts::111111111111:assumed-role/MyRole/MySession",
      "accountId": "111111111111",
      "accessKeyId": "ASIAEXAMPLE",
      "sessionContext": {
        "sessionIssuer": {
            "type": "Role",
            "principalId": "AROAEXAMPLE",
            "arn": "arn:aws:iam::111111111111:role/MyRole",
            "accountId": "111111111111",
            "userName": "MyRole"
        },
        "attributes": {
            "creationDate": "2023-12-12T13:55:22Z",
            "mfaAuthenticated": "false"
        }
    },
    "onBehalfOf": {
        "userId": "11111111-1111-1111-1111-1111111111",
        "identityStoreArn": "arn:aws:identitystore::111111111111:identitystore/d-111111111"
    }
}
```