키 링 관리

Hyper Protect Crypto Services을(를) 사용하여 동일한 IAM(Cloud Identity and Access Management) 액세스 권한이 필요한 사용자의 대상 그룹에 대한 키 그룹을 작성할 수 있습니다.

계정 관리자의 경우 Hyper Protect Crypto Services 인스턴스의 키를 _키 링_이라는 그룹으로 번들링할 수 있습니다. 키 링은 동일한 IAM 액세스 권한이 필요한 서비스 인스턴스에 있는 키의 콜렉션입니다. 예를 들어 특정 키 그룹에 대한 특정 액세스 유형이 필요한 팀 구성원 그룹이 존재하는 경우 해당 키에 대한 키 링을 작성한 후 대상 사용자 그룹에 적절한 IAM 액세스 정책을 지정할 수 있습니다. 키 링에 대한 액세스 권한이 지정된 사용자는 키 링 내에 존재하는 리소스를 작성하고 관리할 수 있습니다.

키 링은 하나의 비즈니스 장치에서 다른 비즈니스 장치가 보유할 수 없는 키 세트에 액세스할 수 있도록 하는 것이 중요한 경우에도 유용합니다. 계정 관리자는 각각의 비즈니스 장치를 위한 키 링을 작성한 후 적절한 사용자에게 적절한 액세스 레벨을 지정할 수 있습니다. 계정 관리자가 특정 키 링의 플랫폼 관리를 다른 사용자에게 위임하려는 경우 특정 사용자에게 키 링 레벨의 플랫폼 관리자 역할을 지정할 수 있습니다. 이제 하위 관리자가 키 링을 관리하고 적절한 사용자에게 액세스 권한을 부여할 수 있습니다.

UI, IAM API 또는 IAM CLI를 사용하여 Hyper Protect Crypto Services 인스턴스 내의 키 링에 대한 액세스 권한을 부여할 수 있습니다.

Hyper Protect Crypto Services 인스턴스를 위한 키 링을 작성하기 전에 다음과 같은 고려사항에 유의하십시오.

  • 모든 Hyper Protect Crypto Services 인스턴스는 기본 키 링과 함께 제공됩니다.

    새로 작성된 각각의 Hyper Protect Crypto Services 인스턴스는 ID가 default인 생성된 키 링과 함께 제공됩니다. 지정된 키 링과 연관되지 않은 모든 키는 기본 키 링 내에 존재합니다.

  • 키 링은 루트 키 및 표준 키를 보유할 수 있지만 EP11 키는 보유할 수 없습니다.

    키 링에는 루트 및 표준 키가 모두 포함될 수 있습니다. 키 링 내에 존재하는 키의 수에는 제한이 없습니다. EP11(Enterprise PKCS #11) 키에는 키 링이 적용되지 않습니다.

  • 키는 한 번에 하나의 키 링에만 속할 수 있습니다.

    키는 하나의 키 링에만 속할 수 있습니다. 키 링 지정은 키 작성 시 수행됩니다. 작성 시 키 링 ID가 전달되지 않을 경우 해당 키는 기본 키 링에 속하게 됩니다. 키 작성 후 키 링을 업데이트할 수 있습니다.

  • 서비스 인스턴스에서 키 링 및 EP11 키 저장소를 포함하여 최대 5개의 키 저장소를 작성할 수 있습니다. 서비스 인스턴스의 최대 키 링 수는 50입니다.

    각 추가 키 링 또는 EP11 키 저장소에는 매월 미화 225달러부터 시작하는 계층화된 가격 책정이 부과됩니다. 가격 책정에 대한 자세한 정보는 가격 책정 샘플을 참조하십시오.

키 링 작성

키 링으로 키를 그룹화하려면 먼저 키 링을 작성해야 합니다. UI 또는 키 관리 서비스 API를 사용하여 키 링을 작성할 수 있습니다.

서비스 인스턴스에서 키 링 및 EP11 키 저장소를 포함하여 최대 5개의 키 저장소를 작성할 수 있습니다. 각 추가 키 링 또는 EP11 키 저장소에는 매월 미화 225달러부터 시작하는 계층화된 가격 책정이 부과됩니다.

UI를 사용하여 키 링 작성

다음 단계를 완료하여 UI로키 링을 작성하십시오.

  1. UI에 로그인하십시오.

  2. 메뉴 > 리소스 목록으로 이동하여 리소스 목록을 보십시오.

  3. IBM Cloud 리소스 목록에서 Hyper Protect Crypto Services의 프로비저닝된 인스턴스를 선택하십시오.

  4. 새 키 링을 작성하려면 사이드 메뉴에서 KMS키 링 탭을 선택하십시오.

  5. 키 관리 서비스 키 링 테이블에서 키 링 추가를 클릭하십시오.

    서비스 인스턴스에서 키 링 및 EP11 키 저장소를 포함하여 최대 5개의 키 저장소를 작성할 수 있습니다. 각 추가 키 링 또는 EP11 키 저장소에는 매월 미화 225달러부터 시작하는 계층화된 가격 책정이 부과됩니다.

  6. 키 링 ID 를 입력한 후 키 링 추가를 클릭하십시오.

API를 사용하여 키 링 작성

다음 엔드포인트에 대한 POST 호출을 작성하여 키 링을 작성하십시오.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/key_rings
  1. 인증용 인증 정보를 검색하여 서비스에서 키에 대한 작업을 수행하십시오.

  2. 다음 curl 명령을 실행하여 키 링을 작성하십시오.

    $ curl -X POST \
        "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/key_rings/<key_ring_id>" \
        -H "authorization: Bearer <IAM_token>" \
        -H "bluemix-instance: <instance_ID>" \
        -H "correlation-id: <correlation_ID>"
    

    다음 표에 따라 예제 요청의 변수를 대체하십시오.

    표 1. 키 관리 서비스 API를 사용하여 키 링을 작성하는 데 필요한 변수를 설명합니다.
    가변 설명
    region 필수입니다. Hyper Protect Crypto Services 인스턴스가 상주하는 지리적 영역을 나타내는 지역 약어 (예: us-south) 입니다. 자세한 정보는 지역 서비스 엔드포인트를 참조하십시오.
    port 필수입니다. API 엔드포인트의 포트 번호입니다.
    key_ring_id 필수입니다. 작성할 키 링의 고유 ID입니다.
    IAM_token 필수입니다. 사용자의 IBM Cloud 액세스 토큰입니다. Bearer값을 포함하여 IAM 토큰의 전체 컨텐츠를 curl 요청에 포함시키십시오. 자세한 정보는 액세스 토큰 검색을 참조하십시오.
    instance_ID 필수입니다. Hyper Protect Crypto Services 서비스 인스턴스에 지정된 고유 ID입니다. 자세한 정보는 인스턴스 ID 검색을 참조하십시오.
    correlation_ID 트랜잭션을 추적하고 상관시키는 데 사용되는 고유 ID입니다.

    성공적인 POST api/v2/key_rings 요청의 경우 키 링이 작성되어 이제 표준 및 루트 키를 보유할 수 있음을 나타내는 HTTP 201 Created 응답이 리턴됩니다.

키를 다른 키 링으로 전송

요구사항이 변경되고 새 팀 구성원이 조직으로 이동되면 해당 조직 변경사항을 반영하도록 새 키 링을 작성할 수 있습니다. 키 링을 작성한 후 기존 키 링에서 다른 IAM 권한이 있는 새 키 링으로 키를 이동해야 할 수도 있습니다. 예를 들어 기본 이외의 사용자 정의 키 링에 속한 키에 대한 특정 액세스가 필요한 팀을 온보딩할 수 있습니다. 온보딩 팀 전용의 새 키 링을 작성할 수 있습니다. 키는 한 번에 하나의 키 링과만 연관될 수 있으므로 키를 새 키 링으로 이동해야 합니다.

키를 다른 키 링으로 전송한 후 변경사항이 적용될 때까지 최대 10분 정도 소요될 수 있습니다.

UI를 사용하여 키를 다른 키 링으로 전송

다음 단계를 완료하여 UI를 통해 키를 다른 키 링으로 전송할 수 있습니다.

  1. UI에 로그인하십시오.
  2. 메뉴 > 리소스 목록으로 이동하여 리소스 목록을 보십시오.
  3. IBM Cloud 리소스 목록에서 Hyper Protect Crypto Services의 프로비저닝된 인스턴스를 선택하십시오.
  4. 사이드 메뉴에서 KMS 키 탭을 선택하여 테이블을 여십시오.
  5. 목록에서 전송할 키를 찾은 후 조치 아이콘 조치 아이콘을 클릭하여 옵션 목록을 여십시오.
  6. 키 링 변경을 클릭하십시오.
  7. 키를 이동할 키 링 ID를 선택한 후 키 링 변경을 클릭하십시오.

API를 사용하여 키를 다른 키 링으로 전송

다음 엔드포인트에 대해 PATCH 호출을 수행하여 키를 다른 키 링으로 전송하십시오.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>
  1. 인증용 인증 정보를 검색하여 서비스에서 키에 대한 작업을 수행하십시오.

    키의 키 링을 업데이트하려면 키 및 대상 키 링에 대해 관리자 이상의 서비스 액세스 권한이 있어야 합니다. IAM 역할이 Hyper Protect Crypto Services 서비스 조치에 맵핑하는 방법을 알아보려면 서비스 액세스 역할을 확인하십시오.

  2. 다음 curl 명령을 실행하여 키의 키 링을 업데이트하십시오.

    $ curl -X PATCH \
      "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>" \
      -H 'accept: application/vnd.ibm.kms.key+json' \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'content-type: application/vnd.ibm.kms.key+json' \
      -H "x-kms-key-ring: <original_key_ring_ID>" \
      -H "correlation-id: <correlation_ID>" \
      -d '{
        "keyRingID": "<new_key_ring_ID>"
      }'
    

    다음 표에 따라 예제 요청의 변수를 대체하십시오.

    표 2. 키 관리 서비스 API를 사용하여 키의 키 링을 업데이트하는 데 필요한 변수를 설명합니다.
    가변 설명
    region 필수입니다. Hyper Protect Crypto Services 인스턴스가 상주하는 지리적 영역을 나타내는 지역 약어 (예: us-south) 입니다. 자세한 정보는 지역 서비스 엔드포인트를 참조하십시오.
    port 필수입니다. API 엔드포인트의 포트 번호입니다.
    IAM_token 필수입니다. 사용자의 IBM Cloud 액세스 토큰입니다. Bearer값을 포함하여 IAM 토큰의 전체 컨텐츠를 curl 요청에 포함시키십시오. 자세한 정보는 액세스 토큰 검색을 참조하십시오.
    instance_ID 필수입니다. Hyper Protect Crypto Services 서비스 인스턴스에 지정된 고유 ID입니다. 자세한 정보는 인스턴스 ID 검색을 참조하십시오.
    original_key_ring_ID 선택사항. 키가 속한 키 링의 고유 ID입니다. 지정되지 않은 경우 Hyper Protect Crypto Services은(는) 지정된 인스턴스와 연관된 모든 키 링에서 키를 검색합니다. 따라서 더욱 최적화된 요청을 위해 키 링 ID를 지정하는 것이 좋습니다.

    참고: x-kms-key-ring 헤더 없이 키를 작성하는 경우 키의 키 링은 default 입니다.

    correlation_ID 트랜잭션을 추적하고 상관시키는 데 사용되는 고유 ID입니다.
    new_key_ring_ID 필수입니다. 키를 이동할 대상 키 링의 고유 ID입니다.

    정상적인 PATCH api/v2/keys/key_ID 요청에서는 키가 속한 키 링의 ID를 포함하여 키의 메타데이터가 리턴됩니다.

    {
     "metadata": {
         "collectionType": "application/vnd.ibm.kms.key+json",
         "collectionTotal": 1
     },
     "resources": [
         {
             "type": "application/vnd.ibm.kms.key+json",
             "id": "02fd6835-6001-4482-a892-13bd2085f75d",
             "name": "test-root-key",
             "aliases": [
                 "alias-1",
                 "alias-2"
               ],
             "description": "A test root key",
             "state": 1,
             "extractable": false,
             "keyRingID": "new-key-ring",
             "crn": "crn:v1:bluemix:public:hs-crypto:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d",
             "imported": false,
             "creationDate": "2020-03-12T03:37:32Z",
             "createdBy": "...",
             "algorithmType": "AES",
             "algorithmMetadata": {
                 "bitLength": "256",
                 "mode": "CBC_PAD"
             },
             "algorithmBitSize": 256,
             "algorithmMode": "CBC_PAD",
             "lastUpdateDate": "2020-03-12T03:37:32Z",
             "keyVersion": {
                 "id": "2291e4ae-a14c-4af9-88f0-27c0cb2739e2",
                 "creationDate": "2020-03-12T03:37:32Z"
             },
             "dualAuthDelete": {
                 "enabled": false
             },
             "deleted": false
         }
     ]
    }
    

키 링에 대한 액세스 권한 부여

UI, IAM API또는 CLI를 사용하여 Hyper Protect Crypto Services 인스턴스 내의 키 링에 대한 액세스 권한을 부여할 수 있습니다.

IBM Cloud IAM 역할이 Hyper Protect Crypto Services 조치에 맵핑되는 방법을 알아보려면 역할 및 권한을 검토하십시오.

UI를 사용하여 키 링에 대한 액세스를 지정하려면 다음 단계를 완료하십시오.

  1. 메뉴 표시줄에서 관리 > **액세스(IAM)**를 클릭하고 사용자를 선택하여 계정의 기존 사용자를 찾아보십시오.
  2. 테이블에서 액세스 권한을 지정할 사용자를 선택한 후 조치 아이콘 조치 아이콘을 클릭하여 해당 사용자에 대한 옵션 목록을 여십시오.
  3. 옵션 메뉴에서 액세스 권한 지정을 클릭하십시오.
  4. 액세스 정책을 클릭하십시오.
  5. 서비스에서 Hyper Protect Crypto Services 를 선택하고 다음을 클릭하십시오.
  6. 자원에서 특정 자원을 선택하십시오.
  7. 서비스 인스턴스 ID 속성 유형을 선택하고 키 링이 상주하는 인스턴스의 ID를 입력하십시오.
  8. 조건 추가를 클릭하고 키 링 ID 속성을 선택하여 키 링과 연관된 ID를 입력한 후 다음을 클릭하십시오.
  9. 역할 및 조치에서 플랫폼 및 서비스 액세스 역할 의 조합을 선택하여 사용자에 대한 액세스를 지정하고 다음을 클릭하십시오.
  10. (선택사항) 조건 (선택사항) 에서 검토 를 클릭하여 액세스 정책을 확인하십시오.
  11. 확인 후 추가 > 지정을 클릭하십시오.

인스턴스 내에서 키 링을 나열, 작성 및 삭제하려면 해당 사용자에게 전체 인스턴스에 대한 독자 이상의 액세스 권한을 지정해야 합니다.

키 링 나열

UI 또는 키 관리 KPI를 사용하여 Hyper Protect Crypto Services 의 프로비저닝된 인스턴스에서 관리되는 키 링을 찾아볼 수 있습니다.

UI를 사용하여 키 링 나열

UI를 사용하여 키 링을 찾아보려면 다음 단계를 완료하십시오.

  1. UI에 로그인하십시오.
  2. 메뉴 > 리소스 목록으로 이동하여 리소스 목록을 보십시오.
  3. IBM Cloud 리소스 목록에서 Hyper Protect Crypto Services의 프로비저닝된 인스턴스를 선택하십시오.
  4. 키 링을 탐색하려면 사이드 메뉴에서 KMS키 링 탭을 선택하십시오.

키 링 테이블에는 다음과 같은 정보가 포함되어 있습니다.

표 3. 키 링 테이블의 열을 설명합니다.
컬럼 설명
키 링 ID 키 링 작성 시 지정된 고유 ID입니다.
마지막 업데이트 날짜 키 링이 마지막으로 업데이트된 날짜 및 시간입니다. 이 필드는 키 링이 작성되거나 수정될 때 업데이트됩니다.
작성 날짜 키 링이 작성된 날짜 및 시간입니다.

API를 사용하여 키 링 나열

다음 엔드포인트에 대한 GET 호출을 작성하여 키 링을 탐색할 수 있습니다.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/key_rings
  1. 인증용 인증 정보를 검색하여 서비스에서 키에 대한 작업을 수행하십시오.

  2. 다음 curl 명령을 실행하여 키 링에 대한 일반 특성을 확인하십시오.

    $ curl -X GET \
        "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/key_rings" \
        -H "accept: application/vnd.ibm.kms.key_ring+json" \
        -H "authorization: Bearer <IAM_token>" \
        -H "bluemix-instance: <instance_ID>" \
        -H "correlation-id: <correlation_ID>"
    

    다음 표에 따라 예제 요청의 변수를 대체하십시오.

    표 4. 키 관리 서비스 API를 사용하여 키 링을 보는 데 필요한 변수를 설명합니다.
    가변 설명
    region 필수입니다. Hyper Protect Crypto Services 인스턴스가 상주하는 지리적 영역을 나타내는 지역 약어 (예: us-south) 입니다. 자세한 정보는 지역 서비스 엔드포인트를 참조하십시오.
    port 필수입니다. API 엔드포인트의 포트 번호입니다.
    IAM_token 필수입니다. 사용자의 IBM Cloud 액세스 토큰입니다. Bearer값을 포함하여 IAM 토큰의 전체 컨텐츠를 curl 요청에 포함시키십시오. 자세한 정보는 액세스 토큰 검색을 참조하십시오.
    instance_ID 필수입니다. Hyper Protect Crypto Services 인스턴스에 지정된 고유 ID입니다. 자세한 정보는 인스턴스 ID 검색을 참조하십시오.
    correlation_ID 트랜잭션을 추적하고 상관시키는 데 사용되는 고유 ID입니다.

    성공적인 GET api/v2/key_rings 요청의 경우 Hyper Protect Crypto Services 서비스 인스턴스에서 사용 가능한 키 링의 콜렉션이 리턴됩니다.

    {
        "metadata": {
            "collectionType": "application/vnd.ibm.kms.key_ring+json",
            "collectionTotal": 2
        },
        "resources": [
            {
                "id": "default"
            },
            {
                "id": "Sample Key Ring 2",
                "creationDate": "2020-03-12T11:00:06Z",
                "createdBy": "..."
            }
        ]
    }
    

키 링 삭제

UI 또는 키 관리 서비스 API를 사용하여 키 링을 삭제할 수 있습니다.

default 키 링은 삭제할 수 없습니다. 또한 키 링에 키 상태 (영구 삭제됨 상태의 키 포함) 에 관계없이 하나 이상의 키가 포함되어 있는 경우에도 키 링을 삭제할 수 없습니다.

UI를 사용하여 키 링 삭제

UI를 사용하여 키 링을 삭제하려면 다음 단계를 완료하십시오.

  1. UI에 로그인하십시오.
  2. 메뉴 > 리소스 목록으로 이동하여 리소스 목록을 보십시오.
  3. IBM Cloud 리소스 목록에서 Hyper Protect Crypto Services의 프로비저닝된 인스턴스를 선택하십시오.
  4. 사이드 메뉴에서 KMS 키 링 탭을 선택하여 키 링을 찾으십시오.
  5. 삭제할 키 링을 찾아서 행 끝 부분에 있는 삭제 아이콘 삭제 아이콘을 클릭하십시오.
  6. 삭제를 확인한 후 키 링 삭제를 클릭하십시오.

API를 사용하여 키 링 삭제

다음 엔드포인트에 대한 DELETE 호출을 작성하여 키 링을 삭제할 수 있습니다.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/key_rings/<key_ring_id>
  1. 인증용 인증 정보를 검색하여 서비스에서 키에 대한 작업을 수행하십시오.

  2. 삭제할 키 링의 ID를 검색하십시오.

    키 링의 목록을 검색하여 Hyper Protect Crypto Services 인스턴스에 있는 키 링의 ID를 찾을 수 있습니다.

  3. 다음 curl 명령을 실행하여 키 링을 삭제하십시오.

    $ curl -X DELETE \
        "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/key_rings/<key_ring_id>" \
        -H "authorization: Bearer <IAM_token>" \
        -H "bluemix-instance: <instance_ID>" \
        -H "prefer: <return_preference>"
    

    다음 표에 따라 예제 요청의 변수를 대체하십시오.

    표 5. 키 관리 서비스 API를 사용하여 키를 삭제하는 데 필요한 변수에 대해 설명합니다.
    가변 설명
    region 필수입니다. Hyper Protect Crypto Services 인스턴스가 상주하는 지리적 영역을 나타내는 지역 약어 (예: us-south) 입니다. 자세한 정보는 지역 서비스 엔드포인트를 참조하십시오.
    port 필수입니다. API 엔드포인트의 포트 번호입니다.
    key_ring_id 필수입니다. 삭제할 키 링의 고유 ID입니다.
    IAM_token 필수입니다. 사용자의 IBM Cloud 액세스 토큰입니다. Bearer값을 포함하여 IAM 토큰의 전체 컨텐츠를 curl 요청에 포함시키십시오. 자세한 정보는 액세스 토큰 검색을 참조하십시오.
    instance_ID 필수입니다. Hyper Protect Crypto Services 서비스 인스턴스에 지정된 고유 ID입니다. 자세한 정보는 인스턴스 ID 검색을 참조하십시오.

    성공적인 요청의 경우 키 링이 정상적으로 삭제되었음을 나타내는 HTTP 204 No Content 응답이 리턴됩니다.