Certificate Authority Service 개요

Certificate Authority Service(CA Service)는 비공개 인증 기관(CA)의 배포, 관리, 보안을 간소화하고 자동화할 수 있는 확장성이 뛰어난 Google Cloud 서비스입니다. 비공개 CA는 항목 ID, 발급자 ID, 암호화 서명을 포함하는 디지털 인증서를 발급합니다. 비공개 인증서는 네트워크를 통해 사용자, 머신, 서비스를 인증하는 가장 일반적인 방법 중 하나입니다. 비공개 인증서는 DevOps 환경에서 컨테이너, 마이크로서비스, 가상 머신, 서비스 계정을 보호하는 데 사용되는 경우가 많습니다.

CA Service를 사용하여 다음을 수행할 수 있습니다.

  • 커스텀 루트 및 하위 CA를 만듭니다.
  • CA의 제목, 키 알고리즘, 위치를 정의합니다.
  • 루트 CA의 리전과 독립적인 하위 CA의 리전을 선택합니다.
  • 일반적인 인증서 발급 시나리오를 위해 재사용 및 매개변수화된 템플릿을 만듭니다.
  • 자체 루트 CA를 가져오고 온프레미스 또는 Google Cloud 외부의 다른 위치에서 실행되는 기존 루트 CA에 연결할 수 있도록 다른 CA를 구성합니다.
  • FIPS 140-2 Level 3 인증을 받았으며 미주, 유럽, 아시아 태평양의 여러 리전에서 지원되는 Cloud HSM을 사용해 비공개 CA 키를 저장할 수 있습니다.
  • Cloud 감사 로그로 로그를 얻고 누가 언제 어디에서 무엇을 했는지 파악할 수 있습니다.
  • Identity and Access Management(IAM)로 세분화된 액세스 제어와 VPC 서비스 제어로 가상 보안 경계를 정의합니다.
  • CA Service는 CA(DevOps 등급)별로 초당 최대 25개의 인증서 발급을 지원하므로 많은 양의 인증서를 관리할 수 있습니다. 즉, 각 CA는 수백만 개의 인증서를 발급할 수 있습니다. CA 풀이라는 하나의 발급 엔드포인트 뒤에 여러 CA를 만들고 수신되는 인증서 요청을 모든 CA에 배포할 수 있습니다. 이 기능을 사용하면 초당 최대 100개의 인증서를 효과적으로 발급할 수 있습니다.
  • API, Google Cloud CLI, Google Cloud 콘솔, Terraform 등 자신에게 가장 편리한 방법으로 비공개 CA를 관리, 자동화, 통합할 수 있습니다.

인증서 사용 사례

비공개 CA를 사용하여 다음 사용 사례에서 인증서를 발급할 수 있습니다.

  • 소프트웨어 공급망 무결성 및 코드 ID: 코드 서명, 아티팩트 인증, 애플리케이션 ID 인증서입니다.
  • 사용자 ID: 제로 트러스트 네트워킹, VPN, 문서 서명, 이메일, 스마트 카드 등의 사용자 ID로 사용되는 클라이언트 인증 인증서입니다.
  • IoT 및 휴대기기 ID: 기기 ID 및 인증으로 사용되는 클라이언트 인증 인증서(예: 무선 액세스)입니다.
  • 서비스 내 ID: 마이크로서비스에서 사용하는 mTLS 인증서입니다.
  • 지속적 통합 및 지속적 배포(CI/CD) 채널: 코드 무결성 및 보안을 개선하기 위해 CI/CD 빌드 전체에 사용되는 코드 서명 인증서입니다.
  • Kubernetes 및 Istio: Kubernetes 및 Istio 구성요소 간의 연결을 보호하는 인증서입니다.

비공개 PKI를 선택해야 하는 이유

일반적인 웹 공개 키 인프라(PKI)에서 전 세계 수백만 개의 클라이언트가 독립 인증 기관(CA) 집합을 신뢰하여 인증서의 ID(예: 도메인 이름)를 어설션합니다. CA는 책임의 일환으로 해당 인증서의 ID를 독립적으로 검증했을 때에만 인증서 발급을 커밋합니다. 예를 들어 CA는 일반적으로 도메인 이름 example.com에 대한 인증서를 요청하는 사람이 인증서를 발급하기 전에 실제로 해당 도메인을 제어하는지 확인해야 합니다. 이러한 CA는 기존에 직접적인 관계가 없는 수백만 명의 고객을 위해 인증서를 발급할 수 있으므로 공개적으로 확인 가능한 ID를 어설션하는 것으로 제한됩니다. 이러한 CA는 웹 PKI 전반에서 일관되게 적용되는 잘 정의된 특정 인증 절차로 제한됩니다.

웹 PKI와 달리 비공개 PKI는 조직에서 직접 관리하는 더 작은 CA 계층 구조를 포함하는 경우가 많습니다. 비공개 PKI는 조직 내에서 적절한 제어 권한(예: 해당 조직이 소유한 머신)을 갖도록 신뢰할 수 있는 클라이언트에만 인증서를 전송합니다. CA 관리자는 인증서를 발급하는 고유 ID를 검증하는 방식(예: 고유 직원에게 인증서 발급)을 갖고 있기 때문에 웹 PKI와 동일한 요구사항으로 제한되지 않습니다. 이러한 유연성은 웹 PKI에 비해 비공개 PKI가 갖는 주요 이점 중 하나입니다. 비공개 PKI는 해당 이름에 대한 고유한 소유권을 요구하지 않고 짧은 도메인 이름을 가진 내부 웹사이트를 보호하거나, 인증서에 대체 ID 형식(예: SPIFFE ID)을 인코딩하는 등 새로운 사용 사례를 지원합니다.

또한 웹 PKI의 경우 모든 CA가 공개 인증서 투명성 로그에 발급된 모든 인증서를 로깅해야 합니다. 이는 내부 서비스에 인증서를 발급하는 조직에는 필요하지 않을 수 있습니다. 비공개 PKI를 사용하면 조직에서 네트워크 서비스 또는 애플리케이션의 이름과 같은 내부 인프라 토폴로지를 다른 곳에서 비공개로 유지할 수 있습니다.

다음 단계