Method: challenge.verify

Weryfikuje odpowiedź na wyzwanie.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "challengeResponse": string,
  "expectedIdentity": string
}
Pola
challengeResponse

string (bytes format)

To pole jest wymagane. Wygenerowana odpowiedź na wyzwanie, reprezentacja SignedData w postaci bajtów.

Ciąg zakodowany w standardzie base64.

expectedIdentity

string

Opcjonalnie. Usługa może opcjonalnie udostępniać informacje o tożsamości urządzenia lub użytkownika powiązanego z kluczem. W przypadku EMK wartość to zarejestrowana domena. W przypadku EUK tą wartością jest adres e-mail użytkownika. Jeśli ta wartość jest obecna, zostanie ona porównana z treścią odpowiedzi. W przypadku braku dopasowania weryfikacja się nie powiedzie.

Treść odpowiedzi

Komunikat o wyniku dla VerifiedAccess.VerifyChallengeResponse.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis 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
}
Pola
devicePermanentId

string

W tym polu jest zwracany stały identyfikator urządzenia (tylko w przypadku odpowiedzi maszyny).

virtualDeviceId

string

Identyfikator urządzenia wirtualnego. Definicja identyfikatora urządzenia wirtualnego zależy od platformy.

customerId

string

Unikalny identyfikator klienta, do którego należy to urządzenie, określony w pakiecie Google Admin SDK na stronie https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers.

signedPublicKeyAndChallenge

string

Żądanie podpisania certyfikatu (w formacie SPKAC, zakodowanym w formacie base64) jest zwracane w tym polu. To pole zostanie skonfigurowane tylko wtedy, gdy urządzenie będzie zawierać żądanie podpisania certyfikatu w odpowiedzi na wyzwanie. (opcja uwzględniania przedstawiciela obsługi klienta jest teraz dostępna zarówno w przypadku odpowiedzi użytkownika, jak i komputera)

deviceSignal

string

Rola wycofana. Sygnał urządzenia w postaci ciągu tekstowego json. Wolę użyć deviceSignals.

deviceSignals

object (DeviceSignals)

Sygnały z urządzenia.

keyTrustLevel

enum (KeyTrustLevel)

Klucz bezpieczeństwa atestowanego urządzenia.

profileCustomerId

string

Unikalny identyfikator klienta, do którego należy ten profil określony w pakiecie Google Admin SDK na stronie https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers.

virtualProfileId

string

Identyfikator profilu na urządzeniu.

profileKeyTrustLevel

enum (KeyTrustLevel)

Atestowany kluczowy poziom zaufania profilu.

attestedDeviceId

string

Identyfikator atestowanego urządzenia (ADID).

deviceEnrollmentId

string

Identyfikator rejestracji urządzeń z ChromeOS.

Zakresy autoryzacji

Wymaga następującego zakresu OAuth:

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

Więcej informacji znajdziesz w artykule Omówienie uwierzytelniania.

DeviceSignals

Sygnały urządzenia zgłaszane przez Chrome. O ile nie wskazano inaczej, sygnały są dostępne na wszystkich platformach.

Zapis 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)
  }
}
Pola
deviceManufacturer

string

Nazwa producenta urządzenia.

deviceModel

string

Nazwa modelu urządzenia.

operatingSystem

enum (OperatingSystem)

Typ systemu operacyjnego aktualnie działającego na urządzeniu.

osVersion

string

Bieżąca wersja systemu operacyjnego. W systemach Windows i Linux wartość ta zawiera też informacje o poprawce zabezpieczeń.

displayName

string

Wyświetlana nazwa urządzenia określona przez użytkownika.

diskEncryption

enum (DiskEncryption)

Stan szyfrowania dysku. W ChromeOS dysk główny jest zawsze szyfrowany.

serialNumber

string

Numer seryjny urządzenia. W systemie Windows jest to numer seryjny BIOS. Funkcja niedostępna w większości dystrybucji Linuksa.

osFirewall

enum (OsFirewall)

Stan zapory sieciowej na poziomie systemu operacyjnego. W systemie ChromeOS wartość będzie zawsze WŁĄCZONA na zwykłych urządzeniach i UNKNOWN na urządzeniach w trybie programisty.

systemDnsServers[]

string

Lista adresów wszystkich serwerów DNS na poziomie systemu operacyjnego skonfigurowanych w ustawieniach sieci urządzenia.

hostname

string

Nazwa hosta urządzenia.

macAddresses[]

string

Adresy MAC urządzenia.

screenLockSecured

enum (ScreenLockSecured)

Stan ochrony hasłem blokady ekranu. W ChromeOS ta wartość jest zawsze WŁĄCZONA, ponieważ nie można wyłączyć wymogu podawania hasła lub kodu PIN podczas odblokowywania urządzenia.

allowScreenLock

boolean

Wartość zasady allowScreenLock na urządzeniu. Więcej informacji znajdziesz na stronie https://chromeenterprise.google/policies/?policy=AllowScreenLock. Funkcja dostępna tylko na ChromeOS.

imei[]

string

Identyfikator IMEI urządzenia. Funkcja dostępna tylko na ChromeOS.

meid[]

string

Identyfikator MEID urządzenia. Funkcja dostępna tylko na ChromeOS.

secureBootMode

enum (SecureBootMode)

Określa, czy oprogramowanie startowe urządzenia ma włączoną funkcję bezpiecznego rozruchu. Funkcja dostępna tylko w systemie Windows.

windowsMachineDomain

string

Domena Windows, do której dołączył bieżący komputer. Funkcja dostępna tylko w systemie Windows.

windowsUserDomain

string

Domena Windows bieżącego użytkownika systemu operacyjnego. Funkcja dostępna tylko w systemie Windows.

deviceEnrollmentDomain

string

Domena rejestracji klienta, który obecnie zarządza urządzeniem.

browserVersion

string

Bieżąca wersja przeglądarki Chrome, która wygenerowała ten zestaw sygnałów. Przykładowa wartość: „107.0.5286.0”.

deviceAffiliationIds[]

string

Identyfikatory organizacji powiązanych z organizacją, która obecnie zarządza urządzeniem. Gdy zestawy identyfikatorów przynależności urządzenia i profilu nakładają się, oznacza to, że organizacje zarządzające urządzeniem i użytkownik są powiązane. Więcej informacji o powiązaniach użytkowników znajdziesz na stronie https://support.google.com/chrome/a/answer/12801245?ref_topic=9027936.

profileAffiliationIds[]

string

Identyfikatory organizacji powiązanych z organizacją, która obecnie zarządza użytkownikiem profilu Chrome lub użytkownika ChromeOS.

builtInDnsClientEnabled

boolean

Określa, czy używany jest wbudowany klient DNS w Chrome. W innym przypadku używany jest klient DNS systemu operacyjnego. Tą wartością może zarządzać zasada przedsiębiorstwa: https://chromeenterprise.google/policies/#BuiltInDnsClientEnabled.

chromeRemoteDesktopAppBlocked

boolean

Określa, czy dostęp do aplikacji Pulpit zdalny Chrome jest zablokowany za pomocą zasad.

safeBrowsingProtectionLevel

enum (SafeBrowsingProtectionLevel)

Poziom ochrony Bezpiecznego przeglądania. Tym ustawieniem może zarządzać zasada przedsiębiorstwa: https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel.

siteIsolationEnabled

boolean

Określa, czy ustawienie Izolacja witryn (inaczej: izolacja witryn według procesu) jest włączone. Tym ustawieniem może zarządzać zasada przedsiębiorstwa: https://chromeenterprise.google/policies/#SitePerProcess

passwordProtectionWarningTrigger

enum (PasswordProtectionWarningTrigger)

Określa, czy funkcja ostrzeżenia dotyczącego ochrony hasłem jest włączona. Ochrona haseł ostrzega użytkowników, gdy używają chronionego hasła ponownie w podejrzanych witrynach. To ustawienie jest kontrolowane przez zasadę przedsiębiorstwa: https://chromeenterprise.google/policies/#PasswordProtectionWarningTrigger.

Pamiętaj, że zasada nieskonfigurowana nie ma takich samych skutków jak sytuacja, w której zasada ma wartość PASSWORD_PROTECTION_OFF.

realtimeUrlCheckMode

enum (RealtimeUrlCheckMode)

Wskazuje, czy jest włączone skanowanie niebezpiecznych adresów URL klasy korporacyjnej (tj. niestandardowe). Tym ustawieniem może zarządzać zasada przedsiębiorstwa: https://chromeenterprise.google/policies/#EnterpriseRealTimeUrlCheckMode

thirdPartyBlockingEnabled

boolean

Określa, czy Chrome blokuje wstrzykiwanie oprogramowania innych firm. To ustawienie może być kontrolowane przez zasadę przedsiębiorstwa: https://chromeenterprise.google/policies/?policy=ThirdPartyBlockingEnabled. Funkcja dostępna tylko w systemie Windows.

trigger

enum (Trigger)

Reguła, która wygenerowała ten zestaw sygnałów.

profileEnrollmentDomain

string

Domena rejestracji klienta, który obecnie zarządza profilem.

crowdStrikeAgent

object (CrowdStrikeAgent)

Właściwości agenta Crowdstrike zainstalowane na urządzeniu (jeśli występują). Funkcja dostępna tylko w systemach Windows i MacOS.

OperatingSystem

Obsługiwane systemy operacyjne.

Wartości w polu enum
OPERATING_SYSTEM_UNSPECIFIED BRAK DANYCH.
CHROME_OS ChromeOS.
CHROMIUM_OS System operacyjny Chromium.
WINDOWS Windows.
MAC_OS_X macOS X
LINUX Linux

DiskEncryption

Możliwe stany szyfrowania dysku głównego.

Wartości w polu enum
DISK_ENCRYPTION_UNSPECIFIED Nie określono.
DISK_ENCRYPTION_UNKNOWN Przeglądarka Chrome nie mogła ocenić stanu szyfrowania.
DISK_ENCRYPTION_DISABLED Dysk główny nie jest zaszyfrowany.
DISK_ENCRYPTION_ENCRYPTED Dysk główny jest zaszyfrowany.

OsFirewall

Możliwe stany zapory sieciowej na poziomie systemu operacyjnego.

Wartości w polu enum
OS_FIREWALL_UNSPECIFIED Nie określono.
OS_FIREWALL_UNKNOWN Chrome nie może ocenić stanu zapory sieciowej systemu operacyjnego.
OS_FIREWALL_DISABLED Zapora sieciowa systemu operacyjnego jest wyłączona.
OS_FIREWALL_ENABLED Zapora sieciowa systemu operacyjnego jest włączona.

ScreenLockSecured

Możliwe stany ochrony hasłem blokady ekranu.

Wartości w polu enum
SCREEN_LOCK_SECURED_UNSPECIFIED Nie określono.
SCREEN_LOCK_SECURED_UNKNOWN Przeglądarka Chrome nie mogła ocenić stanu mechanizmu blokady ekranu.
SCREEN_LOCK_SECURED_DISABLED Blokada ekranu nie jest chroniona hasłem.
SCREEN_LOCK_SECURED_ENABLED Blokada ekranu jest chroniona hasłem.

SecureBootMode

Możliwe stany trybu bezpiecznego rozruchu urządzenia.

Wartości w polu enum
SECURE_BOOT_MODE_UNSPECIFIED Nie określono.
SECURE_BOOT_MODE_UNKNOWN Przeglądarka Chrome nie mogła określić trybu bezpiecznego rozruchu.
SECURE_BOOT_MODE_DISABLED Bezpieczny rozruch został wyłączony w oprogramowaniu startowym.
SECURE_BOOT_MODE_ENABLED Bezpieczny rozruch został włączony w oprogramowaniu startowym.

SafeBrowsingProtectionLevel

Możliwe wartości poziomu ochrony Bezpiecznego przeglądania.

Wartości w polu enum
SAFE_BROWSING_PROTECTION_LEVEL_UNSPECIFIED Nie określono.
INACTIVE Bezpieczne przeglądanie jest wyłączone.
STANDARD Bezpieczne przeglądanie działa w trybie standardowym.
ENHANCED Bezpieczne przeglądanie działa w trybie rozszerzonym

PasswordProtectionWarningTrigger

Możliwe wartości aktywatora ostrzeżenia dotyczącego ochrony hasłem.

Wartości w polu enum
PASSWORD_PROTECTION_WARNING_TRIGGER_UNSPECIFIED Nie określono.
POLICY_UNSET Zasada nie jest skonfigurowana.
PASSWORD_PROTECTION_OFF Nie będzie wyświetlane żadne ostrzeżenie dotyczące ochrony hasłem.
PASSWORD_REUSE W przypadku ponownego użycia chronionego hasła wyświetlane jest ostrzeżenie dotyczące ochrony hasłem.
PHISHING_REUSE Ostrzeżenie dotyczące ochrony hasłem jest wyświetlane, jeśli chronione hasło zostanie użyte ponownie na znanej stronie wyłudzającej informacje.

RealtimeUrlCheckMode

Możliwe wartości trybu sprawdzania adresów URL w czasie rzeczywistym.

Wartości w polu enum
REALTIME_URL_CHECK_MODE_UNSPECIFIED Nie określono.
REALTIME_URL_CHECK_MODE_DISABLED Wyłączono. Stosowane są kontrole Bezpiecznego przeglądania konsumenckiego.
REALTIME_URL_CHECK_MODE_ENABLED_MAIN_FRAME Sprawdzanie w czasie rzeczywistym adresów URL ramki głównej jest włączone.

CrowdStrikeAgent

Właściwości agenta CrowdStrike zainstalowanego na urządzeniu.

Zapis JSON
{
  "agentId": string,
  "customerId": string
}
Pola
agentId

string

Identyfikator agenta Crowdstrike.

customerId

string

Identyfikator klienta, do którego należy agent.

Aktywator

Możliwe wartości aktywatora.

Wartości w polu enum
TRIGGER_UNSPECIFIED Nie określono.
TRIGGER_BROWSER_NAVIGATION Podczas otwierania adresu URL w przeglądarce.
TRIGGER_LOGIN_SCREEN Podczas logowania się na konto na ekranie logowania ChromeOS.

KeyTrustLevel

Poziom zaufania atestowanego klucza.

Wartości w polu enum
KEY_TRUST_LEVEL_UNSPECIFIED BRAK DANYCH.
CHROME_OS_VERIFIED_MODE Urządzenie z ChromeOS w trybie zweryfikowanym.
CHROME_OS_DEVELOPER_MODE Urządzenie z ChromeOS w trybie programisty.
CHROME_BROWSER_HW_KEY Przeglądarka Chrome z kluczem zapisanym na sprzęcie urządzenia.
CHROME_BROWSER_OS_KEY Przeglądarka Chrome z kluczem zapisanym na poziomie systemu operacyjnego.
CHROME_BROWSER_NO_KEY Przeglądarka Chrome bez klucza atestu.