Hyper Protect Crypto Services 를 사용한 서버측 암호화

Hyper Protect Crypto Services 를 사용하여 키를 작성, 추가 및 관리할 수 있습니다. 그런 다음 IBM® Cloud Object Storage 의 인스턴스와 연관시켜 버킷을 암호화할 수 있습니다.

이 기능은 현재 Satellite용 Object Storage 에서 지원되지 않습니다. 자세히 보기

시작하기 전에

Cloud Object Storage 버킷과 함께 Hyper Protect Crypto Services 를 사용하기 전에 다음이 필요합니다.

IBM Cloud 카탈로그 를 사용하여 서비스 인스턴스가 작성되고 적절한 권한이 부여되었는지 확인해야 합니다. 이 섹션에서는 시작하는 데 도움이 되는 단계별 지시사항을 설명합니다.

Hyper Protect Crypto Services 의 인스턴스 프로비저닝

적절한 서비스 인스턴스를 프로비저닝하고 설정하는 방법에 대한 지시사항은 서비스별 제품 페이지를 참조하십시오.

Hyper Protect Crypto Services의 인스턴스가 있으면 루트 키를 작성하고 해당 키의 CRN (Cloud Resource Name) 을 기록해야 합니다. CRN은 버킷 작성 중에 헤더에서 전송됩니다.

Hyper Protect Crypto Services에서 사용할 버킷을 작성하기 전에 가용성 및 재해 복구 관련 지침 을 검토하십시오.

Hyper Protect Crypto Services 에서 키 작성 또는 추가

Hyper Protect Crypto Services의 인스턴스로 이동하여 서비스 인스턴스를 초기화하십시오. 마스터 키가 작성되었으면 루트 키를 생성하거나 입력하십시오.

서비스 권한 부여

IBM COS와 함께 사용하도록 Hyper Protect Crypto Services 에 권한을 부여하십시오.

  1. IBM Cloud 대시보드를 여십시오.
  2. 메뉴 표시줄에서 **관리 > 액세스(IAM)**를 클릭하십시오.
  3. 사이드 탐색에서 권한을 클릭하십시오.
  4. 작성 을 클릭하여 권한을 작성하십시오.
  5. 소스 서비스 메뉴에서 Cloud Object Storage를 선택하십시오.
  6. 소스 서비스 인스턴스 메뉴에서 권한 부여할 서비스 인스턴스를 선택하십시오.
  7. 대상 서비스 메뉴에서 Hyper Protect Crypto Services를 선택하십시오.
  8. 대상 서비스 인스턴스 메뉴에서 권한을 부여할 서비스 인스턴스를 선택하십시오.
  9. 독자 역할을 사용으로 설정하십시오.
  10. 권한 부여를 클릭하십시오.

버킷 작성

키가 Hyper Protect Crypto Services 에 있고 IBM COS에서 사용할 수 있도록 서비스에 권한을 부여한 경우 이제 키를 새 버킷과 연관시킬 수 있습니다.

  1. Object Storage의 인스턴스로 이동하십시오.
  2. 버킷 작성을 클릭하십시오.
  3. 사용자 정의 버킷을 선택하십시오.
  4. 버킷 이름을 입력하고 복원성을 선택한 후 (지역 및 미국 교차 지역만 현재 지원됨) 위치 및 스토리지 클래스를 선택하십시오.
  5. 서비스 통합에서 키 관리 사용 안함 을 토글하여 암호화 키 관리를 사용으로 설정하고 기존 인스턴스 사용을 클릭하십시오.
  6. 연관된 서비스 인스턴스 및 키를 선택하고 키 연관을 클릭하십시오.
  7. 정보가 올바른지 확인하십시오.
  8. 작성을 클릭하십시오.

Hyper Protect Crypto Services 를 사용하여 작성 시에만 버킷에 대한 암호화를 관리하도록 선택할 수 있습니다. Hyper Protect Crypto Services를 사용하도록 기존 버킷을 변경할 수 없습니다.

버킷 작성에 실패하고 400 Bad Request 메시지와 함께 The Key CRN could not be found 오류가 발생하면 CRN이 올바르고 서비스 간 인증 정책이 존재하는지 확인하십시오.

Buckets 목록에서 버킷에는 이제 Attributes 아래에 보기 링크가 있으며, 이는 버킷에서 Hyper Protect Crypto Services 키가 사용으로 설정되었음을 표시합니다. 다른 오브젝트 메타데이터와 함께 키 세부사항을 보려면 View 를 클릭하십시오.

Hyper Protect Crypto Services 를 사용하여 암호화된 오브젝트에 대해 리턴된 Etag 값은 원래 복호화된 오브젝트의 실제 MD5 해시가 됩니다.

REST API 또는 SDK (Go, Java, Node.js 또는 Python) 를 사용할 수도 있습니다.

교차 지역 버킷 작성

Hyper Protect Crypto Services 인스턴스의 루트 키를 사용하여 COS Cross Region 버킷을 작성하려면 해당 인스턴스가 장애 조치 구성으로 구성 되어야 합니다.

IBM Cloud 콘솔 또는 CLI를 사용하여 선택된 Hyper Protect Crypto Services 인스턴스에 대해 장애 복구가 올바르게 구성되었는지 확인할 수 있습니다.

IBM Cloud 콘솔에서 Hyper Protect Crypto Services 인스턴스로 이동하여 개요를 클릭하십시오. "장애 조치" 섹션은 해당 장애 조치 지역에서 암호화 단위의 상태를 표시합니다.

장애 복구 섹션이 있고 모든 유효성 검증 검사가 녹색이며 해당 Hyper Protect Crypto Services 인스턴스에 대한 경고가 없는지 확인하십시오. 오류 또는 경고가 표시되거나 장애 복구 섹션이 없는 경우 자세한 정보는 Hyper Protect Crypto Services 문서를 참조하십시오.

CLI를 사용하여 대상 리소스 그룹에 속하는 모든 인스턴스의 모든 암호화 단위를 나열할 수도 있습니다.

ibmcloud tke cryptounits

선택된 인스턴스에 대한 암호화 단위의 상태를 가져오려면 해당 인스턴스와 연관된 암호화 단위의 목록을 작성하고 비교하십시오.

ibmcloud tke cryptounit-add

단위를 선택한 후에는 확인 패턴을 확인할 수 있습니다.

ibmcloud tke cryptounit-compare

모두 유효하고 동일한 확인 패턴을 가지고 있는지 확인하십시오.

장애 복구 구성의 존재가 확인되면 해당 Hyper Protect Crypto Services 인스턴스의 키를 사용하여 Cross Region 버킷 작성을 진행할 수 있습니다.

Hyper Protect Crypto Services 루트 키를 사용하는 미국 교차 지역에서 교차 지역 버킷 작성이 500 오류로 실패하는 경우, 버킷 작성을 다시 시도하기 전에 해당 Hyper Protect Crypto Services 인스턴스에 대한 장애 복구 구성의 상태를 확인하는 것이 좋습니다 (위에 자세히 설명된 메소드 사용).

키 라이프사이클 관리

Hyper Protect Crypto Services 는 암호화 키의 라이프사이클을 관리하는 다양한 방법을 제공합니다. 자세한 정보는 Hyper Protect Crypto Services 문서 를 참조하십시오.

키 순환

키 순환은 데이터 위반의 위험을 완화하는 중요한 파트입니다. 주기적으로 키를 변경하면 키가 손실되거나 손상된 경우 잠재적인 데이터 손실이 줄어듭니다. 키 순환 빈도는 조직에 따라 다르며 환경, 암호화된 데이터 양, 데이터의 분류 및 규제 준수 법률과 같은 여러 변수에 따라 달라집니다. NIST(National Institute of Standards and Technology) 는 적절한 키 길이의 정의를 제공하고 키를 사용해야 하는 기간에 대한 지침을 제공합니다.

자세한 정보는 Hyper Protect Crypto Services 에서 순환 키에 대한 문서를 참조하십시오.

키 사용 안함 및 다시 사용

데이터에 대해 가능한 보안 노출, 손상 또는 위반을 의심하는 경우 관리자로서 일시적으로 루트 키를 사용 안함으로 설정해야 할 수 있습니다. 루트 키를 사용 안함으로 설정하면 해당 암호화 및 복호화 오퍼레이션이 일시중단됩니다. 보안 위험이 더 이상 활성 상태가 아님을 확인한 후 사용 안함으로 설정된 루트 키를 사용으로 설정하여 데이터에 대한 액세스를 다시 설정할 수 있습니다.

키 및 암호화 지우기 삭제

암호화 지우기 (또는 암호화 폐기) 는 데이터 자체가 아닌 암호화 키를 삭제 하여 암호화된 데이터를 읽을 수 없게 렌더링하는 방법입니다. 루트 키가 Hyper Protect Crypto Services 에서 삭제되면 해당 루트 키를 사용하여 작성된 버킷의 모든 오브젝트에 영향을 주어 데이터를 효과적으로 "폐기" 하고 버킷에 대한 추가 읽기 또는 쓰기를 방지합니다. 이 프로세스는 즉각적이지는 않지만 키가 삭제된 후 약 90초내에 발생합니다.

암호화된 폐기된 버킷의 오브젝트를 읽을 수 없고 새 오브젝트를 쓸 수 없어도 기존 오브젝트는 사용자가 삭제할 때까지 스토리지를 계속 사용합니다.

삭제된 키 복원

관리자로서 키가 이전에 보호했던 데이터에 액세스할 수 있도록 가져온 루트 키를 Hyper Protect Crypto Services 에 복원 해야 할 수 있습니다. 키를 복원할 때 키를 영구 삭제됨에서 활성 키 상태로 이동하고 키를 사용하여 이전에 암호화된 데이터에 대한 액세스를 복원합니다. 이는 키를 삭제한 후 30일 이내에 발생해야 합니다.

사용자가 원래 업로드한 키를 삭제한 후 다른 키 자료를 사용하여 복원하면 데이터가 유실됩니다. 올바른 키 자료를 복원에 사용할 수 있도록 n-5 키를 아카이브된 상태로 유지하는 것이 좋습니다.

Activity Tracking

Hyper Protect Crypto Services 루트 키가 삭제, 회전, 일시중단, 사용 또는 복원되면 Hyper Protect Crypto Services에 의해 로그된 이벤트 외에 Activity Tracker 관리 이벤트 (cloud-object-storage.bucket-key-state.update) 가 생성됩니다.

키에 대한 라이프사이클 조치에서 서버 측 장애가 발생하는 경우 해당 장애는 COS에 의해 로그되지 않습니다. Hyper Protect Crypto Services 가 이벤트 전송 후 4시간이내에 이벤트 처리를 위해 COS로부터 성공을 수신하지 못하는 경우, Hyper Protect Crypto Services 는 실패를 로그합니다.

cloud-object-storage.bucket-key-state.update 조치는 Hyper Protect Crypto Services에서 발생하는 이벤트에 의해 트리거되며, 버킷이 Hyper Protect Crypto Services 서비스에 등록되어야 합니다. 이 등록은 Hyper Protect Crypto Services 루트 키를 사용하여 버킷을 작성할 때 자동으로 발생합니다.

2020년 2월 26th이전에 작성된 버킷은 Hyper Protect Crypto Services 서비스에 등록되지 않으며 현재 암호화 키 라이프사이클 이벤트의 알림을 수신하지 않습니다. 이러한 버킷은 버킷 나열 조작 을 수행하고 버킷 작성 날짜를 확인하여 식별할 수 있습니다. 이러한 버킷에 Hyper Protect Crypto Services의 최신 키 상태가 있는지 확인하려면 영향을 받는 각 버킷의 오브젝트에서 일부 데이터 조작을 수행(예: PUT, GET 또는 HEAD ) 하는 것이 좋습니다. 키 상태가 Hyper Protect Crypto Services 상태와 적절하게 동기화되도록 하려면 오브젝트 조작을 최소한 한 시간 간격으로 두 번 수행하는 것이 좋습니다.

오브젝트 스토리지의 Activity Tracker 이벤트에 대한 자세한 정보는 참조 주제 를 참조하십시오.