Method: challenge.verify

Проверяет ответ на вызов.

HTTP-запрос

POST https://verifiedaccess.googleapis.com/v2/challenge:verify

URL-адрес использует синтаксис транскодирования gRPC .

Тело запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "challengeResponse": string,
  "expectedIdentity": string
}
Поля
challengeResponse

string ( bytes format)

Необходимый. Сгенерированный ответ на запрос, байтовое представление SignedData.

Строка в кодировке Base64.

expectedIdentity

string

Необязательный. Служба может дополнительно предоставлять идентификационную информацию об устройстве или пользователе, связанном с ключом. Для EMK это значение является зарегистрированным доменом. Для EUK это значение — адрес электронной почты пользователя. Если оно присутствует, это значение будет проверено по содержимому ответа, и проверка завершится неудачей, если совпадений не будет.

Тело ответа

Сообщение о результате для VerifiedAccess.VerifyChallengeResponse.

Ответ, возвращаемый в случае успеха для управляемых профилей в неуправляемых браузерах, НЕ будет содержать полей devicePermanentId, keyTrustLevel, virtualDeviceId и customerId. Управляемые профили INSTEAD будут иметь поля ProfileCustomerId, virtualProfileId, ProfilePermanentId и ProfileKeyTrustLevel.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "devicePermanentId": string,
  "virtualDeviceId": string,
  "customerId": string,
  "signedPublicKeyAndChallenge": string,
  "deviceSignal": string,
  "deviceSignals": {
    object (DeviceSignals)
  },
  "keyTrustLevel": enum (KeyTrustLevel),
  "profileCustomerId": string,
  "virtualProfileId": string,
  "profilePermanentId": string,
  "profileKeyTrustLevel": enum (KeyTrustLevel),
  "attestedDeviceId": string,
  "deviceEnrollmentId": string
}
Поля
devicePermanentId

string

Только вывод. В этом поле возвращается постоянный идентификатор устройства (только для ответа компьютера).

virtualDeviceId

string

Только вывод. Идентификатор виртуального устройства. Определение идентификатора виртуального устройства зависит от платформы.

customerId

string

Только вывод. Уникальный идентификатор клиента, которому принадлежит это устройство, как определено Google Admin SDK по адресу https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers.

signedPublicKeyAndChallenge

string

Только вывод. В это поле возвращается запрос на подпись сертификата (в формате SPKAC, в кодировке Base64). Это поле будет установлено только в том случае, если устройство включило CSR в свой ответ на запрос. (возможность включения CSR теперь доступна как для ответов пользователя, так и для ответов компьютера)

deviceSignal

string

Только вывод. Устарело. Сигнал устройства в строковом представлении JSON. Вместо этого предпочитайте использовать deviceSignals .

deviceSignals

object ( DeviceSignals )

Только вывод. Сигналы устройства.

keyTrustLevel

enum ( KeyTrustLevel )

Только вывод. Уровень доверия ключа подтвержден устройством.

profileCustomerId

string

Только вывод. Уникальный идентификатор клиента, которому принадлежит этот профиль, как определено Google Admin SDK по адресу https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers.

virtualProfileId

string

Только вывод. Предоставляемый клиентом идентификатор профиля на устройстве.

profilePermanentId

string

Только вывод. Уникальный серверный идентификатор профиля на устройстве.

profileKeyTrustLevel

enum ( KeyTrustLevel )

Только вывод. Профиль подтвердил ключевой уровень доверия.

attestedDeviceId

string

Только вывод. Идентификатор подтвержденного устройства (ADID).

deviceEnrollmentId

string

Только вывод. Идентификатор регистрации устройства для устройств ChromeOS.

Области авторизации

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/verifiedaccess

Для получения дополнительной информации см.OAuth 2.0 Overview .

УстройствоСигналы

Устройство сигнализирует, как сообщает Chrome. Если не указано иное, сигналы доступны на всех платформах.

JSON-представление
{
  "deviceManufacturer": string,
  "deviceModel": string,
  "operatingSystem": enum (OperatingSystem),
  "osVersion": string,
  "displayName": string,
  "diskEncryption": enum (DiskEncryption),
  "serialNumber": string,
  "osFirewall": enum (OsFirewall),
  "systemDnsServers": [
    string
  ],
  "hostname": string,
  "macAddresses": [
    string
  ],
  "screenLockSecured": enum (ScreenLockSecured),
  "allowScreenLock": boolean,
  "imei": [
    string
  ],
  "meid": [
    string
  ],
  "secureBootMode": enum (SecureBootMode),
  "windowsMachineDomain": string,
  "windowsUserDomain": string,
  "deviceEnrollmentDomain": string,
  "browserVersion": string,
  "deviceAffiliationIds": [
    string
  ],
  "profileAffiliationIds": [
    string
  ],
  "builtInDnsClientEnabled": boolean,
  "chromeRemoteDesktopAppBlocked": boolean,
  "safeBrowsingProtectionLevel": enum (SafeBrowsingProtectionLevel),
  "siteIsolationEnabled": boolean,
  "passwordProtectionWarningTrigger": enum (PasswordProtectionWarningTrigger),
  "realtimeUrlCheckMode": enum (RealtimeUrlCheckMode),
  "thirdPartyBlockingEnabled": boolean,
  "trigger": enum (Trigger),
  "profileEnrollmentDomain": string,
  "antivirus": {
    object (Antivirus)
  },
  "crowdStrikeAgent": {
    object (CrowdStrikeAgent)
  }
}
Поля
deviceManufacturer

string

Только вывод. Имя производителя устройства.

deviceModel

string

Только вывод. Название модели устройства.

operatingSystem

enum ( OperatingSystem )

Только вывод. Тип операционной системы, работающей в данный момент на устройстве.

osVersion

string

Только вывод. Текущая версия операционной системы. В Windows и Linux это значение также будет включать информацию об исправлении безопасности.

displayName

string

Только вывод. Отображаемое имя устройства, определенное пользователем.

diskEncryption

enum ( DiskEncryption )

Только вывод. Состояние шифрования диска. В ChromeOS основной диск всегда ЗАШИФРОВАН.

serialNumber

string

Только вывод. Серийный номер устройства. В Windows это серийный номер BIOS. Недоступно в большинстве дистрибутивов Linux.

osFirewall

enum ( OsFirewall )

Только вывод. Состояние брандмауэра уровня ОС. В ChromeOS значение всегда будет ВКЛЮЧЕНО на обычных устройствах и НЕИЗВЕСТНО на устройствах в режиме разработчика. Поддержка MacOS 15 (Sequoia) и более поздних версий появилась в Chrome M131.

systemDnsServers[]

string

Список адресов всех DNS-серверов уровня ОС, настроенных в сетевых настройках устройства.

hostname

string

Имя хоста устройства.

macAddresses[]

string

Только вывод. MAC-адреса устройства.

screenLockSecured

enum ( ScreenLockSecured )

Только вывод. Состояние защиты паролем блокировки экрана. В ChromeOS это значение всегда будет ВКЛЮЧЕНО, поскольку невозможно отключить требование пароля или PIN-кода при разблокировке устройства.

allowScreenLock

boolean

Только вывод. Значение политики AllowScreenLock на устройстве. Дополнительную информацию см. на странице https://chromeenterprise.google/policies/?policy=AllowScreenLock . Доступно только на ChromeOS.

imei[]

string

Только вывод. Международный идентификатор мобильного оборудования (IMEI) устройства. Доступно только на ChromeOS.

meid[]

string

Только вывод. Идентификатор мобильного оборудования (MEID) устройства. Доступно только на ChromeOS.

secureBootMode

enum ( SecureBootMode )

Только вывод. Включена ли в загрузочном программном обеспечении устройства функция безопасной загрузки. Доступно только в Windows.

windowsMachineDomain

string

Только вывод. Домен Windows, к которому присоединился текущий компьютер. Доступно только в Windows.

windowsUserDomain

string

Только вывод. Домен Windows для текущего пользователя ОС. Доступно только в Windows.

deviceEnrollmentDomain

string

Только вывод. Домен регистрации клиента, который в данный момент управляет устройством.

browserVersion

string

Только вывод. Текущая версия браузера Chrome, сгенерировавшая этот набор сигналов. Пример значения: «107.0.5286.0».

deviceAffiliationIds[]

string

Только вывод. Идентификаторы принадлежности организаций, которые связаны с организацией, которая в данный момент управляет устройством. Когда наборы идентификаторов принадлежности устройства и профиля перекрываются, это означает, что организации, управляющие устройством и пользователем, являются аффилированными. Чтобы узнать больше о принадлежности пользователя, посетите https://support.google.com/chrome/a/answer/12801245?ref_topic=9027936 .

profileAffiliationIds[]

string

Только вывод. Идентификаторы принадлежности организаций, которые связаны с организацией, которая в настоящее время управляет пользователем профиля Chrome или пользователем ChromeOS.

builtInDnsClientEnabled

boolean

Только вывод. Используется ли встроенный DNS-клиент Chrome. В противном случае используется DNS-клиент ОС. Это значение может контролироваться корпоративной политикой: https://chromeenterprise.google/policies/#BuiltInDnsClientEnabled .

chromeRemoteDesktopAppBlocked

boolean

Только вывод. Блокируется ли доступ к приложению Chrome Remote Desktop с помощью политики.

safeBrowsingProtectionLevel

enum ( SafeBrowsingProtectionLevel )

Только вывод. Уровень защиты безопасного просмотра. Этот параметр может контролироваться корпоративной политикой: https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel .

siteIsolationEnabled

boolean

Только вывод. Включен ли параметр «Изоляция сайта» (также известный как «Сайт для каждого процесса»). Этот параметр может контролироваться корпоративной политикой: https://chromeenterprise.google/policies/#SitePerProcess .

passwordProtectionWarningTrigger

enum ( PasswordProtectionWarningTrigger )

Только вывод. Включена или нет функция предупреждения о защите паролем. Защита паролем предупреждает пользователей, когда они повторно используют свой защищенный пароль на потенциально подозрительных сайтах. Этот параметр контролируется корпоративной политикой: https://chromeenterprise.google/policies/#PasswordProtectionWarningTrigger .

Обратите внимание, что отключение политики не имеет того же эффекта, что и политика, явно установленная на PASSWORD_PROTECTION_OFF .

realtimeUrlCheckMode

enum ( RealtimeUrlCheckMode )

Только вывод. Включено ли сканирование небезопасных URL-адресов корпоративного уровня (т. е. настраиваемое). Этот параметр может контролироваться корпоративной политикой: https://chromeenterprise.google/policies/#EnterpriseRealTimeUrlCheckMode .

thirdPartyBlockingEnabled
(deprecated)

boolean

Только вывод. Устарело. Соответствующая политика устарела.

Блокирует ли Chrome внедрение стороннего программного обеспечения или нет. Этот параметр может контролироваться корпоративной политикой: https://chromeenterprise.google/policies/?policy=ThirdPartyBlockingEnabled . Доступно только в Windows.

trigger

enum ( Trigger )

Только вывод. Триггер, сгенерировавший этот набор сигналов.

profileEnrollmentDomain

string

Только вывод. Домен регистрации клиента, который в данный момент управляет профилем.

antivirus

object ( Antivirus )

Только вывод. Информация об антивирусном программном обеспечении на устройстве. Доступно только в Windows.

crowdStrikeAgent

object ( CrowdStrikeAgent )

Только вывод. Свойства агента Crowdstrike, установленные на устройстве, если таковые имеются. Доступно только в Windows и MacOS.

Операционная система

Поддерживаемые операционные системы.

Перечисления
OPERATING_SYSTEM_UNSPECIFIED НЕУКАЗАНО.
CHROME_OS ХромОС.
CHROMIUM_OS ХромиумОС.
WINDOWS Окна.
MAC_OS_X МакОс Х.
LINUX Линукс

Шифрование диска

Возможные состояния шифрования основного диска.

Перечисления
DISK_ENCRYPTION_UNSPECIFIED Не указано.
DISK_ENCRYPTION_UNKNOWN Chrome не смог оценить состояние шифрования.
DISK_ENCRYPTION_DISABLED Основной диск не зашифрован.
DISK_ENCRYPTION_ENCRYPTED Основной диск зашифрован.

ОСБрандмауэр

Возможные состояния брандмауэра уровня ОС.

Перечисления
OS_FIREWALL_UNSPECIFIED Не указано.
OS_FIREWALL_UNKNOWN Chrome не смог оценить состояние брандмауэра ОС.
OS_FIREWALL_DISABLED Брандмауэр ОС отключен.
OS_FIREWALL_ENABLED Брандмауэр ОС включен.

ScreenLockSecured

Возможные состояния защиты паролем блокировки экрана.

Перечисления
SCREEN_LOCK_SECURED_UNSPECIFIED Не указано.
SCREEN_LOCK_SECURED_UNKNOWN Chrome не смог оценить состояние механизма блокировки экрана.
SCREEN_LOCK_SECURED_DISABLED Блокировка экрана не защищена паролем.
SCREEN_LOCK_SECURED_ENABLED Блокировка экрана защищена паролем.

Безопасный режим загрузки

Возможные состояния режима Secure Boot устройства.

Перечисления
SECURE_BOOT_MODE_UNSPECIFIED Не указано.
SECURE_BOOT_MODE_UNKNOWN Chrome не смог определить режим безопасной загрузки.
SECURE_BOOT_MODE_DISABLED Безопасная загрузка была отключена в загрузочном программном обеспечении.
SECURE_BOOT_MODE_ENABLED Безопасная загрузка была включена в загрузочном программном обеспечении.

SafeBrowsingProtectionLevel

Возможные значения уровня защиты безопасного просмотра.

Перечисления
SAFE_BROWSING_PROTECTION_LEVEL_UNSPECIFIED Не указано.
INACTIVE Безопасный просмотр отключен.
STANDARD Безопасный просмотр активен в стандартном режиме.
ENHANCED Безопасный просмотр активен в расширенном режиме.

Защита паролемПредупреждениеТриггер

Возможные значения для триггера предупреждения о защите паролем.

Перечисления
PASSWORD_PROTECTION_WARNING_TRIGGER_UNSPECIFIED Не указано.
POLICY_UNSET Политика не установлена.
PASSWORD_PROTECTION_OFF Предупреждение о защите паролем не будет отображаться.
PASSWORD_REUSE Предупреждение о защите паролем отображается, если защищенный пароль используется повторно.
PHISHING_REUSE Предупреждение о защите паролем отображается, если защищенный пароль повторно используется на известном фишинговом веб-сайте.

RealtimeUrlCheckMode

Возможные значения для режима проверки URL-адресов в реальном времени.

Перечисления
REALTIME_URL_CHECK_MODE_UNSPECIFIED Не указано.
REALTIME_URL_CHECK_MODE_DISABLED Неполноценный. Применяются проверки безопасного просмотра для потребителей.
REALTIME_URL_CHECK_MODE_ENABLED_MAIN_FRAME Включена проверка в реальном времени URL-адресов основного фрейма.

CrowdStrikeАгент

Свойства агента CrowdStrike, установленного на устройстве.

JSON-представление
{
  "agentId": string,
  "customerId": string
}
Поля
agentId

string

Только вывод. Идентификатор агента Crowdstrike.

customerId

string

Только вывод. Идентификатор клиента, которому принадлежит агент.

Курок

Возможные значения для триггера.

Перечисления
TRIGGER_UNSPECIFIED Не указано.
TRIGGER_BROWSER_NAVIGATION При переходе по URL-адресу внутри браузера.
TRIGGER_LOGIN_SCREEN При входе в учетную запись на экране входа в ChromeOS.

Антивирус

Информация об антивирусе на устройстве.

JSON-представление
{
  "state": enum (State)
}
Поля
state

enum ( State )

Только вывод. Состояние антивируса на устройстве. Представлен в Chrome M136.

Состояние

Возможное состояние антивируса на устройстве.

Перечисления
STATE_UNSPECIFIED Не указано.
MISSING На устройстве не обнаружен антивирус.
DISABLED На устройстве был установлен как минимум один антивирус, но ни один из них не был включен.
ENABLED На устройстве был включен хотя бы один антивирус.

KeyTrustLevel

Уровень доверия подтвержденного ключа.

Перечисления
KEY_TRUST_LEVEL_UNSPECIFIED НЕУКАЗАНО.
CHROME_OS_VERIFIED_MODE Устройство ChromeOS в проверенном режиме.
CHROME_OS_DEVELOPER_MODE Устройство ChromeOS в режиме разработчика.
CHROME_BROWSER_HW_KEY Браузер Chrome с ключом, хранящимся в аппаратном обеспечении устройства.
CHROME_BROWSER_OS_KEY Браузер Chrome с ключом, хранящимся на уровне ОС.
CHROME_BROWSER_NO_KEY Браузер Chrome без ключа подтверждения.