如果您希望 API 后端需要经过身份验证才能访问,则必须获取所需的客户端 ID,并使用正确的 API 修饰器参数将其提供给后端。
Android
如需创建 OAuth 2.0 Android 客户端 ID,您需要具备证书密钥指纹。如果您使用 Android Studio,系统会自动创建调试密钥库和调试密钥。您可以使用调试密钥进行测试,但若要投入生产,则必须使用发布密钥。
请注意,默认的调试密钥库密码是 android
,密钥别名是 androiddebugkey
。对于 Linux 和 macOS,默认位置是 ~/.android/debug.keystore
。
- 为 Android 应用生成一个调试密钥或发布密钥(如果您还没有的话)。如果您使用 Android Studio,它会在您首次构建一个 Android 项目时,自动在调试密钥库中生成调试密钥。
- 在 Linux 或 macOS 终端窗口中,您可以使用
keytool
(包含在 Java SDK 中)获取密钥的指纹,方法如下: 输出显示如下指纹:keytool -exportcert -alias androiddebugkey -keystore path-to-debug-or-production-keystore -list -v
DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09
-
复制并保存在运行上述
keytool
命令后显示的密钥指纹。您需要提供该指纹才能在 Google Cloud 控制台中生成 Android 客户端 ID。 - 在 Google Cloud 控制台中,前往凭据页面。
- 从项目列表中选择包含 API 的项目。
- 如果这是您第一次在此项目中创建客户端 ID,请按照子步骤转到 OAuth 同意页面;否则,请跳至下一步。
- 点击 OAuth 同意屏幕。
- 在应用名称字段中输入一个名称。
- 按需填写其余字段。
- 点击保存。
- 在创建凭据下拉列表中选择 OAuth 客户端 ID。
- 选择 Android 作为应用类型。
- 在名称中,输入客户端 ID 的名称。
- 在签名证书的指纹中,输入您之前获得的指纹。
- 在软件包名称中,输入在
AndroidManifest.xml
文件中指定的 Android 应用软件包名称。 - 点击创建。
在您的 API 后端和客户端应用中使用生成的客户端 ID。
Web 客户端
- 在 Google Cloud 控制台中,前往凭据页面。
- 从项目列表中选择包含 API 的项目。
- 如果这是您第一次在此项目中创建客户端 ID,请按照子步骤转到 OAuth 同意页面;否则,请跳至下一步。
- 点击 OAuth 同意屏幕。
- 在应用名称字段中输入一个名称。
- 按需填写其余字段。
- 点击保存。
- 在创建凭据下拉列表中选择 OAuth 客户端 ID。
- 选择 Web 应用作为应用类型。
- 在名称中,输入客户端 ID 的名称。
-
在已获授权的 JavaScript 来源中,输入以下内容中的一项:
-
http://localhost:8080
(如果您在本地测试后端)。 -
https://YOUR_PROJECT_ID.appspot.com
(如果要向 App Engine 生产环境部署后端 API,请将YOUR_PROJECT_ID
替换为您的 App Engine 项目 ID)。
-
- 点击创建。
在您的 API 后端和客户端应用中使用生成的客户端 ID。
后续步骤
要详细了解如何在 Android 或 JavaScript 应用中支持身份验证,请参阅以下内容: