

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

# IAM Identity Center에 대한 리소스 기반 정책 예시
<a name="iam-auth-access-using-resource-based-policies"></a>

IAM Identity Center와 통합되어 작동하고 [OAuth 2.0](customermanagedapps-saml2-oauth2.md#oidc-concept)을 사용하는 모든 애플리케이션에는 리소스 기반 정책이 필요합니다. 애플리케이션은 고객 관리형 또는 AWS 관리형일 수 있습니다. *애플리케이션 정책*(또는 API의 [ActorPolicy](https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_IamAuthenticationMethod.html#API_IamAuthenticationMethod_Contents))이라고 하는 필수 리소스 기반 정책은 [https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateTokenWithIAM.html](https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateTokenWithIAM.html)과 같은 [IAM 인증 방법 API 작업을 직접 호출할 권한이 있는 IAM 위탁자](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying)를 정의합니다. IAM 인증 방법을 사용하면 IAM 역할 또는 AWS 서비스와 같은 IAM 보안 주체가 IAM 자격 증명을 제시하여 **/token에서 액세스 토큰을 요청하거나 관리하여 IAM Identity Center OIDC 서비스에 인증할 수 있습니까?aws\_iam=t** 엔드포인트.

애플리케이션 정책은 토큰 발급(`CreateTokenWithIAM`) 작업을 관리합니다. 또한이 정책은 토큰 검증(`IntrospectTokenWithIAM`) 및 토큰 취소()를 위해 AWS 관리형 애플리케이션에서만 사용하는 권한 전용 작업을 관리합니다`RevokeTokenWithIAM`. 고객 관리형 애플리케이션의 경우 `CreateTokenWithIAM`을 직접 호출할 권한이 있는 IAM 위탁자를 지정하여 이 정책을 구성합니다. 권한이 있는 위탁자가 이 API 작업을 직접 호출하면 위탁자는 애플리케이션에 대한 액세스 및 새로 고침 토큰을 받습니다.

IAM Identity Center 콘솔을 사용하여 고객 관리형 애플리케이션에 [신뢰할 수 있는 ID 전파](trustedidentitypropagation-overview.md)를 설정하는 경우 애플리케이션 정책을 구성하는 방법에 대한 자세한 내용은 [고객 관리형 OAuth 2.0 애플리케이션 설정](customermanagedapps-trusted-identity-propagation-set-up-your-own-app-OAuth2.md)의 4단계를 참조하세요. 예제 정책은 이번 주제 후반부의 [예제 정책: IAM 역할이 액세스 및 새로 고침 토큰을 생성하도록 허용](#oauth-application-policy-example) 섹션을 참조하세요.

## 정책 요구 사항
<a name="oauth-application-policy-requirements"></a>

정책은 다음 요구 사항을 충족해야 합니다.
+ 정책은 "2012-10-17"로 설정된 `Version ` 요소를 포함해야 합니다.
+ 정책은 하나 이상의 `Statement` 요소를 포함해야 합니다.
+ 각 정책 `Statement`은 `Effect`, `Principal`, `Action`, `Resource` 요소를 포함해야 합니다.

## 정책 요소
<a name="oauth-application-policy-elements"></a>

정책은 다음 요소를 포함해야 합니다.

**버전**  
정책 문서 버전을 지정합니다. 버전을 `2012-10-17`(최신 버전)로 설정합니다.

**명령**  
정책 `Statements`을 포함합니다. 정책은 하나 이상의 `Statement`를 포함해야 합니다.  
각 정책 `Statement`는 다음 요소로 구성됩니다.    
**Effect**  
(필수) 정책 문에서 권한을 허용할지 거부할지를 결정합니다. 유효한 값은 `Allow` 또는 `Deny`입니다.  
**Principal**  
(필수) [보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying)는 정책 설명에 지정된 권한을 갖는 자격 증명입니다. IAM 역할 또는 AWS 서비스 위탁자를 지정할 수 있습니다.  
**작업**  
(필수) 허용하거나 거부할 IAM Identity Center OIDC 서비스 API 작업입니다. 유효한 작업은 다음과 같습니다.  
+ `sso-oauth:CreateTokenWithIAM`: [https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateTokenWithIAM.html](https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateTokenWithIAM.html) API 작업에 해당하는이 작업은 AWS 서비스 역할 또는 사용자와 같은 IAM 엔터티를 사용하여 인증된 승인된 클라이언트 애플리케이션에 대한 액세스 및 새로 고침 토큰을 생성하고 반환할 수 있는 권한을 부여합니다. 이러한 토큰에는 `read:profile` 또는 `write:data`와 같은 권한을 지정하는 정의된 범위가 포함될 수 있습니다.
+ `sso-oauth:IntrospectTokenWithIAM`[권한 전용]: 연결된 범위 및 권한을 포함하여 활성 상태의 OAuth 2.0 액세스 토큰 및 새로 고침 토큰에 대한 정보를 검증하고 검색할 수 있는 권한을 부여합니다. 이 권한은 AWS 관리형 애플리케이션에서만 사용되며 *IAM Identity Center OIDC API 참조*에 문서화되어 있지 않습니다.
+ `RevokeTokenWithIAM `[권한 전용]: OAuth 2.0 액세스 토큰 및 새로 고침 토큰을 철회하여 정상적인 만료 전에 무효화할 수 있는 권한을 부여합니다. 이 권한은 AWS 관리형 애플리케이션에서만 사용되며 *IAM Identity Center OIDC API 참조*에 문서화되어 있지 않습니다.  
**Resource**  
(필수) 이 정책에서 `Resource` 요소의 값은 `"*"`이며, 이는 "이 애플리케이션"을 의미합니다.

 AWS 정책 구문에 대한 자세한 내용은 [AWS IAM 사용 설명서의 IAM 정책 참조](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html)를 참조하세요. ** 

## 예제 정책: IAM 역할이 액세스 및 새로 고침 토큰을 생성하도록 허용
<a name="oauth-application-policy-example"></a>

다음 권한 정책은 워크로드가 수임하는 IAM 역할인 `ExampleAppClientRole`에 액세스 및 새로 고침 토큰을 생성하고 반환할 수 있는 권한을 부여합니다.

```
 1. {
 2.     "Version": "2012-10-17", 		 	 	  
 3.     "Statement": [
 4.         {
 5.             "Sid": "AllowRoleToCreateTokens",
 6.             "Effect": "Allow",
 7.             "Principal": {
 8.                 "AWS": "arn:aws:iam::111122223333:role/ExampleAppClientRole"
 9.             },
10.             "Action": "sso-oauth:CreateTokenWithIAM",
11.             "Resource": "*"
12.         }
13.     ]
14. }
```