Method: challenge.verify

チャレンジ レスポンスを検証します。

HTTP リクエスト

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

この URL は gRPC Transcoding 構文を使用します。

リクエストの本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "challengeResponse": string,
  "expectedIdentity": string
}
フィールド
challengeResponse

string (bytes format)

必須。チャレンジに対する生成されたレスポンス(SignedData のバイト表現)。

Base64 でエンコードされた文字列。

expectedIdentity

string

省略可。サービスは、必要に応じて、鍵に関連付けられたデバイスまたはユーザーの ID 情報を提供できます。EMK の場合、この値は登録済みドメインです。EUK の場合、この値はユーザーのメールアドレスです。この値が指定されている場合、この値はレスポンスの内容と照合され、一致しない場合、検証は失敗します。

レスポンスの本文

VerifiedAccess.VerifyChallengeResponse の結果メッセージ。

管理対象外ブラウザで管理対象プロファイルが正常に処理された場合に返されるレスポンスには、devicePermanentId、keyTrustLevel、virtualDeviceId、customerId フィールドは含まれません。管理対象プロファイルには、代わりに 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

出力専用。デバイスの永続 ID がこのフィールドに返されます(マシン レスポンスの場合のみ)。

virtualDeviceId

string

出力専用。デバイスの仮想デバイス ID。仮想デバイス ID の定義はプラットフォームによって異なります。

customerId

string

出力専用。このデバイスが属する一意の顧客 ID(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

出力専用。このプロファイルが属する一意の顧客 ID(Google Admin SDK の https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers で定義)。

virtualProfileId

string

出力専用。デバイス上のプロフィールのクライアント提供 ID。

profilePermanentId

string

出力専用。デバイス上のプロフィールの一意のサーバーサイド ID。

profileKeyTrustLevel

enum (KeyTrustLevel)

出力専用。プロファイルの証明済み鍵の信頼レベル。

attestedDeviceId

string

出力専用。対応の有無がわかるデバイス ID(ADID)。

deviceEnrollmentId

string

出力専用。ChromeOS デバイスのデバイス登録 ID。

認可スコープ

次の OAuth スコープが必要です。

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

詳細については、OAuth 2.0 Overview をご覧ください。

DeviceSignals

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)

出力専用。OS レベルのファイアウォールの状態。ChromeOS では、通常のデバイスでは常に ENABLED になり、デベロッパー モードのデバイスでは UNKNOWN になります。Chrome M131 で、macOS 15(Sequoia)以降のサポートが導入されました。

systemDnsServers[]

string

デバイスのネットワーク設定で構成されているすべての OS レベルの DNS サーバーのアドレスのリスト。

hostname

string

デバイスのホスト名。

macAddresses[]

string

出力専用。デバイスの MAC アドレス。

screenLockSecured

enum (ScreenLockSecured)

出力専用。画面ロックのパスワード保護の状態。ChromeOS では、デバイスのロック解除時にパスワードまたは PIN の入力を必須にすることを無効にできないため、この値は常に ENABLED になります。

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

出力専用。現在の OS ユーザーの Windows ドメイン。Windows でのみ利用できます。

deviceEnrollmentDomain

string

出力専用。現在デバイスを管理しているお客様の登録ドメイン。

browserVersion

string

出力専用。このシグナルセットを生成する Chrome ブラウザの現在のバージョン。値の例: "107.0.5286.0"。

deviceAffiliationIds[]

string

出力専用。現在デバイスを管理している組織に関連付けられている組織の関連付け ID。デバイスとプロファイルの関連付け ID のセットが重複する場合、デバイスとユーザーを管理している組織が関連付けられていることを意味します。ユーザーの関連性について詳しくは、https://support.google.com/chrome/a/answer/12801245?ref_topic=9027936 をご覧ください。

profileAffiliationIds[]

string

出力専用。Chrome プロファイルのユーザーまたは ChromeOS ユーザーを現在管理している組織に関連付けられている組織の関連付け ID。

builtInDnsClientEnabled

boolean

出力専用。Chrome の組み込み DNS クライアントを使用するかどうか。それ以外の場合は、OS DNS クライアントが使用されます。この値は、エンタープライズ ポリシー(https://chromeenterprise.google/policies/#BuiltInDnsClientEnabled)で制御できます。

chromeRemoteDesktopAppBlocked

boolean

出力専用。Chrome リモート デスクトップ アプリケーションへのアクセスがポリシーによってブロックされているかどうか。

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 ChromeOS です。
CHROMIUM_OS ChromiumOS です。
WINDOWS Windows。
MAC_OS_X Mac OS X。
LINUX Linux

DiskEncryption

メインディスクの暗号化の状態。

列挙型
DISK_ENCRYPTION_UNSPECIFIED (指定なし)
DISK_ENCRYPTION_UNKNOWN Chrome で暗号化の状態を評価できませんでした。
DISK_ENCRYPTION_DISABLED メインディスクは暗号化されていません。
DISK_ENCRYPTION_ENCRYPTED メインディスクは暗号化されています。

OsFirewall

OS レベルのファイアウォールが取り得る状態。

列挙型
OS_FIREWALL_UNSPECIFIED (指定なし)
OS_FIREWALL_UNKNOWN Chrome で OS ファイアウォールの状態を評価できませんでした。
OS_FIREWALL_DISABLED OS ファイアウォールが無効になっている。
OS_FIREWALL_ENABLED OS ファイアウォールが有効になっている。

ScreenLockSecured

画面ロックのパスワード保護の状態。

列挙型
SCREEN_LOCK_SECURED_UNSPECIFIED (指定なし)
SCREEN_LOCK_SECURED_UNKNOWN Chrome で画面ロック メカニズムの状態を評価できませんでした。
SCREEN_LOCK_SECURED_DISABLED 画面ロックがパスワードで保護されていない。
SCREEN_LOCK_SECURED_ENABLED 画面ロックがパスワードで保護されている。

SecureBootMode

デバイスのセキュアブート モードの状態。

列挙型
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 セーフ ブラウジングを強化モードで有効にする。

PasswordProtectionWarningTrigger

パスワード保護の警告トリガーの有効な値。

列挙型
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 のリアルタイム チェックが有効。

CrowdStrikeAgent

デバイスにインストールされている CrowdStrike エージェントのプロパティ。

JSON 表現
{
  "agentId": string,
  "customerId": string
}
フィールド
agentId

string

出力専用。Crowdstrike エージェントのエージェント ID。

customerId

string

出力専用。エージェントが所属するお客様 ID。

トリガー

トリガーの有効な値。

列挙型
TRIGGER_UNSPECIFIED (指定なし)
TRIGGER_BROWSER_NAVIGATION ブラウザ内で URL に移動する場合。
TRIGGER_LOGIN_SCREEN ChromeOS のログイン画面でアカウントにログインする際。

ウイルス対策

デバイスのウイルス対策情報。

JSON 表現
{
  "state": enum (State)
}
フィールド
state

enum (State)

出力専用。デバイス上のウイルス対策の状態。Chrome M136 で導入されました。

デバイスで可能なウイルス対策の状態。

列挙型
STATE_UNSPECIFIED (指定なし)
MISSING デバイスでウイルス対策が検出されませんでした。
DISABLED デバイスに 1 つ以上のウイルス対策がインストールされているが、いずれも有効になっていない。
ENABLED デバイスで 1 つ以上のウイルス対策が有効になっている。

KeyTrustLevel

構成証明済み鍵の信頼レベル。

列挙型
KEY_TRUST_LEVEL_UNSPECIFIED 指定なし。
CHROME_OS_VERIFIED_MODE 確認済みモードの ChromeOS デバイス。
CHROME_OS_DEVELOPER_MODE デベロッパー モードの ChromeOS デバイス。
CHROME_BROWSER_HW_KEY デバイスのハードウェアに鍵が保存されている Chrome ブラウザ。
CHROME_BROWSER_OS_KEY 鍵が OS レベルで保存されている Chrome ブラウザ。
CHROME_BROWSER_NO_KEY 構成証明キーのない Chrome ブラウザ。