

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

# IAM 정책 검사
<a name="determining-access-iam-policies"></a>

키 정책 및 권한 부여 외에도 [IAM 정책](iam-policies.md)을 사용하여 KMS 키에 대한 액세스를 허용할 수도 있습니다. IAM 정책과 키 정책이 상호 작용하는 방식에 대한 자세한 내용은 [AWS KMS 권한 문제 해결](policy-evaluation.md) 단원을 참조하십시오.

현재 어떤 보안 주체가 IAM 정책을 통해 KMS 키에 액세스할 수 있는지 알아보기 위해, 브라우저 기반의 [IAM 정책 시뮬레이터](https://policysim.aws.amazon.com/) 도구를 사용하거나 IAM API에 요청을 제출할 수 있습니다.

**Contents**
+ [

## IAM 정책 시뮬레이터로 IAM 정책 검사
](#determining-access-iam-policy-simulator)
+ [

## IAM API로 IAM 정책 검사
](#determining-access-iam-api)

## IAM 정책 시뮬레이터로 IAM 정책 검사
<a name="determining-access-iam-policy-simulator"></a>

IAM 정책 시뮬레이터에서 어떤 보안 주체가 IAM 정책을 통해 KMS 키에 액세스할 수 있는지 알아볼 수 있습니다.

**IAM 정책 시뮬레이터를 사용해 KMS 키에 대한 액세스를 파악하려면**

1. 에 로그인 AWS Management Console 한 다음에서 IAM 정책 시뮬레이터를 엽니다[https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/).

1. **사용자, 그룹 및 역할(Users, Groups, and Roles)** 창에서 정책을 시뮬레이션할 사용자, 그룹 또는 역할을 선택합니다.

1. (선택 사항) 시뮬레이션을 생략할 정책 옆 확인란의 선택을 취소합니다. 모든 정책을 시뮬레이션하려면 모든 정책을 선택해 둡니다.

1. [**Policy Simulator**] 창에서 다음과 같이 실행합니다.

   1. [**Select service**]에서 [**Key Management Service**]를 선택합니다.

   1. 특정 AWS KMS 작업을 시뮬레이션하려면 **작업 선택**에서 시뮬레이션할 작업을 선택합니다. 모든 AWS KMS 작업을 시뮬레이션하려면 **모두 선택을** 선택합니다.

1. (선택 사항) 정책 시뮬레이터는 기본적으로 모든 KMS 키에 대한 액세스를 시뮬레이션합니다. 특정 KMS 키에 대한 액세스를 시뮬레이션하려면 **시뮬레이션 설정(Simulation Settings)**을 선택한 후 시뮬레이션할 KMS 키의 Amazon 리소스 이름(ARN)을 입력합니다.

1. **Run Simulation(시뮬레이션 실행)**을 선택합니다.

[**Results**] 섹션에서 시뮬레이션 결과를 볼 수 있습니다. AWS 계정의 모든 사용자, 그룹, 역할에 대해 2\$16단계를 반복합니다.

## IAM API로 IAM 정책 검사
<a name="determining-access-iam-api"></a>

IAM API를 사용해 IAM 정책을 프로그래밍 방식으로 검사할 수 있습니다. 다음 절차는 이 방법의 개요를 제공합니다.

1. 키 정책에 보안 주체로 AWS 계정 나열된 각에 대해(즉, 형식으로 지정된 각 [AWS 계정 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-accounts): `"Principal": {"AWS": "arn:aws:iam::111122223333:root"}`) IAM API의 [ListUsers](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html) 및 [ListRoles](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRoles.html) 작업을 사용하여 계정의 모든 사용자와 역할을 가져옵니다.

1. 목록에 있는 각 사용자 및 역할에 대해 IAM API에서 [SimulatePrincipalPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html) 작업을 사용하여 다음 파라미터를 전달합니다.
   + `PolicySourceArn`에 대해, 목록에서 사용자나 역할의 Amazon 리소스 이름(ARN)을 지정합니다. `SimulatePrincipalPolicy` 요청별로 한 `PolicySourceArn`만 지정할 수 있으므로, 이 작업을 목록의 각 사용자 및 역할마다 한 번씩 여러 차례 호출해야 합니다.
   + `ActionNames` 목록에서 시뮬레이션할 모든 AWS KMS API 작업을 지정합니다. 모든 AWS KMS API 작업을 시뮬레이션하려면를 사용합니다`kms:*`. 개별 AWS KMS API 작업을 테스트하려면 각 API 작업 앞에 "`kms:`", 예: "`kms:ListKeys`"를 붙입니다. AWS KMS API 작업의 목록을 보려면 *AWS Key Management Service API 참조*의 [작업](https://docs.aws.amazon.com/kms/latest/APIReference/API_Operations.html)을 참조하세요.
   + (선택 사항) 사용자나 역할이 특정 KMS 키에 액세스할 수 있는지 판단하려면 `ResourceArns` 파라미터를 이용해 KMS 키의 Amazon 리소스 이름(ARN) 목록을 지정합니다. 사용자나 역할이 모든 KMS 키에 액세스할 수 있는지 판단하기 위해 `ResourceArns` 파라미터를 생략하세요.

IAM은 각각의 `SimulatePrincipalPolicy` 요청에 대해 `allowed`, `explicitDeny`, 또는 `implicitDeny`의 평가 결정으로 응답합니다. 의 평가 결정이 포함된 각 응답`allowed`에 대해 응답에는 허용되는 특정 AWS KMS API 작업의 이름이 포함됩니다. 평가에서 사용된 KMS 키의 ARN도 포함되어 있습니다.