Method: projects.apps.exchangeAppAttestAttestation

接受 App Attest CBOR 認證,並使用預先設定的團隊和軟體包 ID 向 Apple 進行驗證。如果有效,會傳回認證成果,之後可以使用 apps.exchangeAppAttestAssertion AppCheckToken 交換。

為方便起見,這個方法的回應物件也會包含 AppCheckToken (如果驗證成功)。

HTTP 要求

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

這個網址使用 gRPC 轉碼 語法。

路徑參數

參數
app

string

必要欄位。iOS 應用程式的相對資源名稱,格式如下:

projects/{project_number}/apps/{app_id}

如有需要,您可以將 project_number 元素替換為 Firebase 專案的專案 ID。請參閱 Google 的 AIP 2510 標準,進一步瞭解如何使用專案 ID。

此外,如果對受 App Check 保護的 OAuth 用戶端呼叫這個方法,這個欄位也可以採用下列格式:

oauthClients/{oauth_client_id}

您可以在 Google Cloud 控制台中查看 OAuth 用戶端的 OAuth 用戶端 ID。請注意,目前僅支援 iOS OAuth 用戶端,且必須與相應的 iOS Firebase 應用程式建立連結。詳情請參閱 說明文件

要求主體

要求主體會包含結構如下的資料:

JSON 表示法
{
  "attestationStatement": string,
  "challenge": string,
  "keyId": string,
  "limitedUse": boolean
}
欄位
attestationStatement

string ( bytes format)

必要欄位。用戶端 App Attest API 傳回的 App Attest 陳述式。這是 JSON 回應中的 Base64url 編碼 CBOR 物件。

採用 Base64 編碼的字串。

challenge

string ( bytes format)

必要欄位。先前呼叫 apps.generateAppAttestChallenge 後立即傳回的一次性挑戰。

採用 Base64 編碼的字串。

keyId

string ( bytes format)

必要欄位。App Attest 為用戶端應用程式產生的金鑰 ID。

採用 Base64 編碼的字串。

limitedUse

boolean

指定這項認證是否應用於有限用途 ( true ) 或以工作階段為基礎的 ( false ) 情境。如要讓此認證與 重播防護功能 功能搭配使用,請設為 true 。預設值為 false

回應主體

如果成功,回應主體會包含 ExchangeAppAttestAttestationResponse 的執行個體。