

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

# 별칭에 대한 액세스 제어
<a name="alias-access"></a>

별칭을 만들거나 변경하면 별칭 및 연결된 KMS 키에 영향을 줍니다. 따라서 별칭을 관리하는 보안 주체는 별칭과 영향을 받는 모든 KMS 키에 대해 별칭 작업을 호출할 수 있는 권한이 있어야 합니다. [키 정책](key-policies.md), [IAM 정책](iam-policies.md) 및 [권한 부여](grants.md)를 사용해 이러한 권한을 제공할 수 있습니다.

**참고**  
보안 주체에 태그와 별칭을 관리할 수 있는 권한을 부여할 때는 주의해야 합니다. 태그나 별칭을 변경하면 고객 관리형 키의 권한을 허용하거나 거부할 수 있습니다. 자세한 내용은 [에 대한 ABAC AWS KMS](abac.md) 및 [별칭을 사용하여 KMS 키에 대한 액세스 제어](alias-authorization.md) 섹션을 참조하세요.

모든 AWS KMS 작업에 대한 액세스 제어에 대한 자세한 내용은 섹션을 참조하세요[권한 참조](kms-api-permissions-reference.md).

별칭을 만들고 관리할 수 있는 권한은 다음과 같습니다.

## kms:CreateAlias
<a name="alias-access-create"></a>

별칭을 만들려면 보안 주체는 별칭과 연결된 KMS 키 모두에 대해 다음 권한이 필요합니다.
+ 별칭에 대한 `kms:CreateAlias`. 별칭을 생성할 수 있는 보안 주체에 연결된 IAM 정책에서 이 권한을 제공합니다.

  다음 예제 정책 설명은 `Resource` 요소의 특정 별칭을 지정합니다. 그러나 여러 별칭 ARN을 나열하거나 ‘test\$1’와 같은 별칭 패턴을 지정할 수 있습니다. 보안 주체가 계정 및 리전에서 별칭을 생성할 수 있도록 `Resource`의 값을 `"*"`로 지정할 수도 있습니다. 별칭 생성 권한은 계정 및 리전의 모든 리소스에 대한 `kms:Create*` 권한에도 포함될 수 있습니다.

  ```
  {
    "Sid": "IAMPolicyForAnAlias",
    "Effect": "Allow",
    "Action": [
      "kms:CreateAlias",
      "kms:UpdateAlias",
      "kms:DeleteAlias"
    ],
    "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key"
  }
  ```
+ KMS 키에 대한 `kms:CreateAlias`. 이 권한은 키 정책 또는 키 정책에서 위임된 IAM 정책에서 제공되어야 합니다.

  ```
  {
    "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab",
    "Effect": "Allow",
    "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"},
    "Action": [
      "kms:CreateAlias",
      "kms:DescribeKey"
    ],
    "Resource": "*"
  }
  ```

조건 키를 사용하여 별칭과 연결할 수 있는 KMS 키를 제한할 수 있습니다. 예를 들어 [kms:KeySpec](conditions-kms.md#conditions-kms-key-spec) 조건 키를 사용하여 보안 주체가 비대칭 KMS 키에 대해서만 별칭을 생성하도록 할 수 있습니다. KMS 키 리소스에 대한 `kms:CreateAlias` 권한을 제한하는 데 사용할 수 있는 조건 키의 전체 목록은 [AWS KMS 권한](kms-api-permissions-reference.md) 섹션을 참조하세요.

## kms:ListAliases
<a name="alias-access-view"></a>

계정 및 리전의 별칭을 나열하려면 보안 주체에게 `kms:ListAliases` IAM 정책에서 권한이 있어야 합니다. 이 정책은 특정 KMS 키 또는 별칭 리소스와 관련이 없기 때문에 정책의 리소스 요소 값은 [`"*"`여야 합니다](iam-policies-best-practices.md#require-resource-star).

예를 들어 다음 IAM 정책문은 보안 주체에게 계정 및 리전의 모든 KMS 키와 별칭을 나열할 수 있는 권한을 부여합니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "kms:ListKeys",
      "kms:ListAliases"
    ],
    "Resource": "*"
  }
}
```

------

## kms:UpdateAlias
<a name="alias-access-update"></a>

별칭과 연결된 KMS 키를 변경하려면 보안 주체에 별칭, 현재 KMS 키에 대한 권한 요소 및 새 KMS 키에 대한 권한 요소가 필요합니다.

예를 들어 `test-key` 별칭을 키 ID가 1234abcd-12ab-34cd-56ef-1234567890ab인 KMS 키에서 키 ID가 0987dcba-09fe-87dc-65ba-ab0987654321인 KMS 키로 변경하려고 한다고 가정합니다. 이 경우 이 섹션의 예제와 비슷한 정책문을 포함합니다.
+ 별칭에 대한 `kms:UpdateAlias`. 보안 주체에 연결된 IAM 정책에서 이 권한을 제공합니다. 다음 IAM 정책은 특정 별칭을 지정합니다. 그러나 여러 별칭 ARN을 나열하거나 별칭 패턴(예: `"test*"`)을 지정할 수 있습니다. 보안 주체가 계정 및 리전에서 별칭을 업데이트할 수 있도록 `Resource`의 값을 `"*"`로 지정할 수도 있습니다.

  ```
  {
    "Sid": "IAMPolicyForAnAlias",
    "Effect": "Allow",
    "Action": [
      "kms:UpdateAlias",
      "kms:ListAliases",
      "kms:ListKeys"
    ],
    "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key"
  }
  ```
+ 현재 별칭과 연결된 KMS 키에 대한 `kms:UpdateAlias`. 이 권한은 키 정책 또는 키 정책에서 위임된 IAM 정책에서 제공되어야 합니다.

  ```
  {
    "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab",
    "Effect": "Allow",
    "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"},
    "Action": [
      "kms:UpdateAlias",
      "kms:DescribeKey"
    ],
    "Resource": "*"
  }
  ```
+ 작업으로 별칭에 연결 하는 KMS 키에 대한 `kms:UpdateAlias`. 이 권한은 키 정책 또는 키 정책에서 위임된 IAM 정책에서 제공되어야 합니다.

  ```
  {
    "Sid": "Key policy for 0987dcba-09fe-87dc-65ba-ab0987654321",
    "Effect": "Allow",
    "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"},
    "Action": [
      "kms:UpdateAlias", 
      "kms:DescribeKey"
    ],
    "Resource": "*"
  }
  ```

조건 키를 사용하여 `UpdateAlias` 작업에서 KMS 키 중 하나 또는 둘 다를 제한할 수 있습니다. 예를 들어, [kms:ResourceAliases](conditions-kms.md#conditions-kms-resource-aliases) 조건 키를 사용하여 대상 KMS 키에 이미 특정 별칭이 있는 경우에만 보안 주체가 별칭을 업데이트하도록 할 수 있습니다. KMS 키 리소스에 대한 `kms:UpdateAlias` 권한을 제한하는 데 사용할 수 있는 조건 키의 전체 목록은 [AWS KMS 권한](kms-api-permissions-reference.md) 섹션을 참조하세요.

## kms:DeleteAlias
<a name="alias-access-delete"></a>

별칭을 삭제하려면 보안 주체는 별칭과 연결된 KMS 키에 대해 권한이 필요합니다.

보안 주체에 리소스를 삭제할 수 있는 권한을 부여할 때는 항상 주의해야 합니다. 그러나 별칭을 삭제해도 연결된 KMS 키에 영향을 미치지 않습니다. 별칭을 사용하는 애플리케이션에서 오류가 발생할 수 있지만 실수로 별칭을 삭제하면 다시 만들 수 있습니다.
+ 별칭에 대한 `kms:DeleteAlias`. 별칭을 삭제할 수 있는 보안 주체에 연결된 IAM 정책에서 이 권한을 제공합니다.

  다음 예제 정책 설명은 `Resource` 요소의 별칭을 지정합니다. 그러나 여러 별칭 ARN을 나열하거나 별칭 패턴(예: `"test*"`)을 지정할 수 있습니다. 또한 보안 주체가 계정 및 리전에서 별칭을 삭제할 수 있도록 `Resource``"*"` 값을 지정할 수도 있습니다.

  ```
  {
    "Sid": "IAMPolicyForAnAlias",
    "Effect": "Allow",
    "Action": [
      "kms:CreateAlias",
      "kms:UpdateAlias",
      "kms:DeleteAlias"
    ],
    "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key"
  }
  ```
+ 연결된 KMS 키에 대한 `kms:DeleteAlias`. 이 권한은 키 정책 또는 키 정책에서 위임된 IAM 정책에서 제공되어야 합니다.

  ```
  {
    "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab",
    "Effect": "Allow",
    "Principal": {
      "AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"
    },
    "Action": [
      "kms:CreateAlias",
      "kms:UpdateAlias",
      "kms:DeleteAlias",
      "kms:DescribeKey"
    ],
    "Resource": "*"
  }
  ```

## 별칭 권한 제한
<a name="alias-access-limiting"></a>

리소스가 KMS 키인 경우 조건 키를 사용하여 별칭 권한을 제한할 수 있습니다. 예를 들어, 다음 IAM 정책은 특정 계정 및 리전의 KMS 키에 대한 별칭 작업을 허용합니다. 그러나 [kms:KeyOrigin](conditions-kms.md#conditions-kms-key-origin) 조건 키를 사용하여 키 구성 요소가 있는 KMS 키에 대한 권한을 추가로 제한합니다 AWS KMS.

KMS 키 리소스에 대한 별칭 권한을 제한하는 데 사용할 수 있는 조건 키의 전체 목록은 [AWS KMS 권한](kms-api-permissions-reference.md) 섹션을 참조하세요.

```
{
  "Sid": "IAMPolicyKeyPermissions",
  "Effect": "Allow",
  "Resource": "arn:aws:kms:us-west-2:111122223333:key/*",
  "Action": [
    "kms:CreateAlias",
    "kms:UpdateAlias",
    "kms:DeleteAlias"
  ],
  "Condition": {
    "StringEquals": {
      "kms:KeyOrigin": "AWS_KMS"
    }
  }  
}
```

리소스가 별칭인 정책문에는 조건 키를 사용할 수 없습니다. 보안 주체가 관리할 수 있는 별칭을 제한하려면 별칭에 대한 액세스를 제어하는 ​​IAM 정책문의 `Resource` 요소 값을 사용합니다. 예를 들어 다음 정책 설명을 통해 보안 주체는 별칭이 로 시작하지 않는 한 AWS 계정 및 리전에서 별칭을 생성, 업데이트 또는 삭제할 수 있습니다`Restricted`.

```
{
  "Sid": "IAMPolicyForAnAliasAllow",
  "Effect": "Allow",
  "Action": [
    "kms:CreateAlias",
    "kms:UpdateAlias",
    "kms:DeleteAlias"
  ],
  "Resource": "arn:aws:kms:us-west-2:111122223333:alias/*"
},
{
  "Sid": "IAMPolicyForAnAliasDeny",
  "Effect": "Deny",
  "Action": [
    "kms:CreateAlias",
    "kms:UpdateAlias",
    "kms:DeleteAlias"
  ],
  "Resource": "arn:aws:kms:us-west-2:111122223333:alias/Restricted*"
}
```