AWS CloudHSM 키 스토어 생성 - AWS Key Management Service

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

AWS CloudHSM 키 스토어 생성

계정에서 AWS CloudHSM 키 스토어를 하나 또는 여러 개 생성할 수 있습니다. 각 AWS CloudHSM 키 스토어는 동일한 AWS 계정과 리전에 있는 AWS CloudHSM 클러스터 하나와 연결됩니다. AWS CloudHSM 키 스토어를 생성하기 전에 사전 조건을 수집해야 합니다. 그런 다음 AWS CloudHSM 키 스토어를 사용하려면 먼저 AWS CloudHSM 클러스터에 연결해야 합니다.

참고

모든 속성 값이 연결 해제된 AWS CloudHSM 키 스토어와 동일한 AWS CloudHSM 키 스토어를 생성하려는 경우 AWS KMS는 새 AWS CloudHSM 키 스토어를 생성하지 않으며 예외를 발생시키거나 오류를 표시하지 않습니다. 대신 AWS KMS는 복제를 재시도의 결과로 인식하고 기존 AWS CloudHSM 키 스토어의 ID를 반환합니다.

작은 정보

AWS CloudHSM 키 스토어를 당장 연결할 필요는 없습니다. 사용 준비가 될 때까지 연결 해제 상태로 남겨둘 수 있습니다. 하지만 적절하게 구성이 되었는지 확인하기 위해 이를 연결하고, 연결 상태를 확인한 다음, 연결 해제하고 싶을 수 있습니다.

사전 조건 수집

각각의 AWS CloudHSM 키 스토어는 AWS CloudHSM 클러스터에서 지원합니다. AWS CloudHSM 키 스토어를 생성하려면 다른 키 스토어에 아직 연결되어 있지 않은 활성 AWS CloudHSM 클러스터를 지정해야 합니다. 또한 AWS KMS가 사용자를 대신해 키를 생성하고 관리하는 데 사용할 수 있는 클러스터의 HSM에서 전용 CU(Crypto User)를 생성해야 합니다.

AWS CloudHSM 키 스토어를 생성하기 전에 다음을 수행하세요.

AWS CloudHSM 클러스터 선택

모든 AWS CloudHSM 키 스토어가 단 하나의 AWS CloudHSM 클러스터에 연결됩니다. AWS CloudHSM 키 스토어에서 AWS KMS keys를 생성하면, AWS KMS는 AWS KMS의 ID와 Amazon 리소스 이름(ARN) 등의 KMS 키 메타데이터를 생성합니다. 그런 다음, 연결 클러스터의 HSM에서 키 구성 요소를 생성합니다. 새 AWS CloudHSM 클러스터를 생성하거나 기존 클러스터를 사용할 수 있습니다. AWS KMS에서 클러스터에 대한 독점적인 액세스가 필요하지 않습니다.

선택한 AWS CloudHSM 클러스터가 AWS CloudHSM 키 스토어에 영구적으로 연결됩니다. AWS CloudHSM 키 스토어를 생성한 후에 연결 클러스터의 클러스터 ID를 변경할 수 있지만, 지정한 클러스터는 원래 클러스터와 백업 기록을 공유해야 합니다. 관련이 없는 클러스터를 사용하려면 AWS CloudHSM 키 스토어를 새로 생성해야 합니다.

선택한 AWS CloudHSM 클러스터는 다음 특성을 가지고 있어야 합니다.

  • 클러스터는 활성 상태여야 합니다.

    클러스터를 생성해서 이를 초기화하고 플랫폼에 대한 AWS CloudHSM 클라이언트 소프트에어를 설치한 다음, 클러스터를 활성화해야 합니다. 자세한 지침을 보려면 AWS CloudHSM 사용 설명서AWS CloudHSM 시작을 참조하세요.

  • AWS CloudHSM 키 스토어와 동일한 계정 및 리전에 클러스터가 있어야 합니다. 한 리전에 있는 AWS CloudHSM 키 스토어를 다른 리전의 클러스터와 연결할 수 없습니다. 다중 리전에서 키 인프라를 생성하려면 각 리전에서 AWS CloudHSM 키 스토어와 클러스터를 생성해야 합니다.

  • 이 클러스터는 동일한 계정 및 리전의 다른 사용자 지정 키 스토어에 연결할 수 없습니다. 계정 및 리전의 각 AWS CloudHSM 키 스토어는 서로 다른 AWS CloudHSM 클러스터에 연결되어야 합니다. 사용자 지정 키 스토어에 이미 연결되어 있는 클러스터나 연결 클러스터와 백업 기록을 공유하는 클러스터를 지정할 수 없습니다. 백업 기록을 공유하는 클러스터들은 동일한 클러스터 인증서를 가지고 있습니다. 클러스터의 클러스터 인증서를 보려면 AWS CloudHSM 콘솔 또는 DescribeClusters작업을 사용합니다.

    AWS CloudHSM 클러스터를 다른 리전으로 백업하는 경우, 이는 다른 클러스터로 간주되며 백업을 해당 리전의 사용자 지정 키 스토어와 연결할 수 있습니다. 그러나 두 사용자 지정 키 스토어의 KMS 키는 동일한 백업 키가 있더라도 상호 운용할 수 없습니다. AWS KMS는 해당 데이터를 암호화한 KMS 키에 의해서만 해독될 수 있도록 메타데이터를 사이퍼텍스트에 바인딩합니다.

  • 리전에서 가용 영역이 두 개 이상인 프라이빗 서브넷으로 클러스터를 구성해야 합니다. AWS CloudHSM은 모든 가용 영역에서 지원되는 것은 아니기 때문에 해당 리전의 모든 가용 영역에서 프라이빗 서브넷을 생성하는 것이 좋습니다. 기존 클러스터에 대한 서브넷을 재구성할 수는 없지만, 클러스터 구성에서 서브넷을 서로 달리하여 백업으로부터 클러스터를 생성할 수 있습니다.

    중요

    AWS CloudHSM 키 스토어를 만든 후에는 해당 AWS CloudHSM 클러스터에 대해 구성된 프라이빗 서브넷을 삭제하지 마세요. AWS KMS가 클러스터 구성에서 서브넷을 모두 찾을 수 없는 경우, 사용자 지정 키 스토어에 연결하려는 시도가 SUBNET_NOT_FOUND 연결 오류 상태로 실패합니다. 자세한 내용은 연결 오류를 수정하는 방법 섹션을 참조하세요.

  • 클러스터용 보안 그룹(cloudhsm-cluster-<cluster-id>-sg)은 포트 2223~2225에서 TCP 트래픽을 허용하는 인바운드 규칙과 아웃바운드 규칙을 포함해야 합니다. 인바운드 규칙의 소스와 아웃바운드 규칙의 대상이 보안 그룹 ID와 일치해야 합니다. 이들 규칙은 클러스터를 생성할 때 기본적으로 설정됩니다. 삭제하거나 변경하지 마세요.

  • 클러스터는 서로 다른 가용 영역에 활성 HSM을 최소 2개 포함하고 있어야 합니다. HSM 수를 확인하려면 AWS CloudHSM 콘솔 또는 DescribeClusters작업을 사용하십시오. 필요한 경우 HSM을 추가할 수 있습니다.

트러스트 앵커 인증서 찾기

사용자 지정 키 스토어를 생성할 때 AWS CloudHSM 클러스터의 트러스트 앵커 인증서를 AWS KMS에 업로드해야 합니다. AWS KMS은 연결된 AWS CloudHSM 클러스터에 AWS CloudHSM 키 스토어를 연결하기 위해 트러스트 앵커 인증서를 필요로 합니다.

모든 활성 AWS CloudHSM 클러스터는 트러스트 앵커 인증서를 갖습니다. 클러스터를 초기화할 때 이러한 인증서를 생성해서 customerCA.crt 파일에 저장하고 클러스터를 연결하는 호스트에 이를 복사합니다.

AWS KMS에 대한 kmsuser CU(Crypto User) 생성

AWS CloudHSM 키 스토어를 관리하기 위해 AWS KMS는 선택한 클러스터의 kmsuser CU(Crypto User) 계정에 로그인합니다. AWS CloudHSM 키 스토어를 생성하기 전에 먼저 kmsuser CU를 생성해야 합니다. 그리고 AWS CloudHSM 키 스토어를 생성할 때 kmsuser 계정 암호를 AWS KMS에 제공합니다. 연결된 AWS CloudHSM 클러스터에 AWS CloudHSM 키 스토어를 연결할 때마다 AWS KMS는 kmsuser로 로그인하고 kmsuser 암호를 교체합니다.

중요

kmsuser CU를 생성할 때 2FA 옵션을 지정해서는 안 됩니다. 그렇게 하면 AWS KMS가 로그인할 수 없고 AWS CloudHSM 키 스토어가 이 AWS CloudHSM 클러스터에 연결될 수 없습니다. 일단 2FA를 지정하면 실행 취소를 할 수 없습니다. 대신에 CU를 삭제한 다음 다시 생성해야 합니다.

kmsuser CU를 생성하려면 다음 절차를 사용하세요.

  1. AWS CloudHSM 사용 설명서Getting started with CloudHSM Management Utility (CMU)(CloudHSM 관리 유틸리티(CMU) 시작하기) 주제에 설명된 대로 cloudhsm_mgmt_util을 시작합니다.

  2. cloudhsm_mgmt_util의 createUser 명령을 사용하여 kmsuser라는 CU를 생성합니다. 암호는 7~32자의 영숫자로만 구성되어야 합니다. 대소문자가 구분되며 어떤 특수 문자도 포함해서는 안 됩니다.

    예를 들어 다음 예제 명령은 암호가 kmsPswdkmsuser CU를 생성합니다.

    aws-cloudhsm> createUser CU kmsuser kmsPswd

AWS CloudHSM 키 스토어 생성(콘솔)

AWS Management Console에서 AWS CloudHSM 키 스토어를 생성할 때 워크플로의 일부로 필수 구성 요소를 추가하고 생성할 수 있습니다. 그러나 이들을 미리 수집하면 프로세스가 더 빨라집니다.

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

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

  3. 탐색 창에서 Custom key stores(사용자 지정 키 스토어), AWS CloudHSM key stores를 선택합니다.

  4. 키 스토어 생성을 선택합니다.

  5. 기억하기 쉬운 사용자 지정 키 스토어 이름을 입력합니다. 이름은 계정의 모든 사용자 지정 키 스토어에서 고유해야 합니다.

    중요

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

  6. AWS CloudHSM 키 스토어의 AWS CloudHSM 클러스터를 선택합니다. 그렇지 않고 AWS CloudHSM 클러스터를 새로 생성하려면 AWS CloudHSM 클러스터 생성 링크를 선택합니다.

    메뉴에는 AWS CloudHSM 키 스토어에 아직 연결되지 않은 계정 및 리전의 AWS CloudHSM 키 스토어가 표시됩니다. 사용자 지정 키 스토어를 연결하려면 클러스터가 요구 사항을 충족해야 합니다.

  7. Choose file(파일 선택)을 선택한 다음, 선택한 AWS CloudHSM 클러스터의 트러스트 앵커 인증서를 업로드합니다. 이것은 클러스터를 초기화할 때 생성한 customerCA.crt 파일입니다.

  8. 선택한 클러스터에서 생성한 kmsuser CU(Crypto User)의 암호를 입력합니다.

  9. 생성(Create)을 선택합니다.

절차가 성공하면 계정 및 리전의 AWS CloudHSM 키 스토어 목록에 새로운 AWS CloudHSM 키 스토어가 나타납니다. 절차가 실패하면 오류 메시지가 나타나서 문제를 설명하고 이를 수정할 수 있는 방법에 대한 도움말을 제공합니다. 도움이 더 필요한 경우 사용자 지정 키 스토어 문제 해결 섹션을 참조하십시오.

모든 속성 값이 연결 해제된 AWS CloudHSM 키 스토어와 동일한 AWS CloudHSM 키 스토어를 생성하려는 경우 AWS KMS는 새 AWS CloudHSM 키 스토어를 생성하지 않으며 예외를 발생시키거나 오류를 표시하지 않습니다. 대신 AWS KMS는 복제를 재시도의 결과로 인식하고 기존 AWS CloudHSM 키 스토어의 ID를 반환합니다.

다음: 새로운 AWS CloudHSM 키 스토어는 자동으로 연결되지 않습니다. AWS CloudHSM 키 스토어에서 AWS KMS keys를 생성하려면 먼저 연결된 AWS CloudHSM 클러스터에 사용자 지정 키스토어를 연결해야 합니다.

AWS CloudHSM 키 스토어 생성(API)

CreateCustomKeyStore작업을 사용하여 계정 및 지역의 AWS CloudHSM 클러스터와 연결된 새 AWS CloudHSM 키 저장소를 생성할 수 있습니다. 이 예제들은 AWS Command Line Interface(AWS CLI)를 사용하지만, 사용자는 어떤 지원되는 프로그래밍 언어라도 사용할 수 있습니다.

CreateCustomKeyStore 작업에서는 다음과 같은 파라미터 값이 필요합니다.

  • CustomKeyStoreName — 계정에서 고유한 사용자 지정 키 스토어의 친숙한 이름입니다.

    중요

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

  • CloudHsmClusterId — 키 저장소의 요구 사항을 충족하는 AWS CloudHSM 클러스터의 클러스터 ID. AWS CloudHSM

  • KeyStorePassword — 지정된 클러스터의 kmsuser CU 계정 암호.

  • TrustAnchorCertificate - 클러스터를 초기화할 때 만든 customerCA.crt 파일의 내용입니다.

다음 예제는 가상의 클러스터 ID를 사용합니다. 명령을 실행하기 전에 유효한 클러스터 ID로 이를 바꿉니다.

$ aws kms create-custom-key-store --custom-key-store-name ExampleCloudHSMKeyStore \ --cloud-hsm-cluster-id cluster-1a23b4cdefg \ --key-store-password kmsPswd \ --trust-anchor-certificate <certificate-goes-here>

AWS CLI를 사용 중인 경우에는 콘텐츠 대신에 트러스트 앵커 인증서 파일을 지정할 수 있습니다. 다음 예제에서 customerCA.crt 파일은 루트 디렉터리에 있습니다.

$ aws kms create-custom-key-store --custom-key-store-name ExampleCloudHSMKeyStore \ --cloud-hsm-cluster-id cluster-1a23b4cdefg \ --key-store-password kmsPswd \ --trust-anchor-certificate file://customerCA.crt

작업이 성공하면 CreateCustomKeyStore가 사용자 지정 키 스토어 ID를 반환합니다(다음 예제 응답 참조).

{ "CustomKeyStoreId": cks-1234567890abcdef0 }

작업이 실패할 경우 예외로 표시된 오류를 정정하고 다시 시도해보세요. 추가적인 도움말은 사용자 지정 키 스토어 문제 해결 섹션을 참조하십시오.

모든 속성 값이 연결 해제된 AWS CloudHSM 키 스토어와 동일한 AWS CloudHSM 키 스토어를 생성하려는 경우 AWS KMS는 새 AWS CloudHSM 키 스토어를 생성하지 않으며 예외를 발생시키거나 오류를 표시하지 않습니다. 대신 AWS KMS는 복제를 재시도의 결과로 인식하고 기존 AWS CloudHSM 키 스토어의 ID를 반환합니다.

다음: AWS CloudHSM 키 스토어를 사용하려면 AWS CloudHSM 클러스터에 연결합니다.