在gcloud中,凭据有何不同?

时间:2017-10-21 21:55:14

标签: android api google-api google-oauth google-api-client

尝试使用谷歌翻译API。凭证中有: 1)API密钥 2)OAuth 2.0客户端ID 3)服务帐户密钥

现在我脑子里乱七八糟。我做了一个客户。我只是不能在他们的系统中认证。

1 个答案:

答案 0 :(得分:0)

凭据,访问权限,安全性和身份 对控制台中表示的API的每个请求都必须包含唯一标识符。唯一标识符使控制台能够将请求与特定项目联系起来,以监控流量并实施配额。

Google支持两种创建唯一标识符的机制:

OAuth 2.0客户端ID:对于使用OAuth 2.0协议调用Google API的应用程序,您可以使用OAuth 2.0客户端ID生成访问令牌。令牌包含唯一标识符。有关详细信息,请参阅设置OAuth 2.0。

API密钥:API密钥是您使用控制台生成的唯一标识符。使用API​​密钥不需要用户操作或同意。 API密钥不授予对任何帐户信息的访问权限,也不用于授权。

当您的应用程序在服务器上运行并访问以下类型的数据之一时,请使用API​​密钥:

数据所有者已将其标识为公开的数据,例如公共日历或博客。 由Google地图或Google翻译等Google服务拥有的数据。 (访问限制可能适用。) 有关详细信息,请参阅设置API密钥。

如果您只调用不需要用户数据的API(例如Google自定义搜索API),那么API密钥可能比OAuth 2.0访问令牌更易于使用。但是,如果您的应用程序已使用OAuth 2.0访问令牌,则无需生成API密钥。如果传递的OAuth 2.0访问令牌已与相应的项目关联,则Google会忽略已传递的API密钥。

注意:对于Cloud Platform Console中表示的所有Google API请求,您必须使用OAuth 2.0访问令牌或API密钥。并非所有API都需要授权电话。要了解特定通话是否需要授权,请参阅您正在使用的API的文档。