IAM 정책 시뮬레이터로 IAM 정책 테스트 - AWS Identity and Access Management

IAM 정책 시뮬레이터로 IAM 정책 테스트

IAM 정책의 사용 방식과 이유에 대한 자세한 정보는 IAM의 정책 및 권한 섹션을 참조하세요.

https://policysim.aws.amazon.com/에서 IAM 정책 시뮬레이터 콘솔에 액세스할 수 있습니다.

중요

정책 시뮬레이터 결과는 실제 AWS 환경과 다를 수 있습니다. 정책 시뮬레이터를 사용하여 테스트 후 정책을 실제 AWS 환경과 비교하여 원하는 결과가 얻었는지 확인하는 것이 좋습니다. 자세한 내용은 IAM 정책 시뮬레이터의 원리 섹션을 참조하세요.

IAM 정책 시뮬레이터를 사용하여 ID 기반 정책 및 IAM 권한 경계를 테스트하고 문제를 해결할 수 있습니다. 다음은 정책 시뮬레이터로 수행할 수 있는 몇 가지 일반적인 사항입니다.

  • AWS 계정의 IAM 사용자, 사용자 그룹 또는 역할에 연결된 ID 기반 정책을 테스트합니다. 사용자, 사용자 그룹 또는 역할에 추가된 정책이 다수일 때는 모든 정책을 테스트하거나, 테스트할 정책만 따로 선택할 수 있습니다. 특정 리소스에 대해 선택한 정책에서 어떤 작업을 허용하거나 거부하는지 테스트할 수 있습니다.

  • IAM 엔터티 권한 경계의 테스트 및 문제 해결 효과 한 번에 하나의 권한 경계만 시뮬레이션할 수 있습니다.

  • Amazon S3 버킷, Amazon SQS 대기열, Amazon SNS 주제 또는 Amazon S3 Glacier 볼트와 같은 AWS 리소스에 연결된 IAM 사용자에 대한 리소스 기반 정책의 영향을 테스트합니다. IAM 사용자를 위해 정책 시뮬레이터에서 리소스 기반 정책을 사용하려면 시뮬레이션에 리소스를 포함해야 합니다. 또한 해당 리소스의 정책을 시뮬레이션에 포함하려면 확인란을 선택해야 합니다.

    참고

    IAM 역할에는 리소스 기반 정책의 시뮬레이션이 지원되지 않습니다.

  • AWS 계정이 AWS Organizations의 조직에 속한 경우, 서비스 제어 정책(SCP)이 IAM 기반 정책에 미치는 영향을 테스트할 수 있습니다.

    참고

    정책 시뮬레이터는 조건이 있는 SCP를 평가하지 않습니다.

  • 사용자, 사용자 그룹 또는 역할에 아직 추가되지 않은 새로운 ID 기반 정책을 정책 시뮬레이터에 입력 또는 복사하여 테스트합니다. 이는 시뮬레이션에서만 사용되며 저장되지 않습니다. 리소스 기반 정책을 시뮬레이터에 입력하거나 복사하지 마세요.

  • 선택한 서비스, 작업 및 리소스로 ID 기반 정책을 테스트합니다. 예를 들어 정책이 특정 버킷의 Amazon S3 서비스에서 주체가 ListAllMyBuckets, CreateBucketDeleteBucket 작업을 수행할 수 있도록 허용하는지 확인하기 위해 테스트할 수 있습니다.

  • 테스트할 정책에서 키가 지정되어 있는 경우에는 테스트할 정책의 Condition 요소에 포함된 IP 주소나 날짜 같은 콘텍스트 키를 제공하여 실제 시나리오를 시뮬레이션합니다.

    참고

    시뮬레이션의 ID 기반 정책에 태그를 명시적으로 확인하는 Condition 요소가 없는 경우 정책 시뮬레이터는 입력으로 제공된 태그를 시뮬레이션하지 않습니다.

  • ID 기반 정책에서 특정 리소스 또는 작업에 대한 액세스를 허용하거나 거부하는 특정 문을 식별합니다.

IAM 정책 시뮬레이터의 원리

정책 시뮬레이터는 ID 기반 정책의 문과 시뮬레이션 중 사용자가 제공하는 입력을 평가합니다. 정책 시뮬레이터 결과는 실제 AWS 환경과 다를 수 있습니다. 정책 시뮬레이터를 사용하여 테스트 후 정책을 실제 AWS 환경과 비교하여 원하는 결과가 얻었는지 확인하는 것이 좋습니다.

정책 시뮬레이터는 라이브 AWS 환경과 다음과 같은 점에서 다릅니다.

  • 정책 시뮬레이터는 실제로 AWS 서비스를 요청하는 것은 아니기 때문에 실행 중인 AWS 환경을 변경하지 않고 요청을 안전하게 테스트할 수 있습니다. 정책 시뮬레이터는 프로덕션에서 실제 컨텍스트 키 값을 고려하지 않습니다.

  • 정책 시뮬레이터는 선택한 작업 중 실행 중인 작업은 시뮬레이션하지 않기 때문에 시뮬레이션된 요청에 대한 응답을 보고하지 않습니다. 요청된 작업이 허용되는지 아니면 거부되는지 여부만 결과로 반환됩니다.

  • 정책 시뮬레이터에서 정책을 편집할 경우 이러한 변경은 정책 시뮬레이터에만 영향을 줍니다. AWS 계정의 해당 정책은 변함없이 그대로 유지됩니다.

  • 조건이 있는 서비스 제어 정책(SCP)은 테스트할 수 없습니다.

  • 정책 시뮬레이터는 크로스 계정 액세스를 위해 IAM 역할 및 사용자에 대한 시뮬레이션을 지원하지 않습니다.

참고

IAM 정책 시뮬레이터는 권한 부여를 위해 글로벌 조건 키를 지원하는 서비스를 결정하지 않습니다. 예를 들어, 정책 시뮬레이터는 서비스가 aws:TagKeys를 지원하지 않는다는 것을 식별하지 못합니다.

IAM 정책 시뮬레이터를 사용하는 데 필요한 권한

정책 시뮬레이터 콘솔 또는 정책 시뮬레이터 API를 사용하여 정책을 테스트할 수 있습니다. 기본적으로 콘솔 사용자는 사용자, 사용자 그룹 또는 역할에 아직 연결되지 않은 정책을 정책 시뮬레이터에 입력하거나 복사하여 테스트할 수 있습니다. 이러한 정책은 시뮬레이션에만 사용되며 민감한 정보를 공개하지 않습니다. API 사용자가 연결되지 않은 정책을 테스트하려면 권한이 있어야 합니다. 콘솔 또는 API 사용자가 AWS 계정의 IAM 사용자, 사용자 그룹 또는 역할에 연결된 정책을 테스트하도록 허용할 수 있습니다. 이렇게 하려면 해당 정책을 검색할 수 있는 권한을 제공해야 합니다. 리소스 기반 정책을 테스트하려면 사용자가 리소스의 정책을 검색할 수 있는 권한을 보유해야 합니다.

사용자가 시뮬레이션할 수 있는 콘솔 및 API 정책의 예시는 예제 정책 AWS Identity and Access Management(IAM) 섹션을 참조하세요.

정책 시뮬레이터 콘솔을 사용하는 데 필요한 권한

사용자가 AWS 계정의 IAM 사용자, 사용자 그룹 또는 역할에 연결된 정책을 테스트하도록 허용할 수 있습니다. 이렇게 하려면 사용자에게 해당 정책을 검색할 수 있는 권한을 제공해야 합니다. 리소스 기반 정책을 테스트하려면 사용자가 리소스의 정책을 검색할 수 있는 권한을 보유해야 합니다.

사용자, 사용자 그룹 또는 역할에 연결된 정책에 대해 정책 시뮬레이터 콘솔의 사용을 허용하는 정책 예는 IAM: 정책 시뮬레이터 콘솔 액세스 섹션을 참조하세요.

특정 경로를 지닌 사용자에 대해서만 정책 시뮬레이터 콘솔의 사용을 허용하는 정책의 예시는 IAM: 사용자 경로를 바탕으로 정책 시뮬레이터 콘솔 액세스 섹션을 참조하세요.

한 가지 유형의 엔터티에 대해서만 정책 시뮬레이터 콘솔의 사용을 허용하는 정책을 만들려면 다음의 절차에 따릅니다.

콘솔 사용자가 사용자를 위한 정책을 시뮬레이션하도록 허용하는 방법

정책에 다음의 작업을 포함시킵니다.

  • iam:GetGroupPolicy

  • iam:GetPolicy

  • iam:GetPolicyVersion

  • iam:GetUser

  • iam:GetUserPolicy

  • iam:ListAttachedUserPolicies

  • iam:ListGroupsForUser

  • iam:ListGroupPolicies

  • iam:ListUserPolicies

  • iam:ListUsers

콘솔 사용자가 사용자 그룹을 위한 정책을 시뮬레이션하도록 허용하는 방법

정책에 다음의 작업을 포함시킵니다.

  • iam:GetGroup

  • iam:GetGroupPolicy

  • iam:GetPolicy

  • iam:GetPolicyVersion

  • iam:ListAttachedGroupPolicies

  • iam:ListGroupPolicies

  • iam:ListGroups

콘솔 사용자가 역할에 대한 정책을 시뮬레이션하도록 허용하는 방법

정책에 다음의 작업을 포함시킵니다.

  • iam:GetPolicy

  • iam:GetPolicyVersion

  • iam:GetRole

  • iam:GetRolePolicy

  • iam:ListAttachedRolePolicies

  • iam:ListRolePolicies

  • iam:ListRoles

리소스 기반 정책을 테스트하려면 사용자가 리소스의 정책을 검색할 수 있는 권한을 보유해야 합니다.

콘솔 사용자가 Amazon S3 버킷에서 리소스 기반 정책을 테스트하도록 허용하는 방법

정책에 다음의 작업을 포함시킵니다.

  • s3:GetBucketPolicy

예를 들어, 다음 정책에서 이 작업을 사용하여 특정 Amazon S3 버킷에서 콘솔 사용자가 리소스 기반 정책을 시뮬레이션하도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetBucketPolicy", "Resource":"arn:aws:s3:::bucket-name/*" } ] }

API 정책 시뮬레이터를 사용하는 데 필요한 권한

정책 시뮬레이터 API 작업 GetContextKeyForCustomPolicySimulateCustomPolicy는 아직 사용자, 사용자 그룹 또는 역할에 연결되지 않은 정책을 테스트하도록 허용합니다. 이러한 정책을 테스트하려면 정책을 문자열로 API에 전달합니다. 이러한 정책은 시뮬레이션에만 사용되며 민감한 정보를 공개하지 않습니다. API를 사용하여 AWS 계정의 IAM 사용자, 사용자 그룹 또는 역할에 연결된 정책을 테스트할 수도 있습니다. 이렇게 하려면 사용자에게 GetContextKeyForPrincipalPolicySimulatePrincipalPolicy를 호출할 수 있는 권한을 제공해야 합니다.

현재 AWS 계정에 연결된 정책 및 연결되지 않은 정책에 대해 정책 시뮬레이터 API를 사용하도록 허용하는 예제 정책을 보려면 IAM: 정책 시뮬레이터 API에 액세스 섹션을 참조하세요.

한 가지 유형의 정책에 대해서만 정책 시뮬레이터 API의 사용을 허용하는 정책을 만들려면 다음의 절차에 따릅니다.

API 사용자가 API에 문자열로 직접 전달되는 정책을 시뮬레이션하도록 허용하는 방법

정책에 다음의 작업을 포함시킵니다.

  • iam:GetContextKeysForCustomPolicy

  • iam:SimulateCustomPolicy

API 사용자로 하여금 IAM 사용자, 사용자 그룹 또는 역할에 연결된 정책을 시뮬레이션하도록 하는 방법

정책에 다음의 작업을 포함시킵니다.

  • iam:GetContextKeysForPrincipalPolicy

  • iam:SimulatePrincipalPolicy

예를 들어, Alice라는 사용자에게 할당된 정책을 시뮬레이션할 수 있는 권한을 Bob이라는 사용자에게 부여하려면, Bob에게 arn:aws:iam::777788889999:user/alice라는 리소스에 액세스할 수 있는 권한을 부여해야 합니다.

특정 경로를 지닌 사용자에 대해서만 정책 시뮬레이터 API의 사용을 허용하는 정책의 예시는 IAM: 사용자 경로를 바탕으로 정책 시뮬레이터 API 액세스 섹션을 참조하세요.

IAM 정책 시뮬레이터 사용(콘솔)

기본적으로 사용자는 사용자, 사용자 그룹 또는 역할에 아직 연결되지 않은 정책을 정책 시뮬레이터 콘솔에 입력하거나 복사하여 테스트할 수 있습니다. 이러한 정책은 시뮬레이션에만 사용되며 민감한 정보를 공개하지 않습니다.

사용자, 사용자 그룹 또는 역할에 연결되지 않은 정책을 테스트하려면(콘솔)
  1. https://policysim.aws.amazon.com/에서 IAM 정책 시뮬레이터 콘솔을 엽니다.

  2. 페이지의 상단에 있는 Mode:(모드:) 메뉴에서 New Policy(새 정책)을 선택합니다.

  3. Policy Sandbox(정책 샌드박스)에서 새 정책 생성을 선택합니다.

  4. 정책 시뮬레이터에 입력하거나 복사하여 붙여 넣고, 다음 단계의 설명에 따라 정책 시뮬레이터를 사용합니다.

IAM 정책 시뮬레이터 콘솔을 사용할 권한이 있으면 정책 시뮬레이터를 사용하여 IAM 사용자, 사용자 그룹, 역할 또는 리소스 정책을 테스트할 수 있습니다.

사용자, 사용자 그룹 또는 역할에 연결된 정책을 테스트하려면(콘솔)
  1. https://policysim.aws.amazon.com/에서 IAM 정책 시뮬레이터 콘솔을 엽니다.

    참고

    IAM 사용자로 정책 시뮬레이터에 로그인하려면 고유의 로그인 URL을 사용하여 AWS Management Console에 로그인합니다. 그런 다음 https://policysim.aws.amazon.com/으로 이동합니다. IAM 사용자 권한의 로그인에 대한 자세한 정보는 IAM 사용자가 AWS에 로그인하는 방법 섹션을 참조하세요.

    정책 시뮬레이터가 Existing Policies(기존 정책) 모드로 열리며 Users, Groups, and Roles(사용자, 그룹 및 역할) 아래 계정에 속한 IAM 사용자가 표시됩니다.

  2. 작업에 적합한 옵션을 선택합니다.

    테스트 대상 수행할 작업:
    사용자에게 연결된 정책 사용자, 그룹 및 역할(Users, Groups, and Roles) 목록에서 사용자(Users)를 선택합니다. 그런 다음 사용자를 선택합니다.
    사용자 그룹에 연결된 정책 사용자, 그룹 및 역할(Users, Groups, and Roles) 목록에서 그룹(Groups)을 선택합니다. 그런 다음 사용자 그룹을 선택합니다.
    역할에 연결된 정책 사용자, 그룹 및 역할(Users, Groups, and Roles) 목록에서 역할(Roles)을 선택합니다. 그런 다음 역할을 선택합니다.
    리소스에 연결된 정책 단계 9 섹션을 참조하세요.
    사용자, 사용자 그룹 또는 역할에 대한 사용자 지정 정책 새 정책 생성을 선택합니다. 새 정책 창에 정책을 입력하거나 붙여넣은 후 적용을 선택합니다.
    도움말

    사용자 그룹에 연결된 정책을 테스트하려면 IAM 정책 시뮬레이터를 IAM 콘솔에서 직접 실행한 후 탐색 창에서 사용자 그룹을 선택합니다. 정책을 테스트하려는 그룹 이름을 선택한 후 권한 탭을 선택합니다. 시뮬레이션을 선택합니다.

    사용자에게 연결된 고객 관리형 정책을 테스트하려면 탐색 창에서 사용자를 선택합니다. 정책을 테스트하고자 하는 사용자의 이름을 선택합니다. 그런 다음 권한 탭을 선택하고 테스트할 정책을 확장합니다. 오른쪽 맨 끝에서 Simulate Policy(정책 시뮬레이션)를 선택합니다. IAM 정책 시뮬레이터가 새 창으로 열리면서 선택한 정책을 정책 창에 표시합니다.

  3. (선택 사항) 계정이 AWS Organizations의 조직 멤버인 경우 AWS Organizations SCP 옆에 있는 확인란을 선택하여 시뮬레이션 평가에 SCP를 포함시킬 수 있습니다. SCP는 조직 또는 조직 단위(OU)에 최대 권한을 지정하는 JSON 정책입니다. SCP는 멤버 계정의 엔터티에 대한 권한을 제한합니다. SCP가 서비스 또는 작업을 차단하는 경우 해당 계정에 있는 어떤 엔터티도 해당 서비스에 액세스하거나 해당 작업을 수행할 수 없습니다. 이는 관리자가 IAM 또는 리소스 정책을 통해 해당 서비스 또는 작업에 명시적으로 권한을 부여하는 경우에도 해당합니다.

    계정이 조직의 멤버가 아닌 경우 확인란이 나타나지 않습니다.

  4. (선택 사항) IAM 엔터티(사용자 또는 역할. 사용자 그룹은 제외)의 권한 경계로 설정된 정책을 테스트할 수 있습니다. 현재 엔터티에 대해 권한 경계 정책이 설정되어 있는 경우 정책 창에 표시됩니다. 한 엔터티에 대해 권한 경계 하나만 설정할 수 있습니다. 다른 권한 경계를 테스트하려면 사용자 지정 권한 경계를 만들면 됩니다. 이렇게 하려면 새 정책 생성을 선택합니다. 새 정책 창이 열립니다. 메뉴에서 사용자 지정 IAM 권한 경계 정책을 선택합니다. 새 정책의 이름을 입력하고 아래 공백에 정책을 입력하거나 복사합니다. 적용을 선택하여 정책을 저장합니다. 그런 다음 뒤로를 선택하여 원래 정책 창으로 돌아갑니다. 시뮬레이션에 사용할 권한 경계 옆의 확인란을 선택합니다.

  5. (선택 사항) 사용자, 사용자 그룹 또는 역할에 연결된 정책의 하위 집합만 테스트할 수 있습니다. 이렇게 하려면 정책 창에서 제외할 각 정책 옆에 있는 확인란의 선택을 취소합니다.

  6. Policy Simulator(정책 시뮬레이터)에서 Select service(서비스 선택)를 선택한 후 테스트할 서비스를 선택합니다. 그런 다음 Select actions(작업 선택)을 선택하고 테스트할 작업을 한 개 이상 선택합니다. 메뉴에는 한 번에 한 서비스에 대해 가능한 선택만 표시되지만 선택한 모든 서비스와 작업이 Action Settings and Results(작업 설정 및 결과)에 나타납니다.

  7. (선택 사항) 단계 2단계 5에서 선택하는 정책 중 하나라도 AWS전역 조건 키를 지닌 조건을 포함하는 경우, 해당 키에 대한 값을 제공합니다. 글로벌 설정 섹션을 확장하고 표시된 키 이름의 값을 입력하여 키에 대한 값을 제공할 수 있습니다.

    주의

    조건 키의 값을 비워 놓으면 해당 키가 시뮬레이션 중에 무시됩니다. 이로 인해 오류가 발생하고 시뮬레이션이 실행되지 않는 경우가 있습니다. 또한 시뮬레이션은 실행되지만 결과를 신뢰할 수 없는 경우도 있습니다. 이 경우 조건 키에 대한 값이나 변수를 포함하는 실제 조건과 시뮬레이션이 일치하지 않습니다.

  8. (선택 사항) 선택한 각 작업은 시뮬레이션을 실제로 실행할 때까지 권한 열에서 시뮬레이트되지 않음과 함께 동작 설정 및 결과에 나타납니다. 시뮬레이션을 실행하기 전에 리소스를 포함하는 각 작업을 구성할 수 있습니다. 특정 시나리오에 맞게 개별 작업을 구성하려면 화살표를 선택하여 작업 행을 확장합니다. 작업이 리소스 수준 권한을 지원할 경우 액세스를 테스트하려는 특정 리소스의 Amazon 리소스 이름(ARN)을 입력할 수 있습니다. 기본적으로 각 리소스는 와일드카드(*)로 설정됩니다. 또한 임의의 조건 콘텍스트 키에 대한 값을 지정할 수 있습니다. 앞에서도 설명했듯이 값이 비어 있는 키는 무시되며, 이로 인해 시뮬레이션이 실패하거나 신뢰할 수 없는 결과가 반환될 수 있습니다.

    1. 작업 이름 옆에 있는 화살표를 선택하여 각 행을 확장하고 해당 시나리오에 맞게 작업을 정확하게 시뮬레이션하는 데 필요한 추가 정보를 구성합니다. 작업에 리소스 수준 권한이 필요할 경우 액세스를 시뮬레이션하려는 특정 리소스의 Amazon 리소스 이름(ARN)을 입력할 수 있습니다. 기본적으로 각 리소스는 와일드카드(*)로 설정됩니다.

    2. 작업이 리소스 수준 권한을 지원하지만 그러한 권한이 필요하지 않을 경우 리소스 추가를 선택하여 시뮬레이션에 추가하려는 리소스 유형을 선택합니다.

    3. 선택한 정책이 해당 작업의 서비스에 대한 콘텍스트 키를 참조하는 Condition 요소를 포함할 경우 해당 키 이름이 작업 아래에 표시됩니다. 지정한 리소스에 대한 해당 작업의 시뮬레이션 중에 사용할 값을 지정할 수 있습니다.

    여러 리소스 유형 그룹이 필요한 작업

    일부 작업은 서로 다른 환경에서 여러 리소스 유형이 필요합니다. 리소스 유형의 각 그룹은 시나리오와 관련이 있습니다. 이 중 하나가 시뮬레이션에 적용될 경우 리소스를 선택하면 정책 시뮬레이터가 해당 시나리오에 적합한 리소스 유형을 필요로 합니다. 다음 목록에는 지원되는 각 시나리오 옵션과 시뮬레이션을 실행하기 위해 정의해야 하는 리소스가 나와 있습니다.

    다음의 Amazon EC2 시나리오 각각에 대해 instance, image, security-group 리소스를 지정해야 합니다. 시나리오에 EBS 볼륨이 포함될 경우에는 해당 volume을 리소스로 지정해야 합니다. Amazon EC2 시나리오에 Virtual Private Cloud(VPC)가 포함될 경우에는 network-interface 리소스를 제공해야 합니다. IP 서브넷이 포함될 경우에는 subnet 리소스를 지정해야 합니다. Amazon EC2 시나리오 옵션에 대한 자세한 내용은 Amazon EC2 사용 설명서지원되는 플랫폼을 참조하세요.

    • EC2-VPC-InstanceStore

      인스턴스, 이미지, 보안 그룹, 네트워크 인터페이스

    • EC2-VPC-InstanceStore-Subnet

      인스턴스, 이미지, 보안 그룹, 네트워크 인터페이스, 서브넷

    • EC2-VPC-EBS

      인스턴스, 이미지, 보안 그룹, 네트워크 인터페이스, 볼륨

    • EC2-VPC-EBS-Subnet

      인스턴스, 이미지, 보안 그룹, 네트워크 인터페이스, 서브넷, 볼륨

  9. (선택 사항) 시뮬레이션에 리소스 기반 정책을 포함하려면 먼저 해당 리소스에 대해 시뮬레이션하려는 작업을 단계 6에서 선택해야 합니다. 선택한 작업의 행을 확장하고 시뮬레이션하려는 정책을 포함하는 리소스의 ARN을 입력합니다. 그런 다음 ARN 텍스트 상자 옆의 리소스 정책 포함(Include Resource Policy)을 선택합니다. IAM 정책 시뮬레이터는 현재, Amazon S3(리소스 기반 정책만 해당. ACL은 현재 지원되지 않음), Amazon SQS, Amazon SNS 및 잠겨 있지 않은 S3 Glacier 볼트(잠겨 있는 볼트는 현재 지원되지 않음) 서비스의 리소스 기반 정책만 지원합니다.

  10. 상단 오른쪽 모서리 부분에서 Run Simulation(시뮬레이션 실행)을 선택합니다.

    동작 설정 및 결과 행의 각 권한 열에 지정된 리소스에 대한 해당 작업의 시뮬레이션 결과를 표시합니다.

  11. 정책에서 작업을 명시적으로 허용하거나 거부한 문을 보려면 권한 열의 N개 일치하는 문 링크를 선택하여 행을 확장합니다. Show statement(문 표시) 링크를 선택합니다. 정책 창에 해당 정책이 표시되고 시뮬레이션 결과에 영향을 준 문이 강조 표시됩니다.

    참고

    작업이 암묵적으로 거부됨(즉, 명시적으로 허용되지 않기 때문에 작업이 거부된 경우)인 경우 나열(List)문 표시(Show statement) 옵션은 표시되지 않습니다.

IAM 정책 시뮬레이터 콘솔 메시지 문제 해결

다음 표에는 IAM 정책 시뮬레이터 사용 시 나타날 수 있는 정보 메시지와 경고 메시지가 나와 있습니다. 그 밖에 문제 해결에 필요한 단계도 나와 있습니다.

메시지 문제 해결 단계
This policy has been edited. Changes will not be saved to your account.

작업이 필요하지 않음

이것은 정보 메시지입니다. IAM 정책 시뮬레이터에서 기존 정책을 편집하더라도 AWS 계정에서는 변경 사항이 적용되지 않습니다. 정책 시뮬레이터에서는 테스트 목적으로만 정책을 변경할 수 있습니다.

Cannot get the resource policy. 사유: 상세 오류 메시지 요청된 리소스 기반 정책에 정책 시뮬레이터가 액세스할 수 없습니다. 지정된 리소스 ARN이 정확하며, 시뮬레이션을 실행하는 사용자가 리소스의 정책을 읽을 수 있는 권한이 있는지 확인하세요.
One or more policies require values in the simulation settings. The simulation might fail without these values.

이 메시지는 테스트하려는 정책에 포함되어 있는 조건 키 또는 변수 값을 Simulation Settings(시뮬레이션 설정)에 입력하지 않은 경우 나타납니다.

이 메시지를 닫으려면 Simulation Settings(시뮬레이션 설정)를 선택한 다음 각 조건 키 또는 변수에 대한 값을 입력합니다.

You have changed policies. These results are no longer valid.

이 메시지는 결과가 Results 창에 표시되는 중에 선택한 정책을 변경하였을 때 나타납니다. Results 창에 표시되는 결과는 동적으로 업데이트되지 않습니다.

이 메시지를 닫으려면 시뮬레이션 실행을 다시 선택하여 정책 창에서 변경한 내용을 기반으로 새로운 시뮬레이션 결과를 표시합니다.

The resource you typed for this simulation does not match this service.

이 메시지는 현재 시뮬레이션에서 선택한 서비스와 일치하지 않는 Amazon 리소스 이름(ARN)을 Simulation Settings(시뮬레이션 설정) 창에 입력했을 때 나타납니다. 예를 들어, Amazon DynamoDB 리소스의 ARN을 지정하고 시뮬레이션할 서비스로 Amazon Redshift를 선택하면 이 메시지가 나타납니다.

이 메시지를 닫으려면 다음 중 한 가지를 실행합니다.

  • Simulation Settings(시뮬레이션 설정) 창의 상자에서 ARN을 삭제합니다.

  • Simulation Settings(시뮬레이션 설정)에서 지정한 ARN과 일치하는 서비스를 선택합니다.

이 작업은 Amazon S3 ACL 또는 S3 Glacier 볼트 잠금 정책 같은 리소스 기반 정책 외에 특수 액세스 제어 방식을 지원하는 서비스에 속합니다. The policy simulator does not support these mechanisms, so the results can differ from your production environment.

작업이 필요하지 않음

이것은 정보 메시지입니다. 현재 버전에서 정책 시뮬레이터는 사용자와 사용자 그룹에 연결된 정책을 평가하며,Amazon S3, Amazon SQS, Amazon SNS, S3 Glacier에 대한 리소스 기반 정책을 평가할 수 있습니다. 정책 시뮬레이터가 다른 AWS 서비스에서 지원하는 액세스 제어 방식을 모두 지원하는 것은 아닙니다.

DynamoDB FGAC is currently not supported.

작업이 필요하지 않음

이 정보 메시지는 세분화된 액세스 제어를 가리킵니다. 세분화된 액세스 제어는 IAM 정책 조건을 사용하여 DynamoDB 테이블 및 인덱스의 개별 데이터 항목과 속성에 액세스할 수 있는 사용자를 결정하는 기능입니다. 또한 이러한 테이블 및 인덱스에서 수행할 수 있는 작업을 나타내기도 합니다. 현재 버전의 IAM 정책 시뮬레이터는 이 유형의 정책 조건을 지원하지 않습니다. DynamoDB 세분화된 액세스 제어에 대한 자세한 정보는 DynamoDB에 대한 세분화된 액세스 제어를 참조하세요.

You have policies that do not comply with the policy syntax. 정책 검증을 사용해 정책에 대한 권장 사항 업데이트를 검토하고 수락할 수 있습니다.

이 메시지는 IAM 정책 문법을 위반하는 정책이 있는 경우 정책 목록 상단에 나타납니다. 이러한 정책을 시뮬레이션하려면 IAM 정책 검증의 정책 검증 옵션을 검토하여 해당 정책을 식별하고 수정합니다.

This policy must be updated to comply with the latest policy syntax rules.

이 메시지는 IAM 정책 문법을 위반하는 정책이 있는 경우에 표시됩니다. 이러한 정책을 시뮬레이션하려면 IAM 정책 검증의 정책 검증 옵션을 검토하여 해당 정책을 식별하고 수정합니다.

IAM 정책 시뮬레이터의 사용(AWS CLI 및 AWS API)

정책 시뮬레이터 명령어는 다음의 2가지 작업을 수행하는 데 일반적으로 API 작업 호출이 필요합니다.

  1. 정책을 평가하고 정책이 참조하는 콘텍스트 키 목록을 반환합니다. 어떤 콘텍스트 키가 참조되는지 알아야 다음 단계에서 콘텍스트 키에 값을 제공할 수 있습니다.

  2. 시뮬레이션 중에 사용되는 작업, 리소스, 콘텍스트 키의 목록을 제공하여 정책을 시뮬레이션합니다.

보안 상의 이유로 API 작업은 2개의 그룹으로 나뉘어 있습니다.

두 경우 모두 API 작업은 1개 이상의 정책들이 작업 및 리소스 목록에 미치는 영향을 시뮬레이션합니다. 각 작업은 각 리소스와 짝을 이루고, 시뮬레이션은 정책이 리소스에 대한 작업을 허용 또는 거부하는지 여부를 결정합니다. 또한, 정책이 참조하는 모든 콘텍스트 키에 대한 값을 제공할 수 있습니다. 정책이 참조하는 콘텍스트 키 목록은 GetContextKeysForCustomPolicy 또는 GetContextKeysForPrincipalPolicy를 호출하여 확인할 수 있습니다. 콘텍스트 키에 대한 값을 제공하지 않는다 해도 시뮬레이션은 여전히 실행되고 있지만, 정책 시뮬레이터가 평가 시에 컨텍스트 키를 포함할 수 없기 때문에 그 결과를 신뢰하지 못할 수 있습니다.

조컨 키 목록을 확인하려면(AWS CLI, AWS API)

다음을 사용하여 정책 목록을 평가하고, 정책에 사용된 콘텍스트 키 목록을 반환합니다.

IAM 정책을 시뮬레이션하려면(AWS CLI, AWS API)

다음을 통해 IAM 정책을 시뮬레이션하여 사용자의 유효 권한을 확인합니다.