Method: oauthClients.exchangeAppAttestAttestation

Принимает аттестацию App Attest CBOR и проверяет ее в Apple, используя предварительно настроенную команду и идентификаторы пакета. Если оно действительно, возвращает артефакт аттестации, который позже можно обменять на AppCheckToken с помощью oauthClients.exchangeAppAttestAssertion .

Для удобства и производительности объект ответа этого метода также будет содержать 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. Узнайте больше об использовании идентификаторов проектов в стандарте Google AIP 2510 .

Альтернативно, если этот метод вызывается для клиента OAuth, защищенного проверкой приложений, это поле также может иметь следующий формат:

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 в кодировке Base64url в ответе JSON.

Строка в кодировке Base64.

challenge

string ( bytes format)

Необходимый. Одноразовый вызов, возвращаемый непосредственным предыдущим вызовом oauthClients.generateAppAttestChallenge .

Строка в кодировке Base64.

keyId

string ( bytes format)

Необходимый. Идентификатор ключа, созданный App Attest для клиентского приложения.

Строка в кодировке Base64.

limitedUse

boolean

Указывает, предназначено ли это подтверждение для использования в контексте ограниченного использования ( true ) или на основе сеанса ( false ). Чтобы включить эту аттестацию для использования с функцией защиты от повтора , установите для этого параметра true . Значение по умолчанию — false .

Тело ответа

В случае успеха тело ответа содержит экземпляр ExchangeAppAttestAttestationResponse .