Method: projects.verifyAppCheckToken

验证给定的 App Check 令牌,并返回令牌使用情况信号,调用方可以对其执行操作。此方法目前仅支持通过以下证明提供方交换的 App Check 令牌:

  • Play Integrity API
  • App Attest
  • DeviceCheck( DCDevice 令牌)
  • reCAPTCHA Enterprise
  • reCAPTCHA v3
  • 自定义提供程序

也支持通过调试密钥交换的 App Check 令牌。使用不受支持的提供程序对以其他方式有效的 App Check 令牌调用此方法会导致返回 HTTP 400 错误。

返回此令牌在此调用之前是否已被使用。如果这是此方法第一次看到给定的 App Check 令牌,响应中的字段 alreadyConsumed 将不存在。然后,在以后对该令牌调用此方法的所有时,指定的令牌都会被标记为 alreadyConsumed (设置为 true )。

请注意,如果指定的 App Check 令牌无效,则无论该令牌是否已消耗,系统都将返回 HTTP 403 错误,而不是响应对象。

目前,在评估 App Check 令牌是否已被消耗时,系统只会统计对该确切方法的调用。在其他位置使用 App Check 令牌不会将该令牌标记为已被消耗。

调用方必须具有 firebaseappcheck.appCheckTokens.verify 权限才能调用此方法。此权限是 Firebase App Check Token Verifier 角色 的一部分。

HTTP 请求

POST https://firebaseappcheck.googleapis.com/v1beta/{project=projects/*}:verifyAppCheckToken

网址采用 gRPC 转码 语法。

路径参数

参数
project

string

必需。为其生成令牌的项目的相对资源名称,格式为:

projects/{project_number}

如有必要,可以将 project_number 元素替换为 Firebase 项目的 ID。详细了解如何按照 Google 的 AIP 2510 标准使用项目标识符。

请求正文

请求正文包含结构如下的数据:

JSON 表示法
{
  "appCheckToken": string
}
字段
appCheckToken

string

必需。要验证的 App Check 令牌。

不支持从 SafetyNet 提供程序交换的 App Check 令牌;系统会返回 HTTP 400 错误。

响应正文

projects.verifyAppCheckToken 方法的响应消息。

如果成功,响应正文将包含结构如下的数据:

JSON 表示法
{
  "alreadyConsumed": boolean
}
字段
alreadyConsumed

boolean

此令牌是否已被使用。

如果这是此方法第一次看到给定的 App Check 令牌,响应中将省略此字段。然后,在以后对该令牌调用此方法的所有时,指定的令牌都会被标记为 alreadyConsumed (设置为 true )。

请注意,如果指定的 App Check 令牌无效,则无论该令牌是否已消耗,系统都会返回 HTTP 403 错误,而不是包含此字段的响应。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/firebase

如需了解详情,请参阅 Authentication 概览