Method: challenge.verify
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
واجهة برمجة التطبيقات challenge.verify
طلب HTTP
POST https://verifiedaccess.googleapis.com/v1/challenge:verify
يستخدِم عنوان URL بنية تحويل ترميز gRPC.
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
تمثيل JSON |
{
"challengeResponse": {
object (SignedData )
},
"expectedIdentity": string
} |
الحقول |
challengeResponse |
object (SignedData )
الردّ الذي تم إنشاؤه على التحدّي
|
expectedIdentity |
string
يمكن أن تقدّم الخدمة اختياريًا معلومات الهوية عن الجهاز أو المستخدم المرتبط بالمفتاح. بالنسبة إلى مفتاح EMK، تكون هذه القيمة هي النطاق المسجَّل. بالنسبة إلى مستخدم حساب بريد إلكتروني على Google، تكون هذه القيمة هي عنوان البريد الإلكتروني للمستخدم. في حال توفّرها، سيتم التحقّق من هذه القيمة مقارنةً بمحتوى الردّ، ولن يتم إثبات صحة الردّ في حال عدم تطابق القيمة.
|
نص الاستجابة
رسالة النتيجة لواجهة VerifiedAccess.VerifyChallengeResponse
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
تمثيل JSON |
{
"verificationOutput": string,
"devicePermanentId": string,
"signedPublicKeyAndChallenge": string,
"deviceEnrollmentId": string,
"attestedDeviceId": string
} |
الحقول |
verificationOutput (deprecated) |
string
للتحقّق من EMCert، يتم عرض المعرّف الدائم للجهاز هنا. للتحقّق من EUCert، يتم عرض signedPublicKeyAndChallenge [base64 encoded] إذا كان متوفّرًا، وإلا يتم عرض سلسلة فارغة. تم إيقاف هذا الحقل نهائيًا، لذا يُرجى استخدام الحقلَين devicePermanentId أو signedPublicKeyAndChallenge.
|
devicePermanentId |
string
يتم عرض رقم تعريف الجهاز الدائم في هذا الحقل (للردّ الآلي فقط).
|
signedPublicKeyAndChallenge |
string
يتم عرض طلب توقيع الشهادة (بتنسيق SPKAC وبترميز base64) في هذا الحقل. لن يتم ضبط هذا الحقل إلا إذا كان الجهاز قد تضمّن CSR في استجابة طلب التحقّق. (يتوفر الآن خيار تضمين خدمة العملاء لكلّ من ردود المستخدمين والردود الآلية)
|
deviceEnrollmentId |
string
يتم عرض رقم تعريف تسجيل الجهاز في هذا الحقل (لاستجابة الجهاز فقط).
|
attestedDeviceId |
string
رقم تعريف الجهاز الذي تم التصديق عليه (ADID) للجهاز، والذي يتم قراءته من البيانات التي تم التحقّق منها
|
نطاقات التفويض
يجب توفير نطاق OAuth التالي:
https://www.googleapis.com/auth/verifiedaccess
لمزيد من المعلومات، يُرجى الاطّلاع على OAuth 2.0 Overview.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThe challenge.verify API is used to verify a challenge response from a device or user, typically involving cryptographic signatures.\u003c/p\u003e\n"],["\u003cp\u003eThe request body requires the challenge response and optionally the expected identity of the device or user.\u003c/p\u003e\n"],["\u003cp\u003eUpon successful verification, the response body provides device identifiers, a certificate signing request (if applicable), and other relevant data.\u003c/p\u003e\n"],["\u003cp\u003eThis API requires the \u003ccode\u003ehttps://www.googleapis.com/auth/verifiedaccess\u003c/code\u003e OAuth scope for authorization.\u003c/p\u003e\n"]]],[],null,["# Method: challenge.verify\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n - [JSON representation](#body.VerifyChallengeResponseResult.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n\nchallenge.verify API\n\n### HTTP request\n\n`POST https://verifiedaccess.googleapis.com/v1/challenge:verify`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|--------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"challengeResponse\": { object (/chrome/verified-access/reference/rest/v1/SignedData) }, \"expectedIdentity\": string } ``` |\n\n| Fields ||\n|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `challengeResponse` | `object (`[SignedData](/chrome/verified-access/reference/rest/v1/SignedData)`)` The generated response to the challenge |\n| `expectedIdentity` | `string` Service can optionally provide identity information about the device or user associated with the key. For an EMK, this value is the enrolled domain. For an EUK, this value is the user's email address. If present, this value will be checked against contents of the response, and verification will fail if there is no match. |\n\n### Response body\n\nResult message for VerifiedAccess.VerifyChallengeResponse.\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"verificationOutput\": string, \"devicePermanentId\": string, \"signedPublicKeyAndChallenge\": string, \"deviceEnrollmentId\": string, \"attestedDeviceId\": string } ``` |\n\n| Fields ||\n|---------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `verificationOutput` **(deprecated)** | `string` | This item is deprecated! For EMCert check, device permanent id is returned here. For EUCert check, signedPublicKeyAndChallenge \\[base64 encoded\\] is returned if present, otherwise empty string is returned. This field is deprecated, please use devicePermanentId or signedPublicKeyAndChallenge fields. |\n| `devicePermanentId` | `string` Device permanent id is returned in this field (for the machine response only). |\n| `signedPublicKeyAndChallenge` | `string` Certificate Signing Request (in the SPKAC format, base64 encoded) is returned in this field. This field will be set only if device has included CSR in its challenge response. (the option to include CSR is now available for both user and machine responses) |\n| `deviceEnrollmentId` | `string` Device enrollment id is returned in this field (for the machine response only). |\n| `attestedDeviceId` | `string` Attested device id (ADID) of the device, read from the verified data. |\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/verifiedaccess`\n\nFor more information, see the [OAuth 2.0 Overview](/identity/protocols/OAuth2)."]]