클라이언트 측 암호화를 위한 커스텀 키 관리 서비스 빌드

Google Workspace에서 제공하는 암호화를 사용하는 대신 자체 암호화 키를 사용하여 조직의 데이터를 암호화할 수 있습니다. Google Workspace 클라이언트 측 암호화 (CSE)를 사용하면 파일 암호화가 Drive의 클라우드 기반 스토리지에 저장되기 전에 클라이언트의 브라우저에서 처리됩니다. 이렇게 하면 Google 서버가 암호화 키에 액세스할 수 없으므로 데이터를 복호화할 수 없습니다. 자세한 내용은 클라이언트 측 암호화에 관한 정보를 참고하세요.

이 API를 사용하면 커스텀 외부 키 관리 서비스로 데이터를 보호하는 최상위 암호화 키를 제어할 수 있습니다. 이 API로 외부 키 관리 서비스를 만든 후 Google Workspace 관리자가 이 API에 연결하고 사용자에 대해 CSE를 사용 설정할 수 있습니다.

중요 용어

다음은 Google Workspace Client-side Encryption API에서 사용되는 일반적인 용어 목록입니다.

클라이언트 측 암호화 (CSE)
클라우드 기반 스토리지에 저장되기 전에 클라이언트의 브라우저에서 처리되는 암호화입니다. 이렇게 하면 저장소 제공자가 파일을 읽을 수 없습니다. 자세히 알아보기
키 액세스 제어 목록 서비스 (KACLS)
이 API를 사용하여 외부 시스템에 저장된 암호화 키에 대한 액세스를 제어하는 외부 키 관리 서비스입니다.
ID 공급업체 (IdP)
사용자가 파일을 암호화하거나 암호화된 파일에 액세스하기 전에 사용자를 인증하는 서비스입니다.

암호화 및 복호화

데이터 암호화 키 (DEK)
브라우저 클라이언트에서 Google Workspace가 데이터 자체를 암호화하는 데 사용하는 키입니다.
키 암호화 키 (KEK)
데이터 암호화 키 (DEK)를 암호화하는 데 사용되는 서비스의 키입니다.

액세스 제어

액세스제어 목록 (ACL)
파일을 열거나 읽을 수 있는 사용자 또는 그룹 목록입니다.
인증 JSON 웹 토큰 (JWT)
사용자 ID를 증명하기 위해 ID 파트너 (IdP)에서 발급한 Bearer 토큰 (JWT: RFC 7516)입니다.
승인 JSON 웹 토큰 (JWT)
호출자가 리소스를 암호화하거나 복호화할 수 있는지 확인하기 위해 Google에서 발급한 Bearer 토큰 (JWT: RFC 7516)입니다.
JSON 웹 키 세트 (JWKS)
JSON 웹 토큰 (JWT)을 확인하는 데 사용되는 공개 키 목록을 가리키는 읽기 전용 엔드포인트 URL입니다.
경계
액세스 제어를 위해 KACLS 내의 인증 및 승인 토큰에 추가로 검사

클라이언트 측 암호화 프로세스

관리자가 조직에 CSE를 사용 설정하면 CSE가 사용 설정된 사용자는 Docs 및 Sheets와 같은 Google Workspace 공동작업 콘텐츠 생성 도구를 사용하여 암호화된 문서를 만들거나 PDF와 같은 Google Drive에 업로드하는 파일을 암호화하도록 선택할 수 있습니다.

사용자가 문서나 파일을 암호화한 후:

  1. Google Workspace는 클라이언트 브라우저에 DEK를 생성하여 콘텐츠를 암호화합니다.

  2. Google Workspace는 사용자가 Google Workspace 조직의 관리자에게 제공하는 URL을 사용하여 암호화를 위해 DEK 및 인증 토큰을 서드 파티 KACLS로 전송합니다.

  3. KACLS는 이 API를 사용하여 DEK를 암호화한 다음 난독화되고 암호화된 DEK를 다시 Google Workspace로 보냅니다.

  4. Google Workspace는 난독화되고 암호화된 데이터를 클라우드에 저장합니다. KACLS에 액세스할 수 있는 사용자만 데이터에 액세스할 수 있습니다.

자세한 내용은 파일 암호화 및 복호화하기를 참고하세요.

다음 단계