Method: projects.apps.exchangeAppAttestAttestation

گواهی App Attest CBOR را می‌پذیرد و آن را با استفاده از شناسه‌های تیم از پیش پیکربندی‌شده و باندل شما با Apple تأیید می‌کند. در صورت معتبر بودن، یک مصنوع گواهی را برمی‌گرداند که بعداً می‌تواند با AppCheckToken با استفاده از apps.exchangeAppAttestAssertion مبادله شود.

برای راحتی و عملکرد، شی پاسخ این روش همچنین حاوی AppCheckToken خواهد بود (در صورت موفقیت آمیز بودن تأیید).

درخواست HTTP

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

URL از دستور GRPC Transcoding استفاده می کند.

پارامترهای مسیر

مولفه های
app

string

ضروری. نام منبع نسبی برنامه iOS، در قالب:

projects/{project_number}/apps/{app_id}

در صورت لزوم، عنصر project_number را می توان با ID پروژه پروژه Firebase جایگزین کرد. درباره استفاده از شناسه های پروژه در استاندارد AIP 2510 گوگل بیشتر بیاموزید.

از طرف دیگر، اگر این روش برای یک سرویس گیرنده OAuth که توسط App Check محافظت می شود فراخوانی شود، این فیلد همچنین می تواند به شکل زیر باشد:

oauthClients/{oauth_client_id}

می‌توانید شناسه مشتری OAuth را برای مشتریان OAuth خود در کنسول Google Cloud مشاهده کنید. توجه داشته باشید که در حال حاضر فقط کلاینت‌های iOS OAuth پشتیبانی می‌شوند و باید به برنامه‌های iOS Firebase مربوطه مرتبط شوند. لطفا برای اطلاعات بیشتر به مستندات مراجعه کنید.

درخواست بدن

بدنه درخواست حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "attestationStatement": string,
  "challenge": string,
  "keyId": string,
  "limitedUse": boolean
}
زمینه های
attestationStatement

string ( bytes format)

ضروری. عبارت App Attest توسط API App Attest سمت سرویس گیرنده برگردانده شده است. این یک شی CBOR کد شده با پایه 64url در پاسخ JSON است.

رشته ای با کد base64.

challenge

string ( bytes format)

ضروری. چالشی یک‌باره که بلافاصله با تماس قبلی با apps.generateAppAttestChallenge برگردانده شد.

رشته ای با کد base64.

keyId

string ( bytes format)

ضروری. شناسه کلید ایجاد شده توسط App Attest برای برنامه مشتری.

رشته ای با کد base64.

limitedUse

boolean

مشخص می کند که آیا این گواهی برای استفاده در زمینه استفاده محدود ( true ) یا مبتنی بر جلسه ( false ) است. برای فعال کردن این گواهی برای استفاده با ویژگی محافظت مجدد ، این را روی true تنظیم کنید. مقدار پیش فرض false است .

بدن پاسخگو

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی نمونه ای از ExchangeAppAttestAttestationResponse است.