Confidential Space 개요


Confidential Space는 민감한 데이터를 처리할 수 있는 격리된 환경을 제공하면서 데이터 소유자가 기밀성을 유지할 수 있도록 합니다. 민감한 정보에는 개인 식별 정보 (PII), 보호 건강 정보(PHI), 지적 재산, 암호화된 보안 비밀, 머신러닝 (ML) 모델 등이 포함될 수 있습니다.

Confidential Space를 사용하여 원래 소유자와 상호 합의된 워크로드에만 표시되는 민감한 정보를 처리할 수 있습니다. 또는 Confidential Space 환경의 운영자 또는 소유자가 처리 중인 데이터에 액세스할 수 없으므로 이를 사용하여 최종 고객에게 더 강력한 데이터 개인 정보 보호를 제공할 수 있습니다.

Confidential Space는 승인된 워크로드에만 보안 비밀을 해제하는 데 사용할 수 있는 신뢰할 수 있는 실행 환경 (TEE)을 사용합니다. 증명 프로세스와 강화된 OS 이미지는 워크로드가 운영자로부터 처리하는 워크로드와 데이터를 보호하는 데 도움이 됩니다.

Confidential Space의 사용 사례와 보안 모델에 관한 자세한 내용은 Confidential Space 보안 개요를 참고하세요.

Confidential Space 구성요소

Confidential Space 시스템에는 세 가지 핵심 구성요소가 있습니다.

  • 워크로드: 보호된 리소스를 처리하는 코드가 포함된 컨테이너화된 이미지입니다. 이는 Container-Optimized OS를 기반으로 강화된 OS인 Confidential Space 이미지에서 실행됩니다. 이는 하드웨어 격리 및 원격 증명 기능을 제공하는 클라우드 기반 TEE인 AMD SEV 또는 Intel TDX (미리보기) 컨피덴셜 VM에서 실행됩니다. 워크로드는 보호된 리소스와 별도의 프로젝트에 있습니다.

  • 증명 서비스: OpenID Connect(OIDC) 토큰 형식으로 증명 증거를 반환하는 원격 증명 검사기입니다. 토큰에는 워크로드의 식별 속성이 포함되어 있습니다. 증명 서비스는 워크로드가 실행되는 리전과 동일한 리전에서 실행됩니다.

  • 보호된 리소스: 인증 및 승인 시스템으로 보호되는 관리형 리소스입니다. 리소스가 Google Cloud에 있는 경우 Cloud Key Management Service (Cloud KMS) 키 또는 Cloud Storage 버킷과 같은 관리형 클라우드 리소스일 수 있습니다. 리소스가 Google Cloud에 있지 않은 경우(예: 온프레미스 환경 또는 다른 클라우드에 있는 경우) 어떤 리소스든 될 수 있습니다.

Confidential Space 역할

Confidential Space 시스템의 구성요소는 다음과 같은 세 가지 고유한 역할이 있는 사용자가 관리합니다.

  • 데이터 공동작업자: 워크로드에서 작업하는 보호된 리소스를 소유한 사용자 또는 조직입니다. 데이터 공동작업자는 자신의 데이터에 액세스하고, 이 데이터에 대한 권한을 설정할 수 있으며, 워크로드의 출력에 따라 해당 데이터를 기반으로 결과에 액세스할 수 있습니다.

    데이터 공동작업자는 서로의 데이터에 액세스하거나 워크로드 코드를 수정할 수 없습니다.

    데이터 공동작업자의 역할에 대해 자세히 알아보려면 기밀 리소스 만들기 및 액세스 권한 부여를 참고하세요.

  • 워크로드 작성자: 기밀 정보에 액세스하고 처리하는 애플리케이션을 만드는 사람입니다. Docker를 사용하여 컨테이너화된 이미지에 애플리케이션을 추가하고 Artifact Registry에 이미지를 업로드합니다.

    워크로드 작성자는 데이터 또는 결과에 액세스할 수 없으며 액세스 권한도 제어할 수 없습니다.

    워크로드 작성자의 역할에 대해 자세히 알아보려면 워크로드 만들기 및 맞춤설정을 참고하세요.

  • 워크로드 운영자: 워크로드를 실행하는 사용자입니다. 워크로드 운영자에게는 일반적으로 워크로드를 실행하는 프로젝트에 대한 전체 관리 권한이 있습니다. 예를 들어 프로젝트의 리소스(예: Compute Engine 인스턴스, 디스크, 네트워킹 규칙)를 관리하고 여기에서 작동하는 Google Cloud API와 상호작용할 수 있습니다.

    워크로드 운영자는 데이터에 액세스할 수 없으며 데이터에 대한 액세스를 제어할 수도 없습니다. 워크로드 코드 또는 실행 환경에 영향을 주거나 이를 수정할 수 없습니다.

    워크로드 운영자의 역할에 관한 자세한 내용은 워크로드 배포를 참고하세요.

한 사람이 이러한 역할 중 하나 이상을 맡을 수 있습니다. Confidential Space는 최고 수준의 보안을 위해 데이터 공동작업자, 워크로드 작성자, 워크로드 운영자가 서로 신뢰하지 않는 별도의 당사자인 신뢰 모델을 지원합니다. 모든 역할은 필요한 결과를 얻기 위해 서로 협력해야 합니다.

Confidential Space 흐름의 예

Confidential Space는 여러 Google Cloud 서비스를 활용하여 비공개 정보를 비공개로 운영합니다. 일반적으로 Confidential Space를 설정하는 과정은 다음과 비슷합니다.

  1. 여러 데이터 공동작업자가 각자의 격리된 Google Cloud 프로젝트(종종 서로 다른 조직에 있음)에 암호화된 기밀 데이터를 저장합니다. 서로 또는 외부에 공개하지 않고 이러한 데이터를 비교하고 처리하려고 합니다. 암호화된 데이터는 Cloud Storage, BigQuery 또는 다른 서비스에 있을 수 있습니다.

  2. 데이터 공동작업자는 테스트 워크로드가 작동할 비기밀 모의 데이터를 만듭니다. 이 데이터는 다른 파일일 수도 있고 별도의 Cloud Storage 버킷과 같이 다른 위치에 있을 수도 있습니다.

  3. 데이터 공동작업자는 각 프로젝트에서 데이터를 복호화할 수 있는 서비스 계정을 만듭니다. 이러한 서비스 계정을 워크로드 아이덴티티 풀 (WIP)에 연결합니다. 나중에 워크로드 운영자의 별도의 격리된 프로젝트에서 실행되는 워크로드는 특정 조건을 통과하는 경우 해당 WIP를 사용하여 복호화 서비스 계정을 명의 도용할 수 있습니다.

  4. 워크로드 작성자는 기밀 데이터를 처리하는 코드를 작성합니다. 데이터 공동작업자 및 워크로드 운영자와 별도의 프로젝트에서 Docker를 사용하여 컨테이너화된 이미지를 빌드하고 Artifact Registry에 업로드합니다.

  5. 워크로드 운영자는 격리된 프로젝트에서 데이터 공동작업자의 암호화된 기밀 데이터가 저장된 위치에 대한 읽기 액세스 권한과 어딘가 (예: Cloud Storage 버킷)에 대한 쓰기 액세스 권한을 갖는 서비스 계정을 만들어 암호화 해제된 데이터에 대한 작업 결과를 출력합니다. 나중에 이 서비스 계정은 워크로드를 실행하는 컨피덴셜 VM에 연결됩니다.

  6. 데이터 공동작업자는 Confidential Space 증명 확인자를 워크로드 아이덴티티 풀에 제공자로 추가합니다. 또한 데이터에 액세스하고 복호화할 수 있도록 워크로드가 통과해야 하는 속성 조건을 제공업체에 추가합니다. 이러한 조건에는 워크로드 VM의 증명, 워크로드의 이미지 다이제스트, 환경 변수가 설정되었는지 여부 등이 포함됩니다. 자세한 내용은 증명 어설션을 참고하세요.

  7. 워크로드 운영자의 프로젝트에서 컨피덴셜 VM을 시작하여 비민감한 데이터에서 워크로드를 테스트합니다. VM은 컨테이너화된 워크로드를 로드하는 Confidential Space 이미지의 디버그 버전을 기반으로 합니다.

    VM의 증명이 확인되고 워크로드가 데이터 공동작업자의 조건을 통과하면 VM에 연결된 서비스 계정이 복호화 서비스 계정을 명의 도용하도록 허용됩니다. 데이터 공동작업자 서비스 계정은 복호화된 데이터를 워크로드 서비스 계정으로 전달하고, 워크로드 서비스 계정은 이 데이터를 처리한 후 결과를 출력합니다.

  8. 모니터링 및 디버깅이 완료되면 프로덕션용으로 워크로드가 업데이트됩니다. 데이터 공동작업자는 필요한 경우 워크로드 ID 제공업체를 업데이트하고 잠그며, 비기밀 데이터에서 프로덕션 워크로드를 먼저 테스트할 수도 있습니다.

  9. 모든 당사자가 프로덕션 워크로드를 승인하면 기밀 데이터 작업을 시작할 수 있습니다.

요구사항

Confidential Space가 작동하려면 컨피덴셜 VM 및 Certificate Authority Service가 필요합니다.

  • 컨피덴셜 VM 인스턴스는 컨피덴셜 컴퓨팅 기술로 AMD SEV 또는 Intel TDX(미리보기)를 사용해야 합니다. 하드웨어 구성 옵션과 컨피덴셜 VM 인스턴스를 만들 수 있는 위치에 대해 알아보려면 지원되는 구성을 참고하세요.

  • Certificate Authority Service는 특정 위치에서 사용할 수 있습니다. 자세한 내용은 인증 기관 서비스 위치를 참고하세요.

다음 단계