랜딩 구역 배치 가능 아키텍처에서 키 관리 대체
랜딩 구역 배치 가능 아키텍처는 IBM Key Protect 또는 Hyper Protect Crypto Services를 통합하여 키 관리 기능을 제공합니다. 대부분의 입력에서 가능하지 않은 키 관리에 대한 고급 수정을 수행하려면 대체 입력을 사용합니다.
값을 대체하려면 대체 입력 변수에서 JSON key_management 오브젝트를 전달합니다. 프로젝트 또는 IBM Cloud Schematics이 있는 배치의 경우 값이 override_json_string 입력에 추가됩니다. IBM Key Protect 및 Hyper Protect Crypto Services 모두 랜딩 구역 배치 가능 아키텍처 에서 지원됩니다.
랜딩 구역 구성 도구 를 사용하여 배치 가능한 아키텍처를 사용자 정의할 수도 있습니다.
예제 키 관리 대체
이 예제에서는 배치 가능한 아키텍처에 키 관리 서비스 (KMS) 를 포함하는 몇 가지 공통 유스 케이스를 식별합니다.
랜딩 구역 배치 가능 아키텍처에서 지원되는 키 관리 속성의 전체 목록은 GitHub에 있는 terraform-ibm-landing-zone 저장소의 입력 섹션 에서 key_management 오브젝트를 참조하십시오.
Key Protect 인스턴스 및 키 작성
이 예제는 기본 구성을 설명하며 대체 값이 필요하지 않습니다. 그러나 예제에서는 다른 입력 변수 (예: 키 이름) 에서 사용할 수 없는 값을 대체할 수 있음을 보여줍니다. 이 겹쳐쓰기 예제는 test-kms라는 IBM Key Protect 의 인스턴스를 작성하고 test-kms 인스턴스에서 slz-slz-key, slz-atracker-key, slz-roks-key 및 slz-vsi-volume-key 라는 키를 작성합니다.
-
다음 JSON을 복사하십시오.
{ "key_management": { "keys": [ { "key_ring": "slz-slz-ring", "name": "slz-slz-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-atracker-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-roks-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-vsi-volume-key", "root_key": true } ], "name": "test-kms", "resource_group": "testrg" } } -
프로젝트 구성 편집 섹션의 단계에 따라 배치 가능한 아키텍처를 수정하십시오.
기존 KMS에서 키 작성
이 겹쳐쓰기 예제는 test-kms 라는 기존 IBM Key Protect 인스턴스를 사용합니다. use_data 를 true 로 설정하여 기존 인스턴스를 사용할 수 있습니다. 예제의 나머지 부분에서는 기존 인스턴스에서 slz-slz-ring 로 이름 지정된 키 링에 네 개의 키를 작성합니다.
Key Protect대신 Hyper Protect Crypto Services 를 사용하려면 "use_data": true 대신 "use_hs_crypto": true 를 전달하십시오.
-
다음 JSON을 복사하십시오.
{ "key_management": { "keys": [ { "key_ring": "slz-slz-ring", "name": "slz-slz-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-atracker-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-roks-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-vsi-volume-key", "root_key": true } ], "name": "test-kms", "resource_group": "testrg", "use_data": true } } -
프로젝트 구성 편집 섹션의 단계에 따라 배치 가능한 아키텍처를 수정하십시오.
KMS 없이 기존 키 사용
기존 KMS 인스턴스에서 가져오지 않고 기존 키를 사용하려면 키의 CRN을 포함하십시오. CRN은 배치 가능한 아키텍처를 배치하는 계정의 키 또는 다른 계정의 키를 참조할 수 있습니다. 기존 키의 속성은 name 및 existing_key_crn 입니다. 기존 키 CRN을 사용하는 경우 block-storage 및 cloud-object-storage 가 외부 계정의 KMS에 액세스할 수 있도록 하는 인증 정책이 있어야 합니다. 자세한 정보는 권한을 사용하여 서비스 간 액세스 부여 를 참조하십시오.
배치 가능한 아키텍처에서 KMS를 작성하지 않으려면 key_management.name 및 key_management.resource_group 를 생략해야 합니다.
-
다음 JSON을 복사하십시오.
{ "key_management": { "keys": [ { "name": "slz-slz-key", "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:6128229e-1bbb-4c25-827c-c97f077fb585" }, { "name": "slz-atracker-key", "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:9157cce8-3c1a-42be-b67f-0103426bc147" }, { "name": "slz-roks-key", "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:7ccfb2a6-4d7d-4e85-af35-9548cda719d0:key:682c774b-c781-4bbb-b3b7-3ddf1831ab2f" }, { "name": "slz-vsi-volume-key", "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:8c2ac54e-ac85-47da-8d03-06acb7f60ab3" } ] } } -
프로젝트 구성 편집 섹션의 단계에 따라 배치 가능한 아키텍처를 수정하십시오.
기존 키 사용 및 추가 키 작성
이 예에서는 키를 작성하고 기존 키도 사용합니다. test-kms 라는 Key Protect 인스턴스는 slz-slz-key, slz-atracker-key 및 slz-roks-key 라는 세 개의 키를 사용하여 작성됩니다. 또한 기존 slz-vsi-volume-key 키가 사용됩니다.
이 예제에서 기존 키는 KMS 인스턴스 없이 키를 가져오기 위해 CRN으로 식별됩니다. 또는 기존 KMS에서 키 작성 예제에서와 같이 "use_data": true 를 설정할 수 있습니다. 기존 키 CRN을 사용하는 경우 block-storage, cloud-object-storage 및 secrets-manager 가 외부 계정의 KMS에 액세스할 수 있도록 하는 인증 정책이 있어야 합니다. 자세한 정보는 서비스 간 액세스 권한을 부여하기 위해 권한 사용을 참조하십시오.
-
다음 JSON을 복사하십시오.
{ "key_management": { "keys": [ { "key_ring": "slz-slz-ring", "name": "slz-slz-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-atracker-key", "root_key": true }, { "key_ring": "slz-slz-ring", "name": "slz-roks-key", "root_key": true }, { "name": "slz-vsi-volume-key", "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:8c2ac54e-ac85-47da-8d03-06acb7f60ab3" } ], "name": "test-kms", "resource_group": "testrg" } } -
프로젝트 구성 편집 섹션의 단계에 따라 배치 가능한 아키텍처를 수정하십시오.
프로젝트 구성 편집
다음 단계를 예제와 함께 사용하여 배치 가능한 아키텍처의 구성을 대체하십시오.
-
JSON 예제를 복사하십시오. 사용자의 요구에 맞게 수정하십시오.
-
배치 가능한 아키텍처의 override_json_string 입력 변수에 JSON을 추가하십시오.
- 프로젝트 페이지로 이동하여 프로젝트를 선택하십시오.
- 구성 탭으로 이동하여 배치 가능한 아키텍처 구성을 선택하십시오.
- 편집을 클릭하십시오.
- 구성 섹션에서 선택사항 패널을 클릭하십시오.
- override_json_string 을 찾고 JSON 편집을 클릭하십시오.
- 이전에 복사한 이 JSON을 붙여넣고 저장 을 클릭하십시오.
-
변경사항의 유효성을 검증하고 승인하십시오.