Method: challenge.verify

Vérifie la réponse à la requête.

Requête HTTP

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

L'URL utilise la syntaxe de transcodage gRPC.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "challengeResponse": string,
  "expectedIdentity": string
}
Champs
challengeResponse

string (bytes format)

Obligatoire. Réponse générée à la requête, représentation par octets de SignedData.

Chaîne encodée en base64.

expectedIdentity

string

Facultatif. Le service peut fournir des informations d'identité sur l'appareil ou l'utilisateur associé à la clé. Pour une clé MK, cette valeur correspond au domaine enregistré. Pour un EUK, cette valeur correspond à l'adresse e-mail de l'utilisateur. Si elle est présente, cette valeur sera comparée au contenu de la réponse. La validation échouera si aucune correspondance n'est trouvée.

Corps de la réponse

Message de résultat pour VerifiedAccess.VerifyChallengeResponse.

La réponse renvoyée en cas de réussite pour les profils gérés sur les navigateurs non gérés ne contient PAS les champs devicePermanentId, keyTrustLevel, virtualDeviceId et customerId. Les profils gérés comportent EN INSTEAD les champs profileCustomerId, virtualProfileId, profilePermanentId et profileKeyTrustLevel.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation 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
}
Champs
devicePermanentId

string

Uniquement en sortie. L'ID permanent de l'appareil est renvoyé dans ce champ (pour la réponse de la machine uniquement).

virtualDeviceId

string

Uniquement en sortie. ID de l'appareil virtuel. La définition de l'ID de l'appareil virtuel est spécifique à la plate-forme.

customerId

string

Uniquement en sortie. ID client unique auquel cet appareil appartient, tel que défini par le SDK Google Admin à l'adresse https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers

signedPublicKeyAndChallenge

string

Uniquement en sortie. La requête de signature de certificat (au format SPKAC, encodé en base64) est renvoyée dans ce champ. Ce champ n'est défini que si l'appareil a inclus la CSR dans sa réponse à l'invite. (l'option d'inclure le CSR est désormais disponible pour les réponses de l'utilisateur et de la machine)

deviceSignal

string

Uniquement en sortie. Obsolète. Signal de l'appareil sous forme de chaîne JSON. Utilisez plutôt deviceSignals.

deviceSignals

object (DeviceSignals)

Uniquement en sortie. Signaux de l'appareil.

keyTrustLevel

enum (KeyTrustLevel)

Uniquement en sortie. Niveau de confiance de la clé attestée par l'appareil.

profileCustomerId

string

Uniquement en sortie. ID client unique auquel appartient ce profil, tel que défini par le SDK Google Admin à l'adresse https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers

virtualProfileId

string

Uniquement en sortie. ID fourni par le client d'un profil sur l'appareil.

profilePermanentId

string

Uniquement en sortie. ID côté serveur unique d'un profil sur l'appareil.

profileKeyTrustLevel

enum (KeyTrustLevel)

Uniquement en sortie. Niveau de confiance de la clé attestée par le profil.

attestedDeviceId

string

Uniquement en sortie. ID de l'appareil certifié (ADID)

deviceEnrollmentId

string

Uniquement en sortie. ID d'enregistrement de l'appareil pour les appareils ChromeOS.

Champs d'application des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour en savoir plus, consultez OAuth 2.0 Overview.

DeviceSignals

Signaux de l'appareil, tels que signalés par Chrome. Sauf indication contraire, les signaux sont disponibles sur toutes les plates-formes.

Représentation 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)
  }
}
Champs
deviceManufacturer

string

Uniquement en sortie. Nom du fabricant de l'appareil.

deviceModel

string

Uniquement en sortie. Nom du modèle de l'appareil.

operatingSystem

enum (OperatingSystem)

Uniquement en sortie. Type du système d'exploitation actuellement exécuté sur l'appareil.

osVersion

string

Uniquement en sortie. Version actuelle du système d'exploitation. Sous Windows et Linux, la valeur inclut également les informations sur le correctif de sécurité.

displayName

string

Uniquement en sortie. Nom à afficher de l'appareil, tel que défini par l'utilisateur.

diskEncryption

enum (DiskEncryption)

Uniquement en sortie. État du chiffrement du disque. Sur ChromeOS, le disque principal est toujours CHIFFRÉ.

serialNumber

string

Uniquement en sortie. Numéro de série de l'appareil. Sous Windows, il s'agit du numéro de série du BIOS. Non disponible sur la plupart des distributions Linux.

osFirewall

enum (OsFirewall)

Uniquement en sortie. État du pare-feu au niveau du système d'exploitation. Sur ChromeOS, la valeur est toujours ENABLED sur les appareils standards et UNKNOWN sur les appareils en mode développeur. La compatibilité avec macOS 15 (Sequoia) et versions ultérieures a été introduite dans Chrome M131.

systemDnsServers[]

string

Liste des adresses de tous les serveurs DNS au niveau de l'OS configurés dans les paramètres réseau de l'appareil.

hostname

string

Nom d'hôte de l'appareil.

macAddresses[]

string

Uniquement en sortie. Adresses MAC de l'appareil.

screenLockSecured

enum (ScreenLockSecured)

Uniquement en sortie. État de la protection par mot de passe du verrouillage de l'écran. Sous ChromeOS, cette valeur est toujours définie sur "ENABLED" (ACTIVE), car il n'est pas possible de désactiver l'exigence d'un mot de passe ou d'un code pour déverrouiller l'appareil.

allowScreenLock

boolean

Uniquement en sortie. Valeur de la règle AllowScreenLock sur l'appareil. Pour en savoir plus, consultez https://chromeenterprise.google/policies/?policy=AllowScreenLock. Disponible sur ChromeOS uniquement.

imei[]

string

Uniquement en sortie. Identifiant international (code IMEI) de l'appareil. Disponible sur ChromeOS uniquement.

meid[]

string

Uniquement en sortie. Identifiant MEID (Mobile Equipment Identifier) de l'appareil. Disponible sur ChromeOS uniquement.

secureBootMode

enum (SecureBootMode)

Uniquement en sortie. Indique si la fonctionnalité de démarrage sécurisé est activée sur le logiciel de démarrage de l'appareil. Disponible uniquement sur Windows.

windowsMachineDomain

string

Uniquement en sortie. Domaine Windows auquel la machine actuelle est associée. Disponible uniquement sur Windows.

windowsUserDomain

string

Uniquement en sortie. Domaine Windows de l'utilisateur actuel du système d'exploitation. Disponible uniquement sur Windows.

deviceEnrollmentDomain

string

Uniquement en sortie. Domaine d'enregistrement du client qui gère actuellement l'appareil.

browserVersion

string

Uniquement en sortie. Version actuelle du navigateur Chrome qui a généré cet ensemble de signaux. Exemple de valeur: "107.0.5286.0".

deviceAffiliationIds[]

string

Uniquement en sortie. ID d'affiliation des organisations affiliées à l'organisation qui gère actuellement l'appareil. Lorsque les ensembles d'ID d'affiliation de l'appareil et du profil se chevauchent, cela signifie que les organisations qui gèrent l'appareil et l'utilisateur sont affiliées. Pour en savoir plus sur l'affiliation des utilisateurs, consultez https://support.google.com/chrome/a/answer/12801245?ref_topic=9027936.

profileAffiliationIds[]

string

Uniquement en sortie. ID d'affiliation des organisations affiliées à l'organisation qui gère actuellement l'utilisateur du profil Chrome ou l'utilisateur ChromeOS.

builtInDnsClientEnabled

boolean

Uniquement en sortie. Indique si le client DNS intégré de Chrome est utilisé. Sinon, le client DNS de l'OS est utilisé. Cette valeur peut être contrôlée par une règle d'entreprise: https://chromeenterprise.google/policies/#BuiltInDnsClientEnabled.

chromeRemoteDesktopAppBlocked

boolean

Uniquement en sortie. Indique si l'accès à l'application Bureau à distance Chrome est bloqué par une règle.

safeBrowsingProtectionLevel

enum (SafeBrowsingProtectionLevel)

Uniquement en sortie. Niveau de protection de la navigation sécurisée. Ce paramètre peut être contrôlé par une règle d'entreprise: https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel.

siteIsolationEnabled

boolean

Uniquement en sortie. Indique si le paramètre "Site isolation" (ou "Site per process") est activé. Ce paramètre peut être contrôlé par une règle d'entreprise: https://chromeenterprise.google/policies/#SitePerProcess

passwordProtectionWarningTrigger

enum (PasswordProtectionWarningTrigger)

Uniquement en sortie. Indique si la fonctionnalité d'avertissement de protection par mot de passe est activée ou non. qui vise à alerter les utilisateurs lorsque ceux-ci réutilisent leur mot de passe protégé sur des sites potentiellement suspects. Ce paramètre est contrôlé par une règle d'entreprise: https://chromeenterprise.google/policies/#PasswordProtectionWarningTrigger.

Notez que la règle non définie n'a pas les mêmes effets que si elle est explicitement définie sur PASSWORD_PROTECTION_OFF.

realtimeUrlCheckMode

enum (RealtimeUrlCheckMode)

Uniquement en sortie. Indique si l'analyse des URL dangereuses de niveau entreprise (c'est-à-dire personnalisée) est activée ou non. Ce paramètre peut être contrôlé par une règle d'entreprise: https://chromeenterprise.google/policies/#EnterpriseRealTimeUrlCheckMode

thirdPartyBlockingEnabled
(deprecated)

boolean

Uniquement en sortie. Obsolète. La règle correspondante est désormais obsolète.

Indique si Chrome bloque ou non l'injection de logiciels tiers. Ce paramètre peut être contrôlé par une règle d'entreprise: https://chromeenterprise.google/policies/?policy=ThirdPartyBlockingEnabled. Disponible uniquement sur Windows.

trigger

enum (Trigger)

Uniquement en sortie. Déclencheur ayant généré cet ensemble de signaux.

profileEnrollmentDomain

string

Uniquement en sortie. Domaine d'enregistrement du client qui gère actuellement le profil.

antivirus

object (Antivirus)

Uniquement en sortie. Informations sur le logiciel antivirus de l'appareil Disponible uniquement sur Windows.

crowdStrikeAgent

object (CrowdStrikeAgent)

Uniquement en sortie. Propriétés de l'agent Crowdstrike installé sur l'appareil, le cas échéant. Disponible uniquement sur Windows et macOS.

Système d'exploitation

Systèmes d'exploitation compatibles

Enums
OPERATING_SYSTEM_UNSPECIFIED NON SPÉCIFIÉ.
CHROME_OS ChromeOS.
CHROMIUM_OS Chromium OS
WINDOWS Windows.
MAC_OS_X Mac OS X
LINUX Linux

DiskEncryption

États de chiffrement possibles pour le disque principal.

Enums
DISK_ENCRYPTION_UNSPECIFIED Non spécifié.
DISK_ENCRYPTION_UNKNOWN Chrome n'a pas pu évaluer l'état du chiffrement.
DISK_ENCRYPTION_DISABLED Le disque principal n'est pas chiffré.
DISK_ENCRYPTION_ENCRYPTED Le disque principal est chiffré.

OsFirewall

États possibles du pare-feu au niveau du système d'exploitation.

Enums
OS_FIREWALL_UNSPECIFIED Non spécifié.
OS_FIREWALL_UNKNOWN Chrome n'a pas pu évaluer l'état du pare-feu de l'OS.
OS_FIREWALL_DISABLED Le pare-feu de l'OS est désactivé.
OS_FIREWALL_ENABLED Le pare-feu de l'OS est activé.

ScreenLockSecured

États possibles de la protection par mot de passe du verrouillage de l'écran.

Enums
SCREEN_LOCK_SECURED_UNSPECIFIED Non spécifié.
SCREEN_LOCK_SECURED_UNKNOWN Chrome n'a pas pu évaluer l'état du mécanisme de verrouillage de l'écran.
SCREEN_LOCK_SECURED_DISABLED Le verrouillage de l'écran n'est pas protégé par un mot de passe.
SCREEN_LOCK_SECURED_ENABLED Le verrouillage de l'écran est protégé par un mot de passe.

SecureBootMode

États possibles du mode Démarrage sécurisé de l'appareil.

Enums
SECURE_BOOT_MODE_UNSPECIFIED Non spécifié.
SECURE_BOOT_MODE_UNKNOWN Chrome n'a pas pu déterminer le mode de démarrage sécurisé.
SECURE_BOOT_MODE_DISABLED Le démarrage sécurisé a été désactivé sur le logiciel de démarrage.
SECURE_BOOT_MODE_ENABLED Le démarrage sécurisé a été activé sur le logiciel de démarrage.

SafeBrowsingProtectionLevel

Valeurs possibles pour le niveau de protection de la navigation sécurisée.

Enums
SAFE_BROWSING_PROTECTION_LEVEL_UNSPECIFIED Non spécifié.
INACTIVE La navigation sécurisée est désactivée.
STANDARD La navigation sécurisée est active, en mode standard.
ENHANCED La navigation sécurisée est active, en mode renforcé.

PasswordProtectionWarningTrigger

Valeurs possibles pour le déclencheur d'avertissement de protection par mot de passe.

Enums
PASSWORD_PROTECTION_WARNING_TRIGGER_UNSPECIFIED Non spécifié.
POLICY_UNSET La stratégie n'est pas définie.
PASSWORD_PROTECTION_OFF Aucun avertissement de protection par mot de passe ne s'affiche.
PASSWORD_REUSE Un avertissement de protection par mot de passe s'affiche si un mot de passe protégé est réutilisé.
PHISHING_REUSE Un avertissement de protection par mot de passe s'affiche si un mot de passe protégé est réutilisé sur un site Web d'hameçonnage connu.

RealtimeUrlCheckMode

Valeurs possibles pour le mode de vérification des URL en temps réel.

Enums
REALTIME_URL_CHECK_MODE_UNSPECIFIED Non spécifié.
REALTIME_URL_CHECK_MODE_DISABLED Désactivée. Les vérifications de la navigation sécurisée pour les consommateurs sont appliquées.
REALTIME_URL_CHECK_MODE_ENABLED_MAIN_FRAME La vérification en temps réel des URL du frame principal est activée.

CrowdStrikeAgent

Propriétés de l'agent CrowdStrike installé sur un appareil.

Représentation JSON
{
  "agentId": string,
  "customerId": string
}
Champs
agentId

string

Uniquement en sortie. ID de l'agent Crowdstrike.

customerId

string

Uniquement en sortie. Numéro client auquel l'agent appartient.

Déclencheur

Valeurs possibles pour le déclencheur.

Enums
TRIGGER_UNSPECIFIED Non spécifié.
TRIGGER_BROWSER_NAVIGATION Lorsque vous accédez à une URL dans un navigateur.
TRIGGER_LOGIN_SCREEN Lorsque vous vous connectez à un compte sur l'écran de connexion ChromeOS

Antivirus

Informations sur l'antivirus d'un appareil

Représentation JSON
{
  "state": enum (State)
}
Champs
state

enum (State)

Uniquement en sortie. État de l'antivirus sur l'appareil. Introduit dans Chrome M136.

État

État possible de l'antivirus sur un appareil.

Enums
STATE_UNSPECIFIED Non spécifié.
MISSING Aucun antivirus n'a été détecté sur l'appareil.
DISABLED Au moins un antivirus a été installé sur l'appareil, mais aucun n'a été activé.
ENABLED Au moins un antivirus était activé sur l'appareil.

KeyTrustLevel

Niveau de confiance de la clé attestée.

Enums
KEY_TRUST_LEVEL_UNSPECIFIED NON SPÉCIFIÉ.
CHROME_OS_VERIFIED_MODE Appareil ChromeOS en mode validé
CHROME_OS_DEVELOPER_MODE Appareil ChromeOS en mode développeur
CHROME_BROWSER_HW_KEY Navigateur Chrome avec la clé stockée dans le matériel de l'appareil
CHROME_BROWSER_OS_KEY Navigateur Chrome avec la clé stockée au niveau du système d'exploitation.
CHROME_BROWSER_NO_KEY Navigateur Chrome sans clé d'attestation