Токены аутентификации

Токен на предъявителя ( JWT: RFC 7516 ), выдаваемый партнером по идентификации (IdP) для подтверждения личности пользователя.

JSON-представление
{
  "aud": string,
  "email": string,
  "exp": string,
  "iat": string,
  "iss": string,
  "google_email": string,
  ...
}
Поля
aud

string

Аудитория, определенная IdP. Необходимо проверить по локальной конфигурации.

email

string (UTF-8)

Адрес электронной почты пользователя.

exp

string

Срок действия.

iat

string

Время выдачи.

iss

string

Эмитент токена. Должен быть проверен по доверенному набору эмитентов аутентификации.

google_email

string

Необязательное утверждение, используемое, если утверждение об адресе электронной почты в этом JWT отличается от идентификатора электронной почты пользователя в Google Workspace. Это утверждение содержит идентификатор электронной почты пользователя в Google Workspace.

...

Ваша служба списков контроля доступа к ключам (KACLS) может свободно использовать любые другие утверждения (местоположение, пользовательское утверждение и т. д.) для оценки периметра.

Токен аутентификации KACLS для delegate

Токен аутентификации содержит JSON Web Token (JWT) ( JWT: RFC 7516 ), который является токеном аутентификации на предъявителя.

Иногда пользователь не может пройти аутентификацию на клиенте напрямую. В таких случаях пользователь может делегировать клиенту свой доступ к определённому ресурсу. Это достигается путём выпуска нового делегированного токена аутентификации, который ограничивает область действия исходного токена аутентификации.

Делегированный токен аутентификации аналогичен обычному токену аутентификации с одним дополнительным утверждением:

требовать
delegated_to

string

Идентификатор субъекта, которому необходимо делегировать аутентификацию.

Утверждение resource_name в токене аутентификации в контексте делегирования используется для идентификации объекта, зашифрованного ключом шифрования данных (DEK), для которого делегирование действительно.

Токен выдаётся службой управления списками доступа к ключам (KACLS) с помощью вызова Delegate . Это могут быть как самоподписанные JWT, которые KACLS может проверить, так и любой другой поставщик удостоверений (IdP) с помощью доверенного вызова.

Чтобы делегированный токен аутентификации считался действительным, для той же операции необходимо предоставить делегированный токен авторизации. Делегированный токен авторизации аналогичен обычному токену авторизации, но содержит дополнительное утверждение delegated_to . Значения утверждений delegated_to и resource_name должны совпадать со значениями в делегированном токене аутентификации.

Мы рекомендуем вам установить срок действия делегированных токенов аутентификации в 15 минут, чтобы избежать возможного повторного использования в случае утечки.

JSON-представление
{
  "email": string,
  "iss": string,
  "aud": string,
  "exp": string,
  "iat": string,
  "google_email": string,
  "delegated_to": string,
  "resource_name": string
  ...
}
Поля
email

string (UTF-8)

Адрес электронной почты пользователя в формате UTF-8.

iss

string

Эмитент токена должен быть проверен с помощью доверенного набора эмитентов аутентификации.

aud

string

Аудитория, определенная IdP. Необходимо проверить по локальной конфигурации.

exp

string

Необходимо проверить срок годности.

iat

string

Необходимо проверить время выдачи.

delegated_to

string

Идентификатор субъекта, которому необходимо делегировать аутентификацию.

resource_name

string

Идентификатор объекта, зашифрованного DEK, для которого делегирование действительно.

...

KACLS может свободно использовать любые другие утверждения (местоположение, таможенные требования и т. д.) для оценки периметра.

Токен аутентификации KACLS для PrivilegedUnwrap

Токен на предъявителя ( JWT: RFC 7516 ), выдаваемый партнером по идентификации (IdP) для подтверждения личности пользователя.

Это используется только в PrivilegedUnwrap . Если во время PrivilegedUnwrap вместо токена аутентификации IDP используется JWT KACLS, получатель KACLS должен сначала получить JWKS эмитента, а затем проверить подпись токена, прежде чем проверять утверждения.

JSON-представление
{
  "aud": string,
  "exp": string,
  "iat": string,
  "iss": string,
  "kacls_url": string,
  "resource_name": string
  ...
}
Поля
aud

string

Аудитория, определенная поставщиком удостоверений. Для операций шифрования Drive на стороне клиента (CSE) PrivilegedUnwrap это должен быть kacls-migration .

exp

string

Срок действия.

iat

string

Время выдачи.

iss

string

Эмитент токена. Должен быть проверен по доверенному набору эмитентов аутентификации. Должен соответствовать KACLS_URL запрашивающего KACLS. Набор открытых ключей эмитента можно найти по адресу /certs .

kacls_url

string

URL текущего KACLS, на котором расшифровываются данные.

resource_name

string

Идентификатор объекта, зашифрованного DEK. Максимальный размер: 128 байт.

...

Ваша служба списков контроля доступа к ключам (KACLS) может свободно использовать любые другие утверждения (местоположение, пользовательское утверждение и т. д.) для оценки периметра.