Method: oauthClients.exchangeAppAttestAttestation

Akzeptiert eine App Attest-CBOR-Attestierung und verifiziert sie bei Apple mithilfe Ihrer vorkonfigurierten Team- und Bundle-IDs. Wenn gültig, wird ein Attestierungsartefakt zurückgegeben, das später mithilfe von oauthClients.exchangeAppAttestAssertion gegen ein AppCheckToken ausgetauscht werden kann.

Aus Gründen der Nutzerfreundlichkeit und Leistung enthält das Antwortobjekt dieser Methode bei erfolgreicher Überprüfung auch ein AppCheckToken .

HTTP-Anfrage

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

Die URL verwendet die Syntax der gRPC-Transcodierung .

Pfadparameter

Parameter
app

string

Erforderlich. Der relative Ressourcenname der iOS-App im Format:

projects/{project_number}/apps/{app_id}

Bei Bedarf kann das Element project_number durch die Projekt-ID des Firebase-Projekts ersetzt werden. Weitere Informationen zur Verwendung von Projekt-IDs im Google-Standard AIP 2510 .

Wenn diese Methode für einen durch App Check geschützten OAuth-Client aufgerufen wird, kann dieses Feld auch das folgende Format haben:

oauthClients/{oauth_client_id}

Sie können die OAuth-Client-ID für Ihre OAuth-Clients in der Google Cloud Console ansehen. Beachten Sie, dass derzeit nur iOS-OAuth-Clients unterstützt werden, die mit den entsprechenden iOS Firebase-Apps verknüpft sein müssen. Weitere Informationen finden Sie in der Dokumentation .

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "attestationStatement": string,
  "challenge": string,
  "keyId": string,
  "limitedUse": boolean
}
Felder
attestationStatement

string ( bytes format)

Erforderlich. Die von der clientseitigen App Attest API zurückgegebene App Attest-Anweisung. Dies ist ein base64url-codiertes CBOR-Objekt in der JSON-Antwort.

Ein base64-codierter String.

challenge

string ( bytes format)

Erforderlich. Eine einmalige Herausforderung, die von einem unmittelbar vorhergehenden Aufruf von oauthClients.generateAppAttestChallenge zurückgegeben wurde.

Ein base64-codierter String.

keyId

string ( bytes format)

Erforderlich. Die von App Attest generierte Schlüssel-ID für die Client-App.

Ein base64-codierter String.

limitedUse

boolean

Gibt an, ob diese Attestierung für die Verwendung in einem Kontext mit eingeschränkter Verwendung ( true ) oder sitzungsbasiert ( false ) vorgesehen ist. Wenn Sie diese Attestierung für die Verwendung mit dem Feature Wiederholungsschutz verwenden möchten, legen Sie dafür true fest. Der Standardwert ist false .

Antworttext

Wenn der Vorgang erfolgreich ist, enthält der Antworttext eine Instanz von ExchangeAppAttestAttestationResponse .