승인 토큰

호출자가 리소스를 암호화하거나 복호화할 권한이 있는지 확인하기 위해 Google에서 발급한 보유자 토큰 (JWT: RFC 7516)입니다.

악용을 방지하기 위해 키 액세스 제어 목록 서비스 (KACLS)는 호출자가 키를 래핑하기 전에 객체 (파일 또는 문서)를 암호화하고 DEK를 래핑 해제하기 전에 복호화할 권한이 있는지 확인해야 합니다.

Docs 및 Drive, Calendar, Meet 클라이언트 측 암호화 (CSE)의 승인 토큰

JSON 표현
{
  "aud": string,
  "email": string,
  "email_type": string,
  "exp": string,
  "iat": string,
  "iss": string,
  "kacls_url": string,
  "perimeter_id": string,
  "resource_name": string,
  "role": string
}
필드
aud

string

Google에서 식별한 잠재고객입니다. 로컬 구성을 기준으로 확인해야 합니다.

email

string (UTF-8)

사용자의 이메일 주소

email_type

string

다음 값 중 하나를 포함합니다.

  • google: 이 이메일은 Google 계정에 속합니다.
  • google-visitor: 이 이메일은 Google 계정에 속하지 않지만 Google에서 PIN 코드로 인증했습니다.
  • customer-idp: 이 이메일은 Google 계정에 속하지 않지만 고객이 구성한 IdP를 사용하여 사용자의 이메일이 추출되었습니다.
  • 이 주장은 설정하지 않을 수 있습니다. 이 경우 기본값은 `google`입니다.
exp

string

만료 시간입니다.

iat

string

발급 시간

iss

string

토큰 발급기관입니다. 신뢰할 수 있는 인증 발급자 집합에 대해 유효성을 검사해야 합니다.

kacls_url

string

구성된 기본 KACLS URL로, 중간자 (PITM) 공격을 방지하는 데 사용됩니다.

perimeter_id

string (UTF-8)

(선택사항) 래핑 해제 시 확인할 경계를 선택하는 데 사용할 수 있는 문서 위치에 연결된 값입니다. 최대 크기: 128바이트

resource_name

string (UTF-8)

DEK로 암호화된 객체의 식별자입니다. 최대 크기: 128바이트

role

string

다음 값 중 하나를 포함합니다.

  • reader: unwrap만 호출할 수 있습니다.
  • writer: wrapunwrap를 모두 호출할 수 있습니다.

Gmail CSE의 승인 토큰

JSON 표현
{
  "aud": string,
  "email": string,
  "exp": string,
  "iat": string,
  "message_id": string,
  "iss": string,
  "kacls_url": string,
  "perimeter_id": string,
  "resource_name": string,
  "role": string,
  "spki_hash": string,
  "spki_hash_algorithm": string
}
필드
aud

string

Google에서 식별한 잠재고객입니다. 로컬 구성을 기준으로 확인해야 합니다.

email

string (UTF-8)

사용자의 이메일 주소

exp

string

만료 시간입니다.

iat

string

발급 시간

message_id

string

복호화 또는 서명이 실행되는 메시지의 식별자입니다. 감사 목적으로 고객 이유로 사용됩니다.

iss

string

토큰 발급기관입니다. 신뢰할 수 있는 인증 발급자 집합에 대해 유효성을 검사해야 합니다.

kacls_url

string

구성된 기본 KACLS URL로, 중간자 (PITM) 공격을 방지하는 데 사용됩니다.

perimeter_id

string (UTF-8)

(선택사항) 래핑 해제 시 확인할 경계를 선택하는 데 사용할 수 있는 문서 위치에 연결된 값입니다. 최대 크기: 128바이트

resource_name

string (UTF-8)

DEK로 암호화된 객체의 식별자입니다. 최대 크기: 512바이트

role

string

다음 값 중 하나를 포함합니다.

  • decrypter: 복호화할 수 있습니다.
  • signer: 서명할 수 있습니다.
spki_hash

string

액세스 중인 비공개 키의 DER 인코딩 SubjectPublicKeyInfo의 표준 base64 인코딩 다이제스트입니다.

spki_hash_algorithm

string

spki_hash를 생성하는 데 사용되는 알고리즘입니다. SHA-256일 수 있습니다.

KACLS 이전 서비스의 승인 토큰

JSON 표현
{
  "aud": string,
  "email": string,
  "exp": string,
  "iat": string,
  "iss": string,
  "kacls_url": string,
  "resource_name": string,
  "role": string
}
필드
aud

string

Google에서 식별한 잠재고객입니다. 로컬 구성을 기준으로 확인해야 합니다.

email

string (UTF-8)

사용자의 이메일 주소

exp

string

만료 시간입니다.

iat

string

발급 시간

iss

string

토큰 발급기관입니다. 신뢰할 수 있는 인증 발급자 집합에 대해 유효성을 검사해야 합니다.

kacls_url

string

구성된 기본 KACLS URL로, 중간자 (PITM) 공격을 방지하는 데 사용됩니다.

role

string

다음 값 중 하나를 포함합니다.

  • migrator: rewrap만 호출할 수 있습니다.
  • verifier: digest만 호출할 수 있습니다.