Method: oauthClients.exchangeAppAttestAttestation

App Attest CBOR 証明書を受け入れ、事前構成されたチームとバンドル ID を使用して Apple で検証します。有効な場合は、後で oauthClients.exchangeAppAttestAssertion を使用して AppCheckToken と交換できる構成証明アーティファクトを返します。

利便性とパフォーマンスのため、このメソッドのレスポンス オブジェクトには AppCheckToken も含まれます(検証が成功した場合)。

HTTP リクエスト

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

この URL は 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}

OAuth クライアントの OAuth クライアント ID は Google Cloud コンソールで確認できます。現時点でサポートされているのは 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)

必須。直前の oauthClients.generateAppAttestChallenge の呼び出しによって返される 1 回限りのチャレンジ。

base64 でエンコードされた文字列。

keyId

string ( bytes format)

必須。クライアント アプリ用に App Attest によって生成された鍵 ID。

base64 でエンコードされた文字列。

limitedUse

boolean

この構成証明を限定使用 true )のコンテキストで使用するか、セッション ベース false )のコンテキストで使用するかを指定します。この証明書を リプレイ保護 機能で使用できるようにするには、 true に設定します。デフォルト値は false です。

レスポンスの本文

成功した場合、レスポンスの本文には ExchangeAppAttestAttestationResponse のインスタンスが含まれます。