Method: challenge.verify

챌린지 응답을 확인합니다.

HTTP 요청

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

URL은 gRPC 트랜스코딩 구문을 사용합니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "challengeResponse": string,
  "expectedIdentity": string
}
필드
challengeResponse

string (bytes format)

필수 항목입니다. 챌린지에 대해 생성된 응답, SignedData의 바이트 표현입니다.

base64 인코딩 문자열입니다.

expectedIdentity

string

선택사항입니다. 서비스는 선택적으로 키와 연결된 기기 또는 사용자에 대한 ID 정보를 제공할 수 있습니다. EMK의 경우 이 값은 등록된 도메인입니다. EUK의 경우 이 값은 사용자의 이메일 주소입니다. 값이 있는 경우 이 값은 응답의 내용과 비교하여 확인되며, 일치하는 항목이 없으면 확인에 실패합니다.

응답 본문

VerifiedAccess.VerifyChallengeResponse의 결과 메시지입니다.

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

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

https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers에서 Google Admin SDK에 정의된 대로 이 기기가 속한 고유한 고객 ID입니다.

signedPublicKeyAndChallenge

string

인증서 서명 요청 (SPKAC 형식, base64 인코딩)이 이 필드에 반환됩니다. 이 입력란은 기기의 챌린지 응답에 CSR이 포함된 경우에만 설정됩니다. (현재 사용자 및 시스템 응답 모두에 CSR를 포함할 수 있음)

deviceSignal

string

지원 중단되었습니다. JSON 문자열 표현으로 표시된 기기 신호입니다. 대신 deviceSignals를 사용하는 것이 좋습니다.

deviceSignals

object (DeviceSignals)

기기 신호

keyTrustLevel

enum (KeyTrustLevel)

기기에서 증명된 키 신뢰 수준입니다.

profileCustomerId

string

https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers에서 Google Admin SDK에 정의된 대로 이 프로필이 속한 고유한 고객 ID입니다.

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에서는 값이 항상 일반 기기에서는 사용 설정되고 개발자 모드 기기에서는 UNKNOWN입니다.

systemDnsServers[]

string

기기의 네트워크 설정에 구성된 모든 OS 수준 DNS 서버의 부가기능 목록입니다.

hostname

string

기기의 호스트 이름입니다.

macAddresses[]

string

장치의 MAC 주소.

screenLockSecured

enum (ScreenLockSecured)

화면 잠금 비밀번호 보호의 상태입니다. ChromeOS에서는 기기를 잠금 해제할 때 비밀번호나 PIN 입력을 사용 중지할 방법이 없으므로 이 값은 항상 사용 설정됩니다.

allowScreenLock

boolean

기기의 AllowScreenLock 정책 값입니다. 자세한 내용은 https://chromeenterprise.google/policies/?policy=AllowScreenLock 페이지를 참고하세요. ChromeOS에서만 사용할 수 있습니다.

imei[]

string

기기의 IMEI (International Mobile Equipment Identity)입니다. ChromeOS에서만 사용할 수 있습니다.

meid[]

string

기기의 MEID (Mobile Equipment Identifier)입니다. 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 창.
MAC_OS_X 맥 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 브라우저