Method: oauthClients.exchangeAppAttestAttestation

सीबीओआर को प्रमाणित करने के लिए, ऐप्लिकेशन को प्रमाणित किया जाता है. साथ ही, Apple के साथ पहले से कॉन्फ़िगर की गई टीम और बंडल आईडी का इस्तेमाल करके, इसकी पुष्टि की जाती है. अगर मान्य है, तो पुष्टि करने वाला ऐसा आर्टफ़ैक्ट दिखाता है जिसे बाद में, oauthClients.exchangeAppAttestAssertion का इस्तेमाल करके AppCheckToken से बदला जा सकता है.

सुविधा और परफ़ॉर्मेंस के लिए, इस तरीके के रिस्पॉन्स ऑब्जेक्ट में एक AppCheckToken भी होगा (अगर पुष्टि हो जाती है).

एचटीटीपी अनुरोध

POST https://firebaseappcheck.googleapis.com/v1beta/{app=oauthClients/*}:exchangeAppAttestAttestation

यह यूआरएल gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.

पाथ के पैरामीटर

पैरामीटर
app

string

ज़रूरी है. iOS ऐप्लिकेशन के रिसॉर्स का नाम, फ़ॉर्मैट में:

projects/{project_number}/apps/{app_id}

ज़रूरत पड़ने पर, project_number एलिमेंट को Firebase प्रोजेक्ट के प्रोजेक्ट आईडी से बदला जा सकता है. Google के AIP 2510 स्टैंडर्ड में, प्रोजेक्ट आइडेंटिफ़ायर का इस्तेमाल करने के बारे में ज़्यादा जानें.

इसके अलावा, अगर ऐप्लिकेशन की जांच करने की सुविधा से सुरक्षित OAuth क्लाइंट के लिए, इस तरीके का इस्तेमाल किया जा रहा है, तो यह फ़ील्ड इस फ़ॉर्मैट में भी हो सकता है:

oauthClients/{oauth_client_id}

Google Cloud Console में, अपने OAuth क्लाइंट के लिए OAuth क्लाइंट आईडी देखा जा सकता है. ध्यान दें कि फ़िलहाल सिर्फ़ iOS OAuth क्लाइंट काम करते हैं. साथ ही, उन्हें संबंधित iOS Firebase ऐप्लिकेशन से लिंक किया जाना चाहिए. ज़्यादा जानकारी के लिए, कृपया दस्तावेज़ देखें.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इस तरह का डेटा शामिल होता है:

जेएसओएन के काेड में दिखाना
{
  "attestationStatement": string,
  "challenge": string,
  "keyId": string,
  "limitedUse": boolean
}
फ़ील्ड
attestationStatement

string ( bytes format)

ज़रूरी है. क्लाइंट-साइड App Attest API से मिला ऐप्लिकेशन प्रमाणित करने का स्टेटमेंट. यह JSON के रिस्पॉन्स में, base64url कोड में बदला गया CBOR ऑब्जेक्ट है.

base64 कोड में बदली गई स्ट्रिंग.

challenge

string ( bytes format)

ज़रूरी है. oauthClients.generateAppAttestChallenge को तुरंत पहले किए गए कॉल करने पर, एक बार इस्तेमाल होने वाला चैलेंज लौटाया गया.

base64 कोड में बदली गई स्ट्रिंग.

keyId

string ( bytes format)

ज़रूरी है. कुंजी का आईडी, ऐप्लिकेशन को प्रमाणित करने से, क्लाइंट ऐप्लिकेशन के लिए जनरेट होता है.

base64 कोड में बदली गई स्ट्रिंग.

limitedUse

boolean

इससे पता चलता है कि इस प्रमाणित करने का इस्तेमाल सीमित इस्तेमाल ( true ) के लिए है या सेशन के हिसाब से ( false ) संदर्भ में. इस पुष्टि को रीप्ले से मिलने वाली सुरक्षा सुविधा के साथ इस्तेमाल किया जा सके, इसके लिए इसे true पर सेट करें. डिफ़ॉल्ट वैल्यू false है.

जवाब का मुख्य भाग

कामयाब होने पर, जवाब के मुख्य हिस्से में ExchangeAppAttestAttestationResponse का एक इंस्टेंस शामिल होता है.