Method: challenge.verify

Xác minh phản hồi thử thách.

Yêu cầu HTTP

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

URL sử dụng cú pháp Chuyển mã gRPC.

Nội dung yêu cầu

Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "challengeResponse": string,
  "expectedIdentity": string
}
Trường
challengeResponse

string (bytes format)

Bắt buộc. Phản hồi được tạo cho thử thách, bản trình bày bằng byte của SignedData.

Chuỗi được mã hoá base64.

expectedIdentity

string

Không bắt buộc. Dịch vụ có thể cung cấp thông tin nhận dạng về thiết bị hoặc người dùng liên kết với khoá (không bắt buộc). Đối với EMK, giá trị này là miền đã đăng ký. Đối với EUK, giá trị này là địa chỉ email của người dùng. Nếu có, giá trị này sẽ được kiểm tra dựa trên nội dung của phản hồi và quá trình xác minh sẽ không thành công nếu không có giá trị nào khớp.

Nội dung phản hồi

Thông báo kết quả cho VerifiedAccess.VerifyChallengeResponse.

Phản hồi được trả về khi thành công cho hồ sơ được quản lý trên trình duyệt không được quản lý sẽ KHÔNG có các trường devicePermanentId, keyTrustLevel, virtualDeviceId và customerId. Hồ sơ được quản lý sẽ INSTEAD có các trường profileCustomerId, virtualProfileId và profileKeyTrustLevel.

Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:

Biểu diễn dưới dạng 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
}
Trường
devicePermanentId

string

Mã nhận dạng cố định của thiết bị được trả về trong trường này (chỉ dành cho phản hồi của máy).

virtualDeviceId

string

Mã thiết bị ảo của thiết bị. Định nghĩa về mã thiết bị ảo là tuỳ theo nền tảng.

customerId

string

Mã khách hàng duy nhất của thiết bị này, theo xác định của SDK dành cho quản trị viên của Google tại https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers

signedPublicKeyAndChallenge

string

Yêu cầu ký chứng chỉ (ở định dạng SPKAC, được mã hoá base64) được trả về trong trường này. Trường này sẽ chỉ được đặt nếu thiết bị đã đưa CSR vào phản hồi thách thức. (hiện có lựa chọn đưa CSR vào cả câu trả lời của người dùng và máy)

deviceSignal

string

Không dùng nữa. Tín hiệu về thiết bị trong cách biểu diễn chuỗi JSON. Ưu tiên sử dụng deviceSignals để thay thế.

deviceSignals

object (DeviceSignals)

Tín hiệu về thiết bị.

keyTrustLevel

enum (KeyTrustLevel)

Mức độ tin cậy của khoá được chứng thực trên thiết bị.

profileCustomerId

string

Mã khách hàng duy nhất chứa hồ sơ này, như được xác định bởi SDK dành cho quản trị viên của Google tại https://developers.google.com/admin-sdk/directory/v1/guides/manage-customers

virtualProfileId

string

Mã nhận dạng của một hồ sơ trên thiết bị.

profileKeyTrustLevel

enum (KeyTrustLevel)

Mức độ tin cậy của khoá được chứng thực trong hồ sơ.

attestedDeviceId

string

Mã thiết bị đã được chứng thực (ADID).

deviceEnrollmentId

string

Mã đăng ký thiết bị cho thiết bị ChromeOS.

Phạm vi uỷ quyền

Yêu cầu phạm vi OAuth sau:

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

Để biết thêm thông tin, hãy xem bài viết Tổng quan về quy trình xác thực.

DeviceSignals

Tín hiệu thiết bị do Chrome báo cáo. Trừ phi có quy định khác, các tín hiệu đều có trên tất cả nền tảng.

Biểu diễn dưới dạng 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)
  }
}
Trường
deviceManufacturer

string

Tên nhà sản xuất thiết bị.

deviceModel

string

Tên của mẫu thiết bị.

operatingSystem

enum (OperatingSystem)

Loại Hệ điều hành hiện đang chạy trên thiết bị.

osVersion

string

Phiên bản hiện tại của Hệ điều hành. Trên Windows và Linux, giá trị này cũng sẽ bao gồm thông tin về bản vá bảo mật.

displayName

string

Tên hiển thị của thiết bị, do người dùng xác định.

diskEncryption

enum (DiskEncryption)

Trạng thái mã hoá của ổ đĩa. Trên ChromeOS, ổ đĩa chính luôn được MÃ HOÁ.

serialNumber

string

Số sê-ri của thiết bị. Trên Windows, giá trị này thể hiện số sê-ri của BIOS. Không dùng được trên hầu hết các bản phân phối của Linux.

osFirewall

enum (OsFirewall)

Trạng thái của tường lửa cấp hệ điều hành. Trên ChromeOS, giá trị này sẽ luôn là BẬT trên các thiết bị thông thường và LẠ trên các thiết bị ở chế độ nhà phát triển. Tín hiệu này hiện không có trên MacOS 15 (Sequoia) trở lên.

systemDnsServers[]

string

Danh sách địa chỉ của tất cả máy chủ DNS cấp hệ điều hành được định cấu hình trong phần cài đặt mạng của thiết bị.

hostname

string

Tên máy chủ của thiết bị.

macAddresses[]

string

Địa chỉ MAC của thiết bị.

screenLockSecured

enum (ScreenLockSecured)

Trạng thái của tính năng bảo vệ bằng mật khẩu Khoá màn hình. Trên ChromeOS, giá trị này sẽ luôn BẬT vì không có cách nào để tắt chế độ yêu cầu mật khẩu hoặc mã PIN khi mở khoá thiết bị.

allowScreenLock

boolean

Giá trị của chính sách AllowScreenLock trên thiết bị. Hãy xem https://chromeenterprise.google/policies/?policy=AllowScreenLock để biết thêm thông tin chi tiết. Chỉ có trên ChromeOS.

imei[]

string

Mã số nhận dạng thiết bị di động quốc tế (IMEI) của thiết bị. Chỉ có trên ChromeOS.

meid[]

string

Mã nhận dạng thiết bị di động (MEID) của thiết bị. Chỉ có trên ChromeOS.

secureBootMode

enum (SecureBootMode)

Liệu phần mềm khởi động của thiết bị đã bật tính năng Khởi động an toàn hay chưa. Chỉ có trên Windows.

windowsMachineDomain

string

Miền Windows mà máy hiện tại đã tham gia. Chỉ có trên Windows.

windowsUserDomain

string

Miền Windows cho người dùng hệ điều hành hiện tại. Chỉ có trên Windows.

deviceEnrollmentDomain

string

Miền đăng ký của khách hàng hiện đang quản lý thiết bị.

browserVersion

string

Phiên bản hiện tại của trình duyệt Chrome đã tạo ra tập hợp tín hiệu này. Giá trị mẫu: "107.0.5286.0".

deviceAffiliationIds[]

string

Mã liên kết của các tổ chức có liên kết với tổ chức hiện đang quản lý thiết bị. Khi bộ mã nhận dạng đơn vị liên kết của thiết bị và hồ sơ trùng nhau, điều đó có nghĩa là các tổ chức quản lý thiết bị và người dùng có mối liên kết với nhau. Để tìm hiểu thêm về mối liên kết của người dùng, hãy truy cập vào https://support.google.com/chrome/a/answer/12801245?ref_topic=9027936.

profileAffiliationIds[]

string

Mã liên kết của các tổ chức liên kết với tổ chức hiện đang quản lý người dùng của Hồ sơ Chrome hoặc người dùng ChromeOS.

builtInDnsClientEnabled

boolean

Liệu ứng dụng DNS tích hợp sẵn của Chrome có được dùng hay không. Nếu không, ứng dụng DNS của hệ điều hành sẽ được sử dụng. Giá trị này có thể được kiểm soát bằng chính sách doanh nghiệp: https://chromeenterprise.google/policies/#BuiltInDnsClientEnabled.

chromeRemoteDesktopAppBlocked

boolean

Liệu quyền truy cập vào ứng dụng Chrome Remote Desktop có bị chặn thông qua chính sách hay không.

safeBrowsingProtectionLevel

enum (SafeBrowsingProtectionLevel)

Mức độ bảo vệ của tính năng Duyệt web an toàn. Bạn có thể kiểm soát chế độ cài đặt đó bằng một chính sách doanh nghiệp: https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel.

siteIsolationEnabled

boolean

Liệu chế độ cài đặt Tách biệt trang web (còn gọi là Trang web trên mỗi quy trình) có được bật hay không. Chế độ cài đặt đó có thể do chính sách doanh nghiệp kiểm soát: https://chromeenterprise.google/policies/#SitePerProcess

passwordProtectionWarningTrigger

enum (PasswordProtectionWarningTrigger)

Liệu tính năng Cảnh báo bảo vệ bằng mật khẩu có được bật hay không. Tính năng bảo vệ mật khẩu sẽ cảnh báo người dùng khi họ sử dụng lại mật khẩu được bảo vệ trên các trang web có thể đáng ngờ. Chế độ cài đặt này chịu sự kiểm soát của một chính sách doanh nghiệp: https://chromeenterprise.google/policies/#PasswordProtectionWarningTrigger.

Xin lưu ý rằng việc không đặt chính sách sẽ không có tác dụng tương tự như việc đặt chính sách thành PASSWORD_PROTECTION_OFF một cách rõ ràng.

realtimeUrlCheckMode

enum (RealtimeUrlCheckMode)

Liệu tính năng quét URL không an toàn cấp doanh nghiệp (tức là tuỳ chỉnh) đã được bật hay chưa. Chế độ cài đặt này có thể do chính sách doanh nghiệp kiểm soát: https://chromeenterprise.google/policies/#EnterpriseRealTimeUrlCheckMode

thirdPartyBlockingEnabled

boolean

Chrome có đang chặn tính năng chèn phần mềm của bên thứ ba hay không. Chế độ cài đặt này có thể do chính sách doanh nghiệp kiểm soát: https://chromeenterprise.google/policies/?policy=ThirdPartyBlockingEnabled. Chỉ có trên Windows.

trigger

enum (Trigger)

Điều kiện kích hoạt đã tạo ra tập hợp tín hiệu này.

profileEnrollmentDomain

string

Miền đăng ký của khách hàng hiện đang quản lý trang doanh nghiệp.

crowdStrikeAgent

object (CrowdStrikeAgent)

Các thuộc tính của tác nhân Crowdstrike được cài đặt trên thiết bị (nếu có). Chỉ có trên Windows và MacOS.

Hệ điều hành

Hệ điều hành được hỗ trợ.

Enum
OPERATING_SYSTEM_UNSPECIFIED KHÔNG XÁC ĐỊNH.
CHROME_OS ChromeOS.
CHROMIUM_OS ChromiumOS.
WINDOWS Windows.
MAC_OS_X Mac Os X.
LINUX Linux

DiskEncryption

Các trạng thái mã hoá có thể có cho ổ đĩa chính.

Enum
DISK_ENCRYPTION_UNSPECIFIED Không xác định.
DISK_ENCRYPTION_UNKNOWN Chrome không thể đánh giá trạng thái mã hoá.
DISK_ENCRYPTION_DISABLED Đĩa chính không được mã hoá.
DISK_ENCRYPTION_ENCRYPTED Ổ đĩa chính được mã hoá.

OsFirewall

Các trạng thái có thể có của tường lửa cấp hệ điều hành.

Enum
OS_FIREWALL_UNSPECIFIED Không xác định.
OS_FIREWALL_UNKNOWN Chrome không thể đánh giá trạng thái tường lửa của hệ điều hành.
OS_FIREWALL_DISABLED Tường lửa của hệ điều hành bị tắt.
OS_FIREWALL_ENABLED Tường lửa của hệ điều hành đang bật.

ScreenLockSecured

Các trạng thái có thể có của tính năng bảo vệ bằng mật khẩu Khoá màn hình.

Enum
SCREEN_LOCK_SECURED_UNSPECIFIED Không xác định.
SCREEN_LOCK_SECURED_UNKNOWN Chrome không thể đánh giá trạng thái của cơ chế Khoá màn hình.
SCREEN_LOCK_SECURED_DISABLED Tính năng Khoá màn hình không được bảo vệ bằng mật khẩu.
SCREEN_LOCK_SECURED_ENABLED Phương thức khoá màn hình được bảo vệ bằng mật khẩu.

SecureBootMode

Các trạng thái có thể có của chế độ Khởi động an toàn trên thiết bị.

Enum
SECURE_BOOT_MODE_UNSPECIFIED Không xác định.
SECURE_BOOT_MODE_UNKNOWN Chrome không thể xác định chế độ Khởi động an toàn.
SECURE_BOOT_MODE_DISABLED Tính năng Khởi động an toàn đã bị tắt trong phần mềm khởi động.
SECURE_BOOT_MODE_ENABLED Tính năng Khởi động an toàn đã được bật trên phần mềm khởi động.

SafeBrowsingProtectionLevel

Các giá trị có thể dùng cho Mức độ bảo vệ của tính năng Duyệt web an toàn.

Enum
SAFE_BROWSING_PROTECTION_LEVEL_UNSPECIFIED Không xác định.
INACTIVE Tính năng Duyệt web an toàn bị tắt.
STANDARD Tính năng Duyệt web an toàn hoạt động ở chế độ chuẩn.
ENHANCED Tính năng Duyệt web an toàn đang hoạt động ở chế độ nâng cao.

PasswordProtectionWarningTrigger

Các giá trị có thể dùng cho Điều kiện kích hoạt cảnh báo bảo vệ mật khẩu.

Enum
PASSWORD_PROTECTION_WARNING_TRIGGER_UNSPECIFIED Không xác định.
POLICY_UNSET Bạn chưa đặt chính sách này.
PASSWORD_PROTECTION_OFF Cảnh báo bảo vệ bằng mật khẩu sẽ không hiển thị.
PASSWORD_REUSE Cảnh báo bảo vệ mật khẩu sẽ xuất hiện nếu bạn sử dụng lại một mật khẩu được bảo vệ.
PHISHING_REUSE Cảnh báo bảo vệ mật khẩu sẽ xuất hiện nếu mật khẩu được bảo vệ bị sử dụng lại trên một trang web lừa đảo đã biết.

RealtimeUrlCheckMode

Các giá trị có thể có cho Chế độ kiểm tra URL theo thời gian thực.

Enum
REALTIME_URL_CHECK_MODE_UNSPECIFIED Không xác định.
REALTIME_URL_CHECK_MODE_DISABLED Đang tắt. Cơ chế kiểm tra thông qua tính năng Duyệt web an toàn mặc định sẽ được áp dụng.
REALTIME_URL_CHECK_MODE_ENABLED_MAIN_FRAME Tính năng kiểm tra các URL trong khung chính theo thời gian thực đang bật.

CrowdStrikeAgent

Thuộc tính của tác nhân CrowdStrike được cài đặt trên một thiết bị.

Biểu diễn dưới dạng JSON
{
  "agentId": string,
  "customerId": string
}
Trường
agentId

string

Mã nhân viên hỗ trợ của nhân viên hỗ trợ Crowdstrike.

customerId

string

Mã khách hàng của nhân viên hỗ trợ.

Kích hoạt

Các giá trị có thể có của điều kiện kích hoạt.

Enum
TRIGGER_UNSPECIFIED Không xác định.
TRIGGER_BROWSER_NAVIGATION Khi điều hướng đến một URL trong trình duyệt.
TRIGGER_LOGIN_SCREEN Khi đăng nhập vào một tài khoản trên màn hình đăng nhập ChromeOS.

KeyTrustLevel

Mức độ tin cậy của khoá được chứng thực.

Enum
KEY_TRUST_LEVEL_UNSPECIFIED KHÔNG XÁC ĐỊNH.
CHROME_OS_VERIFIED_MODE Thiết bị ChromeOS ở chế độ đã xác minh.
CHROME_OS_DEVELOPER_MODE Thiết bị ChromeOS ở chế độ nhà phát triển.
CHROME_BROWSER_HW_KEY Trình duyệt Chrome có khoá được lưu trữ trong phần cứng của thiết bị.
CHROME_BROWSER_OS_KEY Trình duyệt Chrome có khoá được lưu trữ ở cấp hệ điều hành.
CHROME_BROWSER_NO_KEY Trình duyệt Chrome không có khoá chứng thực.