c# - 验证 Google 凭据

标签 c# oauth google-api google-oauth google-developers-console

当您在 Google Developer console 上创建凭据时您可以创建多种不同类型的凭据,具体取决于创建的类型,您可以拥有以下任何一种

  • 公共(public) API key
  • 客户编号
  • 客户 secret
  • 服务帐户电子邮件地址

它们都有不同的格式。 我已经删除了我发布的内容。

  • 公共(public) API key :AIzaSyAcMvMr_bk91qRKZ5SGYEvF5HWjXVE7Xkk
  • 客户端 ID:1046123799103-d0vpdthl4ms0soutcrpe036ckqn7rfpn.apps.googleusercontent.com
  • 客户端密码:G5QtTuBDp6ejKraR0XodNwaW
  • 服务帐户电子邮件地址:1046123799103-6v9cj8jbub068jgmss54m9gkuk4q2qu8@developer.gserviceaccount.com

有什么方法可以在我的应用程序中验证这些。它们是什么类型的键?

我正在使用 C#,但任何有关 key 类型的信息都会有所帮助。

我可能会想出某种 RegEx 检查客户端 ID 和服务帐户电子邮件。但必须有一种方法可以更好地验证它们。

更新:

Google 允许您验证访问 token ,为什么无法验证凭据 TokenInfo validation

不工作。

Convert.FromBase64String("AIzaSyAcMvMr_bk91qRKZ5SGYEvF5HWjXVE7Xkk");

最佳答案

验证凭据是否有效的唯一方法是尝试使用它们并查看服务器是否接受它们。

没有可以检查的校验和或算法,Google 没有为这些 token 指定格式,因此他们可以随时更改格式。您只能将它们视为不透明的 blob,然后将它们传递出去并查看服务器的响应。

关于c# - 验证 Google 凭据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33889598/

相关文章:

javascript - 将 XML feed 转换为 JSON,保留 itunes :image data

java - 为多个 Activity 创建 GoogleApiClient

c# - 多个 WPF 控件使用的 WCF 双工服务

c# - 二维瓷砖照明

c# - 具有相同View的ListView

javascript - 使用 $http.get() 通过 Angular 下载远程文件 - OAuth 身份验证

api - 使用 LinkedIn API 如何在 xml 消息中发送 HTML

android - 使用谷歌表格 api

c# - 将 Blazor RenderFragment 参数转发给子组件会引发异常

oauth - 使用 OAuth 创建 client_id 并注册帐户