API 액세스

클라이언트는 REST API를 통해 Cloud Key Management Service에 액세스할 수 있습니다. 따라서 HTTP 요청 전송을 지원하는 모든 언어에서 API에 액세스할 수 있습니다. 그러나 사용자 대부분은 모국어에 기반한 클라이언트 라이브러리를 선호합니다.

클라이언트는 장기적으로는 성능 개선을 위해서는 gRPC를 사용하는 것이 좋지만, 개발자는 기존 Google API 클라이언트 라이브러리에 더 익숙할 수도 있습니다. 따라서 현재는 REST API를 기반으로 구축된 라이브러리를 사용할 것을 권장합니다.

키 관리 작업을 허용하는 Google Cloud Console의 Cloud KMS용 웹 기반 인터페이스도 있습니다. 암호화 및 복호화 작업은 웹 인터페이스에서 수행할 수 없습니다.

Google은 모든 언어와 플랫폼에서 편리하게 Cloud KMS에 액세스할 수 있도록 노력을 지속할 것입니다. 개선이 필요한 부분이 있다면 알려주세요.

플랫폼

클라이언트에서 API에 액세스하는 방법은 코드가 실행 중인 플랫폼에 따라, 특히 인증과 관련하여 다소 다를 수 있습니다. Google 애플리케이션 기본 사용자 인증 정보는 이러한 차이점 대부분을 무시하지만 여전히 유의해야 할 몇 가지 사항이 있습니다.

Compute Engine 및 Google Kubernetes Engine

Google Kubernetes Engine 노드를 포함하여 Compute Engine에서 실행되는 소프트웨어는 일반적으로 기본 서비스 계정을 사용하여 환경에 자동으로 프로비저닝되는 사용자 인증 정보로 인증합니다. Cloud KMS에서도 마찬가지입니다. 인스턴스를 만들 때 https://www.googleapis.com/auth/cloudkms(최소 권한 원칙에 따르므로 선호) 또는 https://www.googleapis.com/auth/cloud-platform OAuth 범위에 대한 액세스 권한을 부여해야 합니다.

예를 들면 다음과 같습니다.

gcloud compute instances create "instance-1" \
    --zone "us-east1-b" \
    --scopes "https://www.googleapis.com/auth/cloudkms"

자세한 내용은 Compute Engine 문서 또는 GKE 문서를 참조하세요.

App Engine

App Engine에서 Cloud KMS를 사용하려면 다음 안내를 따르세요.

  1. App Engine 서비스 계정(PROJECT_NAME@appspot.gserviceaccount.com)에 키를 관리하거나 사용할 수 있는 ID 및 액세스 관리 권한을 부여합니다.
  2. 애플리케이션 기본 사용자 인증 정보를 사용하고 https://www.googleapis.com/auth/cloudkms 범위를 지정합니다. https://www.googleapis.com/auth/cloud-platform 범위를 지정할 수도 있지만 Cloud KMS보다 더 넓은 범위가 포함됩니다.

자세한 내용은 App Engine 문서의 API 액세스액세스 제어를 참조하세요.

온프레미스 프로덕션 환경

온프레미스 프로덕션 환경의 경우 Cloud KMS를 비롯한 Google Cloud API를 인증하려면 서비스 계정을 사용하는 것이 좋습니다. 서비스 계정 사용 방법에 대한 자세한 내용은 인증 시작하기를 참조하세요.

클라이언트 인증

애플리케이션에서 사용자를 직접 인증해야 하는 경우 사용자를 대신하여 사용자 인증 정보를 획득 및 사용할 수 있습니다. 자세한 내용은 최종 사용자로 인증을 참조하세요.

개발자 워크스테이션

서비스 계정을 사용한 인증은 개발자 워크스테이션에서도 권장되는 방법입니다. 서비스 계정 사용 방법에 대한 자세한 내용은 인증 시작하기를 참조하세요.

Google에서 관리하지 않는 프로덕션 환경

Google에서 관리하지 않는 환경의 경우 다음을 수행해야 합니다.

  1. 서비스 계정 만들기
  2. 이 서비스 계정을 위한 JSON 키 파일을 다운로드합니다.
  3. 이 키 파일을 프로덕션 환경에 프로비저닝합니다.
  4. 코드에서 키 파일의 사용자 인증 정보를 로드합니다.

이 프로세스는 Cloud ID 문서에 자세히 설명되어 있습니다.