

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

# 키 스토어에서 KMS AWS CloudHSM 키 생성
<a name="create-cmk-keystore"></a>

 AWS CloudHSM 키 스토어를 생성한 후 키 스토어 AWS KMS keys 에서를 생성할 수 있습니다. 가 AWS KMS 생성하는 [키 구성 요소가 있는 대칭 암호화 KMS](symm-asymm-choose-key-spec.md#symmetric-cmks) 키여야 합니다. 사용자 지정 키 스토어에 [비대칭 KMS 키](symmetric-asymmetric.md), [HMAC KMS 키](hmac.md) 또는 [가져온 키 구성 요소](importing-keys.md)가 있는 KMS 키를 생성할 수 없습니다. 또한 사용자 지정 키 스토어에서 대칭 암호화 KMS 키를 사용하여 비대칭 데이터 키 페어를 생성할 수 없습니다. KMS는 IPv6를 통해 AWS CloudHSM 키 스토어와 통신할 수 없습니다.

 AWS CloudHSM 키 스토어에서 KMS 키를 생성하려면 AWS CloudHSM 키 스토어를 [연결된 AWS CloudHSM 클러스터에 연결하고](connect-keystore.md) 클러스터에 서로 다른 가용 영역에 활성 HSMs 두 개 이상 있어야 합니다. 연결 상태 및 HSM 수를 찾으려면 AWS Management Console에서 [AWS CloudHSM 키 스토어 페이지](view-keystore.md#view-keystore-console)를 봅니다. API 작업을 사용할 때는 [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html) 작업을 사용하여 AWS CloudHSM 키 스토어가 연결되어 있는지 확인합니다. 클러스터의 활성 HSMs 수와 가용 영역을 확인하려면 AWS CloudHSM [DescribeClusters](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html) 작업을 사용합니다.

 AWS CloudHSM 키 스토어에서 KMS 키를 생성하면가 KMS 키를 AWS KMS 생성합니다 AWS KMS. 그러나 연결된 AWS CloudHSM 클러스터에서 KMS 키에 대한 키 구성 요소를 생성합니다. 특히는 클러스터에 생성한 CU로 AWS KMS 로그인합니다. [`kmsuser`](create-keystore.md#before-keystore) 그런 다음, 클러스터에서 지속적이고 추출 불가능한 256비트 고급 암호화 표준(AES) 대칭 키를 생성합니다. AWS KMS 는 클러스터에서만 표시되는 [키 라벨 속성](https://docs.aws.amazon.com/cloudhsm/latest/userguide/cloudhsm_cli-key-attributes.html)의 값을 KMS 키의 Amazon 리소스 이름(ARN)으로 설정합니다.

명령이 성공하면 새 KMS 키의 [키 상태](key-state.md)는 `Enabled`가 되고 오리진은 `AWS_CLOUDHSM`이 됩니다. 생성 이후에 KMS 키의 오리진을 변경할 수 없습니다. AWS KMS 콘솔의 키 스토어에서 또는 [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 작업을 사용하여 KMS AWS CloudHSM 키를 볼 때 키 ID, 키 상태, 생성 날짜와 같은 일반적인 속성을 볼 수 있습니다. 하지만 사용자 지정 키 스토어 ID와 AWS CloudHSM 클러스터 ID(선택 사항)을 확인할 수도 있습니다.

 AWS CloudHSM 키 스토어에서 KMS 키를 생성하려는 시도가 실패하면 오류 메시지를 사용하여 원인을 확인할 수 있습니다. AWS CloudHSM 키 스토어가 연결되지 않았거나(`CustomKeyStoreInvalidStateException`) 연결된 AWS CloudHSM 클러스터에이 작업()에 필요한 두 개의 활성 HSMs이 없음을 나타낼 수 있습니다`CloudHsmClusterInvalidConfigurationException`. 도움말은 [사용자 지정 키 스토어 문제 해결](fix-keystore.md) 섹션을 참조하십시오.

 AWS CloudHSM 키 스토어에서 KMS 키를 생성하는 작업 AWS CloudTrail 로그의 예는 섹션을 참조하세요[CreateKey](ct-createkey.md).

## CloudHSM 키 저장소에서 새로운 KMS 키 생성
<a name="create-key-keystore"></a>

콘솔의 AWS KMS 키 스토어에서 또는 [CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html) 작업을 사용하여 대칭 암호화 KMS AWS CloudHSM 키를 생성할 수 있습니다.

### AWS KMS 콘솔 사용
<a name="create-cmk-keystore-console"></a>

다음 절차에 따라 키 스토어에 대칭 암호화 KMS AWS CloudHSM 키를 생성합니다.

**참고**  
별칭, 설명 또는 태그에 기밀 또는 민감한 정보를 포함하지 마십시오. 이러한 필드는 CloudTrail 로그 및 기타 출력에 일반 텍스트로 표시될 수 있습니다.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) AWS Key Management Service (AWS KMS) 콘솔을 엽니다.

1. 를 변경하려면 페이지 오른쪽 상단에 있는 리전 선택기를 AWS 리전사용합니다.

1. 탐색 창에서 **고객 관리형 키**를 선택합니다.

1. **키 생성(Create key)**을 선택합니다.

1. **대칭(Symmetric)**을 선택합니다.

1. **키 사용(Key usage)**에서 **암호화 및 해독(Encrypt and decrypt)** 옵션이 선택됩니다. 변경할 수 없습니다.

1. **고급 옵션**을 선택합니다.

1. **Key material origin**(키 구성 요소 오리진)에서 **AWS CloudHSM key store**를 선택합니다.

   키 스토어에는 다중 리전 AWS CloudHSM 키를 생성할 수 없습니다.

1. **다음**을 선택합니다.

1. 새 KMS AWS CloudHSM 키의 키 스토어를 선택합니다. 새 AWS CloudHSM 키 스토어를 생성하려면 **사용자 지정 키 스토어 생성을** 선택합니다.

   선택한 AWS CloudHSM 키 스토어의 상태는 **연결**됨이어야 합니다. 연결된 AWS CloudHSM 클러스터는 활성 상태여야 하며 서로 다른 가용 영역에 두 개 이상의 활성 HSMs을 포함해야 합니다.

    AWS CloudHSM 키 스토어 연결에 대한 도움말은 섹션을 참조하세요[AWS CloudHSM 키 스토어 연결 해제](connect-keystore.md). HSM 추가에 대한 도움말은 *AWS CloudHSM 사용 설명서*의 [HSM 추가](https://docs.aws.amazon.com/cloudhsm/latest/userguide/add-remove-hsm.html#add-hsm)를 참조하십시오.

1. **다음**을 선택합니다.

1. KMS 키의 별칭과 설명을 입력합니다.

1. (선택 사항). **태그 추가(Add Tags)** 페이지에서 KMS 키를 식별 및 분류하는 태그를 추가합니다.

    AWS 리소스에 태그를 추가하면가 태그별로 집계된 사용량 및 비용이 포함된 비용 할당 보고서를 AWS 생성합니다. KMS 키에 대한 액세스를 제어하는 데에도 태그를 사용할 수 있습니다. KMS 키 태그 지정에 대한 자세한 내용은 [의 태그 AWS KMS](tagging-keys.md) 및 [에 대한 ABAC AWS KMS](abac.md) 섹션을 참조하십시오.

1. **다음**을 선택합니다.

1. **키 관리자(Key Administrators)** 섹션에서 KMS 키를 관리할 수 있는 IAM 사용자 및 역할을 선택합니다. 자세한 내용은 [키 관리자가 KMS 키를 관리하도록 허용](key-policy-default.md#key-policy-default-allow-administrators)을 참조하세요.
**참고**  
IAM 정책은 다른 IAM 사용자 및 역할에 KMS 키 사용 권한을 제공할 수 있습니다.  
IAM 모범 사례는 장기 보안 인증 정보가 있는 IAM 사용자의 사용을 장려하지 않습니다. 가능할 경우, 임시 보안 인증 정보를 제공하는 IAM 역할을 사용하세요. 자세한 내용은 *IAM 사용 설명서*의 [IAM의 보안 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)를 참조하세요.  
 AWS KMS 콘솔은 문 식별자 아래의 키 정책에 키 관리자를 추가합니다`"Allow access for Key Administrators"`. 이 문 식별자를 수정하면 문에 대해 콘솔이 업데이트 내용을 표시하는 방식에 영향을 미칠 수 있습니다.

1. (선택 사항) 이러한 키 관리자가 KMS 키를 삭제하지 못하도록 하려면 페이지 하단에 있는 **키 관리자가 이 키를 삭제하도록 허용(Allow key administrators to delete this key)** 확인란의 선택을 취소합니다.

1. **다음**을 선택합니다.

1. **이 계정** 섹션에서 [암호화 작업에](kms-cryptography.md#cryptographic-operations) KMS 키를 사용할 수 AWS 계정 있는 IAM 사용자 및 역할을 선택합니다. 자세한 내용은 [키 사용자가 KMS 키를 사용하도록 허용](key-policy-default.md#key-policy-default-allow-users)을 참조하세요.
**참고**  
IAM 모범 사례는 장기 보안 인증 정보가 있는 IAM 사용자의 사용을 장려하지 않습니다. 가능할 경우, 임시 보안 인증 정보를 제공하는 IAM 역할을 사용하세요. 자세한 내용은 *IAM 사용 설명서*의 [IAM의 보안 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)를 참조하세요.  
 AWS KMS 콘솔은 명령문 식별자 `"Allow use of the key"` 및 아래의 키 정책에 키 사용자를 추가합니다`"Allow attachment of persistent resources"`. 이러한 문 식별자들을 수정하면 문에 대해 콘솔이 업데이트 내용을 표시하는 방식에 영향을 미칠 수 있습니다.

1. (선택 사항) 다른 사용자가 암호화 작업에이 KMS 키를 AWS 계정 사용하도록 허용할 수 있습니다. 이렇게 하려면 페이지 하단의 **기타 AWS 계정** 섹션에서 **다른 추가 AWS 계정**를 선택하고 외부 계정의 AWS 계정 ID를 입력합니다. 외부 계정을 여러 개 추가하려면 이 단계를 반복합니다.
**참고**  
또한 다른의 관리자는 사용자에 대한 IAM 정책을 생성하여 KMS 키에 대한 액세스를 허용 AWS 계정 해야 합니다. 자세한 내용은 [다른 계정의 사용자가 KMS를 사용하도록 허용](key-policy-modifying-external-accounts.md) 단원을 참조하십시오.

1. **다음**을 선택합니다.

1. 키에 대한 키 정책 문을 검토합니다. 키 정책을 변경하려면 **편집**을 선택하세요.

1. **다음**을 선택합니다.

1. 선택한 키 설정을 검토합니다. 여전히 돌아가서 모든 설정을 변경할 수 있습니다.

1. 완료했으면 **마침(Finish)**을 선택하여 키를 생성합니다.

프로시저가 성공하면 선택한 키 스토어에 새 KMS AWS CloudHSM 키가 표시됩니다. 새 KMS 키의 이름 또는 별칭을 선택하면 세부 정보 페이지의 **암호화 구성** 탭에 KMS 키의 오리진(**AWS CloudHSM**), 사용자 지정 키 스토어의 이름, ID 및 유형, AWS CloudHSM 클러스터의 ID가 표시됩니다. 이 절차가 실패하면 실패 원인을 설명하는 오류 메시지가 나타납니다.

**작은 정보**  
사용자 지정 키 스토어에서 KMS 키를 손쉽게 식별하려면 **고객 관리형 키(Customer managed keys)** 페이지에서 **사용자 지정 키 스토어 ID(Custom key store ID)** 열을 화면에 추가합니다. 오른쪽 상단의 기어 아이콘을 클릭하고 **Custom key store ID(사용자 지정 키 스토어 ID)**를 선택합니다. 자세한 내용은 [콘솔 보기 사용자 지정](viewing-console-customize.md)을 참조하세요.

### AWS KMS API 사용
<a name="create-cmk-keystore-api"></a>

키 스토어에서 새 AWS KMS key (KMS 키)를 AWS CloudHSM 생성하려면 [CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html) 작업을 사용합니다. `CustomKeyStoreId` 파라미터를 사용하여 사용자 지정 키 스토어를 식별하고 `AWS_CLOUDHSM`의 `Origin` 값을 지정합니다.

`Policy` 파라미터를 사용해 키 정책을 지정할 수도 있습니다. 언제든 키 정책([PutKeyPolicy](https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html))을 변경하고 [설명](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 및 [태그](https://docs.aws.amazon.com/kms/latest/APIReference/API_TagResource.html) 등의 선택적 요소를 추가할 수 있습니다.

이 섹션의 예제는 [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/)를 사용하지만, 지원되는 모든 프로그래밍 언어를 사용할 수 있습니다.

다음 예제는 [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html) 작업을 호출하여 AWS CloudHSM 키 스토어가 연결된 AWS CloudHSM 클러스터에 연결되어 있는지 확인하는 것으로 시작합니다. 기본적으로 이 작업은 계정 및 리전에서 모든 사용자 지정 키 스토어를 반환합니다. 특정 AWS CloudHSM 키 스토어만 설명하려면 `CustomKeyStoreId` 또는 `CustomKeyStoreName` 파라미터(둘 다 아님)를 사용합니다.

이 명령을 실행하기 앞서 예제에 나온 사용자 지정 키 스토어 ID를 유효한 ID로 대체합니다.

**참고**  
`Description` 또는 `Tags` 필드에 기밀 또는 민감한 정보를 포함하지 마십시오. 이러한 필드는 CloudTrail 로그 및 기타 출력에 일반 텍스트로 표시될 수 있습니다.

```
$ aws kms describe-custom-key-stores --custom-key-store-id cks-1234567890abcdef0
{
   "CustomKeyStores": [
      "CustomKeyStoreId": "cks-1234567890abcdef0",
      "CustomKeyStoreName": "ExampleKeyStore",
      "CustomKeyStoreType": "AWS CloudHSM key store",
      "CloudHsmClusterId": "cluster-1a23b4cdefg",
      "TrustAnchorCertificate": "<certificate string appears here>",
      "CreationDate": "1.499288695918E9",
      "ConnectionState": "CONNECTED"
   ],
}
```

다음 예제 명령은 [DescribeClusters](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html) 작업을 사용하여 `ExampleKeyStore` (cluster-1a23b4cdefg)와 연결된 AWS CloudHSM 클러스터에 활성 HSMs이 두 개 이상 있는지 확인합니다. 클러스터의 HSM 수가 2개 미만이면 `CreateKey` 작업이 실패합니다.

```
$ aws cloudhsmv2 describe-clusters
{
    "Clusters": [
        {
            "SubnetMapping": {
               ...
            },
            "CreateTimestamp": 1507133412.351,
            "ClusterId": "cluster-1a23b4cdefg",
            "SecurityGroup": "sg-865af2fb",
            "HsmType": "hsm1.medium",
            "VpcId": "vpc-1a2b3c4d",
            "BackupPolicy": "DEFAULT",
            "Certificates": {
                "ClusterCertificate": "-----BEGIN CERTIFICATE-----\...\n-----END CERTIFICATE-----\n"
            },
            "Hsms": [
                {
                    "AvailabilityZone": "us-west-2a",
                    "EniIp": "10.0.1.11",
                    "ClusterId": "cluster-1a23b4cdefg",
                    "EniId": "eni-ea8647e1",
                    "StateMessage": "HSM created.",
                    "SubnetId": "subnet-a6b10bd1",
                    "HsmId": "hsm-abcdefghijk",
                    "State": "ACTIVE"
                },
                {
                    "AvailabilityZone": "us-west-2b",
                    "EniIp": "10.0.0.2",
                    "ClusterId": "cluster-1a23b4cdefg",
                    "EniId": "eni-ea8647e1",
                    "StateMessage": "HSM created.",
                    "SubnetId": "subnet-b6b10bd2",
                    "HsmId": "hsm-zyxwvutsrqp",
                    "State": "ACTIVE"
                },
            ],
            "State": "ACTIVE"
        }
    ]
}
```

이 예제 명령은 [CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html) 작업을 사용하여 키 스토어에 KMS AWS CloudHSM 키를 생성합니다. AWS CloudHSM 키 스토어에서 KMS 키를 생성하려면 키 스토어의 사용자 지정 AWS CloudHSM 키 스토어 ID를 제공하고 `Origin` 값을 지정해야 합니다`AWS_CLOUDHSM`.

응답에는 사용자 지정 키 스토어 및 AWS CloudHSM 클러스터의 IDs가 포함됩니다.

이 명령을 실행하기 앞서 예제에 나온 사용자 지정 키 스토어 ID를 유효한 ID로 대체합니다.

```
$ aws kms create-key --origin AWS_CLOUDHSM --custom-key-store-id cks-1234567890abcdef0
{
  "KeyMetadata": {
    "AWSAccountId": "111122223333",
    "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "CreationDate": 1.499288695918E9,
    "Description": "Example key",
    "Enabled": true,
    "MultiRegion": false,
    "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyManager": "CUSTOMER",
    "KeyState": "Enabled",
    "KeyUsage": "ENCRYPT_DECRYPT",    
    "Origin": "AWS_CLOUDHSM"
    "CloudHsmClusterId": "cluster-1a23b4cdefg",
    "CustomKeyStoreId": "cks-1234567890abcdef0"
    "KeySpec": "SYMMETRIC_DEFAULT",
    "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
    "EncryptionAlgorithms": [
        "SYMMETRIC_DEFAULT"
    ]
  }
}
```