Method: challenge.verify

Verifica la risposta alla sfida.

Richiesta HTTP

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

L'URL utilizza la sintassi di transcodifica gRPC.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "challengeResponse": string,
  "expectedIdentity": string
}
Campi
challengeResponse

string (bytes format)

Obbligatorio. La risposta generata alla verifica, la rappresentazione in byte di SignedData.

Una stringa con codifica Base64.

expectedIdentity

string

(Facoltativo) Il servizio può facoltativamente fornire informazioni sull'identità del dispositivo o dell'utente associato alla chiave. Per un EMK, questo valore è il dominio registrato. Per un EUK, questo valore è l'indirizzo email dell'utente. Se presente, questo valore verrà controllato in base ai contenuti della risposta e la verifica non andrà a buon fine se non viene trovata alcuna corrispondenza.

Corpo della risposta

Messaggio di risultato per VerifiedAccess.VerifyChallengeResponse.

La risposta restituita in caso di esito positivo per i profili gestiti su browser non gestiti NON avrà i campi devicePermanentId, keyTrustLevel, virtualDeviceId e customerId. I profili gestiti avranno ANZI i campi profileCustomerId, virtualProfileId e profileKeyTrustLevel.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "devicePermanentId": string,
  "virtualDeviceId": string,
  "customerId": string,
  "signedPublicKeyAndChallenge": string,
  "deviceSignal": string,
  "deviceSignals": {
    object (DeviceSignals)
  },
  "keyTrustLevel": enum (KeyTrustLevel),
  "profileCustomerId": string,
  "virtualProfileId": string,
  "profileKeyTrustLevel": enum (KeyTrustLevel),
  "attestedDeviceId": string,
  "deviceEnrollmentId": string
}
Campi
devicePermanentId

string

L'ID dispositivo permanente viene restituito in questo campo (solo per la risposta della macchina).

virtualDeviceId

string

ID dispositivo virtuale del dispositivo. La definizione dell'ID dispositivo virtuale è specifica della piattaforma.

customerId

string

ID cliente univoco a cui appartiene questo dispositivo, come definito dall'SDK Admin di Google all'indirizzo https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers

signedPublicKeyAndChallenge

string

In questo campo viene restituita la richiesta di firma del certificato (in formato SPKAC, con codifica base64). Questo campo verrà impostato solo se il dispositivo ha incluso il CSR nella risposta alla verifica. (l'opzione per includere il CSR è ora disponibile sia per le risposte dell'utente sia per quelle della macchina)

deviceSignal

string

Deprecato. Segnale del dispositivo nella rappresentazione di stringa JSON. Preferisci usare invece deviceSignals.

deviceSignals

object (DeviceSignals)

Indicatori relativi ai dispositivi.

keyTrustLevel

enum (KeyTrustLevel)

Livello di attendibilità della chiave attestata del dispositivo.

profileCustomerId

string

ID cliente univoco a cui appartiene questo profilo, come definito dall'SDK della Console di amministrazione Google all'indirizzo https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers

virtualProfileId

string

L'ID di un profilo sul dispositivo.

profileKeyTrustLevel

enum (KeyTrustLevel)

Il profilo ha attestato il livello di attendibilità della chiave.

attestedDeviceId

string

ID dispositivo attestato (AdID).

deviceEnrollmentId

string

ID registrazione del dispositivo per i dispositivi ChromeOS.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per ulteriori informazioni, consulta la Panoramica dell'autenticazione.

DeviceSignals

Gli indicatori del dispositivo segnalati da Chrome. Se non diversamente specificato, gli indicatori sono disponibili su tutte le piattaforme.

Rappresentazione 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,
  "crowdStrikeAgent": {
    object (CrowdStrikeAgent)
  }
}
Campi
deviceManufacturer

string

Il nome del produttore del dispositivo.

deviceModel

string

Il nome del modello del dispositivo.

operatingSystem

enum (OperatingSystem)

Il tipo di sistema operativo attualmente in esecuzione sul dispositivo.

osVersion

string

La versione corrente del sistema operativo. Su Windows e Linux, il valore includerà anche le informazioni sulle patch di sicurezza.

displayName

string

Il nome visualizzato del dispositivo, come definito dall'utente.

diskEncryption

enum (DiskEncryption)

Lo stato della crittografia del disco. Su ChromeOS, il disco principale è sempre criptato.

serialNumber

string

Il numero di serie del dispositivo. Su Windows, rappresenta il numero di serie del BIOS. Non disponibile sulla maggior parte delle distribuzioni Linux.

osFirewall

enum (OsFirewall)

Lo stato del firewall a livello di sistema operativo. Su ChromeOS, il valore sarà sempre ENABLED sui dispositivi normali e UNKNOWN sui dispositivi in modalità sviluppatore. Il supporto per MacOS 15 (Sequoia) e versioni successive è stato introdotto in Chrome M131.

systemDnsServers[]

string

Elenco degli indirizzi di tutti i server DNS a livello di sistema operativo configurati nelle impostazioni di rete del dispositivo.

hostname

string

Nome host del dispositivo.

macAddresses[]

string

Indirizzi MAC del dispositivo.

screenLockSecured

enum (ScreenLockSecured)

Lo stato della protezione tramite password di blocco schermo. Su ChromeOS, questo valore sarà sempre ATTIVATO perché non è possibile disattivare la richiesta di una password o di un PIN durante lo sblocco del dispositivo.

allowScreenLock

boolean

Valore del criterio AllowScreenLock sul dispositivo. Per maggiori dettagli, visita la pagina https://chromeenterprise.google/policies/?policy=AllowScreenLock. Disponibile solo su ChromeOS.

imei[]

string

IMEI (International Mobile Equipment Identity) del dispositivo. Disponibile solo su ChromeOS.

meid[]

string

Mobile Equipment Identifier (MEID) del dispositivo. Disponibile solo su ChromeOS.

secureBootMode

enum (SecureBootMode)

Indica se la funzionalità Avvio protetto è attivata nel software di avvio del dispositivo. Disponibile solo su Windows.

windowsMachineDomain

string

Dominio Windows a cui è unita la macchina attuale. Disponibile solo su Windows.

windowsUserDomain

string

Dominio Windows per l'utente corrente del sistema operativo. Disponibile solo su Windows.

deviceEnrollmentDomain

string

Dominio di registrazione del cliente che attualmente gestisce il dispositivo.

browserVersion

string

La versione attuale del browser Chrome che ha generato questo insieme di indicatori. Valore di esempio: "107.0.5286.0".

deviceAffiliationIds[]

string

ID affiliazione delle organizzazioni affiliate all'organizzazione che gestisce attualmente il dispositivo. Quando gli insiemi di ID associazione di dispositivi e profili si sovrappongono, significa che le organizzazioni che gestiscono il dispositivo e l'utente sono affiliate. Per scoprire di più sull'affiliazione degli utenti, visita la pagina https://support.google.com/chrome/a/answer/12801245?ref_topic=9027936.

profileAffiliationIds[]

string

Gli ID di affiliazione delle organizzazioni affiliate all'organizzazione che attualmente gestisce l'utente del profilo Chrome o l'utente di ChromeOS.

builtInDnsClientEnabled

boolean

Indica se viene utilizzato il client DNS integrato di Chrome. In caso contrario viene utilizzato il client DNS del sistema operativo. Questo valore può essere controllato da un criterio aziendale: https://chromeenterprise.google/policies/#BuiltInDnsClientEnabled.

chromeRemoteDesktopAppBlocked

boolean

Indica se l'accesso all'applicazione Chrome Remote Desktop è bloccato tramite un criterio.

safeBrowsingProtectionLevel

enum (SafeBrowsingProtectionLevel)

Livello di protezione di Navigazione sicura. L'impostazione potrebbe essere controllata da un criterio aziendale: https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel.

siteIsolationEnabled

boolean

Indica se l'impostazione Isolamento dei siti (noto anche come Sito per processo) è attivata. Questa impostazione potrebbe essere controllata da un criterio aziendale: https://chromeenterprise.google/policies/#SitePerProcess

passwordProtectionWarningTrigger

enum (PasswordProtectionWarningTrigger)

Indica se la funzionalità Avviso di protezione tramite password è attivata o meno. La protezione tramite password avvisa gli utenti quando riutilizzano la propria password protetta su siti potenzialmente sospetti. Questa impostazione è controllata da un criterio aziendale: https://chromeenterprise.google/policies/#PasswordProtectionWarningTrigger.

Tieni presente che la mancata configurazione del criterio non ha gli stessi effetti dell'impostazione esplicita del criterio su PASSWORD_PROTECTION_OFF.

realtimeUrlCheckMode

enum (RealtimeUrlCheckMode)

Indica se la scansione degli URL non sicuri di livello Enterprise (ovvero personalizzata) è attivata o meno. Questa impostazione può essere controllata da un criterio aziendale: https://chromeenterprise.google/policies/#EnterpriseRealTimeUrlCheckMode

thirdPartyBlockingEnabled

boolean

Indica se Chrome blocca o meno l'inserimento di software di terze parti. Questa impostazione potrebbe essere controllata da un criterio aziendale: https://chromeenterprise.google/policies/?policy=ThirdPartyBlockingEnabled. Disponibile solo su Windows.

trigger

enum (Trigger)

L'attivatore che ha generato questo insieme di indicatori.

profileEnrollmentDomain

string

Dominio di registrazione del cliente che attualmente gestisce il profilo.

crowdStrikeAgent

object (CrowdStrikeAgent)

Proprietà dell'agente CrowdStrike installate sul dispositivo, se presenti. Disponibile solo su Windows e macOS.

Sistema operativo

Sistemi operativi supportati.

Enum
OPERATING_SYSTEM_UNSPECIFIED NON SPECIFICATO.
CHROME_OS ChromeOS.
CHROMIUM_OS ChromiumOS.
WINDOWS Windows.
MAC_OS_X Mac Os X.
LINUX Linux

DiskEncryption

Possibili stati di crittografia per il disco principale.

Enum
DISK_ENCRYPTION_UNSPECIFIED Non specificato.
DISK_ENCRYPTION_UNKNOWN Chrome non è riuscito a valutare lo stato della crittografia.
DISK_ENCRYPTION_DISABLED Il disco principale non è criptato.
DISK_ENCRYPTION_ENCRYPTED Il disco principale è criptato.

OsFirewall

Possibili stati del firewall a livello di sistema operativo.

Enum
OS_FIREWALL_UNSPECIFIED Non specificato.
OS_FIREWALL_UNKNOWN Chrome non è riuscito a valutare lo stato del firewall del sistema operativo.
OS_FIREWALL_DISABLED Il firewall del sistema operativo è disabilitato.
OS_FIREWALL_ENABLED Il firewall del sistema operativo è attivo.

ScreenLockSecured

Possibili stati della protezione tramite password del blocco schermo.

Enum
SCREEN_LOCK_SECURED_UNSPECIFIED Non specificato.
SCREEN_LOCK_SECURED_UNKNOWN Chrome non è riuscito a valutare lo stato del meccanismo di blocco schermo.
SCREEN_LOCK_SECURED_DISABLED Il blocco schermo non è protetto da password.
SCREEN_LOCK_SECURED_ENABLED Il blocco schermo è protetto da password.

SecureBootMode

Possibili stati della modalità Avvio protetto del dispositivo.

Enum
SECURE_BOOT_MODE_UNSPECIFIED Non specificato.
SECURE_BOOT_MODE_UNKNOWN Chrome non è riuscito a determinare la modalità di avvio sicuro.
SECURE_BOOT_MODE_DISABLED L'avvio protetto è stato disattivato nel software di avvio.
SECURE_BOOT_MODE_ENABLED L'avvio protetto è stato attivato nel software di avvio.

SafeBrowsingProtectionLevel

Possibili valori per il livello di protezione di Navigazione sicura.

Enum
SAFE_BROWSING_PROTECTION_LEVEL_UNSPECIFIED Non specificato.
INACTIVE Navigazione sicura è disattivata.
STANDARD Navigazione sicura è attiva in modalità standard.
ENHANCED Navigazione sicura è attiva in modalità avanzata.

PasswordProtectionWarningTrigger

Possibili valori per l'attivatore dell'avviso di protezione tramite password.

Enum
PASSWORD_PROTECTION_WARNING_TRIGGER_UNSPECIFIED Non specificato.
POLICY_UNSET Il criterio non è configurato.
PASSWORD_PROTECTION_OFF Non verrà mostrato alcun avviso di protezione tramite password.
PASSWORD_REUSE Se una password protetta viene riutilizzata, viene mostrato un avviso di protezione tramite password.
PHISHING_REUSE L'avviso di protezione tramite password viene mostrato se una password protetta viene riutilizzata su un sito web di phishing noto.

RealtimeUrlCheckMode

Possibili valori per la modalità di controllo degli URL in tempo reale.

Enum
REALTIME_URL_CHECK_MODE_UNSPECIFIED Non specificato.
REALTIME_URL_CHECK_MODE_DISABLED Disabilitata. Vengono applicati i controlli di Navigazione sicura per i consumatori.
REALTIME_URL_CHECK_MODE_ENABLED_MAIN_FRAME Il controllo in tempo reale degli URL del frame principale è attivato.

CrowdStrikeAgent

Proprietà dell'agente CrowdStrike installato su un dispositivo.

Rappresentazione JSON
{
  "agentId": string,
  "customerId": string
}
Campi
agentId

string

L'ID agente dell'agente Crowdstrike.

customerId

string

L'ID cliente a cui appartiene l'agente.

Trigger

Valori possibili per l'attivatore.

Enum
TRIGGER_UNSPECIFIED Non specificato.
TRIGGER_BROWSER_NAVIGATION Quando si accede a un URL all'interno di un browser.
TRIGGER_LOGIN_SCREEN Quando accedi a un account nella schermata di accesso di ChromeOS.

KeyTrustLevel

Il livello di attendibilità della chiave attestata.

Enum
KEY_TRUST_LEVEL_UNSPECIFIED NON SPECIFICATO.
CHROME_OS_VERIFIED_MODE Dispositivo ChromeOS in modalità verificata.
CHROME_OS_DEVELOPER_MODE Dispositivo ChromeOS in modalità sviluppatore.
CHROME_BROWSER_HW_KEY Browser Chrome con la chiave memorizzata nell'hardware del dispositivo.
CHROME_BROWSER_OS_KEY Browser Chrome con la chiave archiviata a livello di sistema operativo.
CHROME_BROWSER_NO_KEY Browser Chrome senza una chiave di attestazione.