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、profileKeyTrustLevel フィールドが含まれます。

成功した場合、レスポンスの本文には次の構造のデータが含まれます。

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
}
フィールド
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。

profileKeyTrustLevel

enum (KeyTrustLevel)

プロファイルが鍵の信頼レベルを証明しました。

attestedDeviceId

string

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

deviceEnrollmentId

string

ChromeOS デバイスのデバイス登録 ID。

認可スコープ

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

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

詳細については、認証の概要をご覧ください。

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,
  "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

boolean

Chrome がサードパーティ ソフトウェアによるコード挿入をブロックしているかどうか。この設定は、エンタープライズ ポリシー(https://chromeenterprise.google/policies/?policy=ThirdPartyBlockingEnabled)で制御できます。Windows でのみ利用可能です。

trigger

enum (Trigger)

この一連のシグナルを生成するトリガー。

profileEnrollmentDomain

string

現在プロファイルを管理しているお客様の登録ドメイン。

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 のログイン画面でアカウントにログインする場合。

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 ブラウザ。