

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

# 옵션 2: 애플리케이션이 신뢰 정책에서 허용하는 역할만 수임할 수 있음
<a name="option-2"></a>

이 시나리오에서는 두 인증서가의 AWS Certificate Manager (ACM)에 프로비저닝 AWS Private Certificate Authority 되어 AWS 리소스에 액세스해야 하는 애플리케이션과 공유되었습니다. **애플리케이션 1**은 **역할 1**만 수임할 수 있고 **애플리케이션 2**는 **역할 2**만 수임할 수 있습니다. 역할 신뢰 정책에서 인증서 주체 필드를 조건으로 구성합니다. 이러한 조건을 통해 애플리케이션은 특정 역할만 수임할 수 있습니다. 역할 권한으로 인해 **애플리케이션 1**만 **버킷 1**에 액세스할 수 있고 **애플리케이션 2**만 **버킷 2**에 액세스할 수 있습니다. 다음 이미지는 각 애플리케이션에 있는 액세스를 보여줍니다.

![다른 인증서를 사용하고 특정 역할만 수임할 수 있는 애플리케이션.](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/certificate-based-access-controls/images/option-2-overview.png)


이 옵션에서는 특정 인증서 속성이 충족될 때`AssumeRole`만 허용하도록 신뢰 정책을 구성합니다. 샘플 역할 신뢰 정책은 역할 **1과 역할 ****2**에 대해 다른 특정 인증서 일반 이름(`CN`)을 요구하도록 `Condition` 섹션을 구성하는 방법을 보여줍니다. IAM Roles Anywhere 는 신뢰 앵커 관계를 가지고 있기 때문에 각 애플리케이션은 특정 역할을 수임할 수 있습니다 AWS Private CA. 이 접근 방식은 애플리케이션이 대상 프로필에 연결된 역할을 수임할 수 없으므로 역할 및 데이터에 대한 무단 액세스를 방지하는 데 도움이 됩니다. 예를 들어 비즈니스 데이터를 서로 다른 버킷으로 분리하고, 해당 버킷 중 하나에 대한 액세스만 허용하도록 역할을 구성한 다음, 신뢰 정책에서 인증서 기반 액세스 제어를 사용하여 애플리케이션이 수임할 수 있는 역할을 정의할 수 있습니다.

**역할 1**에 대한 다음 샘플 신뢰 정책에는 인증서 이름이 `application-1.com` 이고 신뢰 앵커 Amazon 리소스 이름(ARN)이 일치하는 경우에만 역할 가정을 허용하는 조건이 있습니다.

```
{
  "Version": "2012-10-17", 		 	 	 		 	 	 
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "rolesanywhere.amazonaws.com"
      },
      "Action": [
        "sts:AssumeRole",
        "sts:SetSourceIdentity",
        "sts:TagSession"
      ],
      "Condition": {
        "StringEquals": {
          "aws:PrincipalTag/x509Subject/CN": "application-1.com"
        },
        "ArnEquals": {
          "aws:SourceArn": [
            "arn:aws:rolesanywhere:<region>:<account-ID>:trust-anchor/<TA_ID>"
          ]
        }
      }
    }
  ]
}
```

**역할 2**에 대한 다음 샘플 신뢰 정책에는 인증서 이름이 `application-2.com` 이고 트러스트 앵커 ARN이 일치하는 경우에만 역할 가정을 허용하는 조건이 있습니다.

```
{
    "Version": "2012-10-17", 		 	 	 		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "rolesanywhere.amazonaws.com"
            },
            "Action": [
                "sts:AssumeRole",
                "sts:SetSourceIdentity",
                "sts:TagSession"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalTag/x509Subject/CN": "application-2.com"
                },
                "ArnEquals": {
                    "aws:SourceArn": [
                        "arn:aws:rolesanywhere:<region>:<account-ID>:trust-anchor/<TA_ID>"
                    ]
                }
            }
        }
    ]
}
```

역할 신뢰 정책 및 이러한 샘플을 수정하는 방법에 대한 자세한 내용은 IAM Roles Anywhere 설명서의 [신뢰 정책을](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/trust-model.html#trust-policy) 참조하세요.

**애플리케이션 1** 및 **애플리케이션 2**에 대한 샘플 역할 및 프로필 정책은이 가이드의 [부록: 샘플 프로필 및 역할 정책](appendix-sample-policies.md) 섹션에 포함되어 있습니다. 