验证Google凭据

时间:2015-11-24 09:15:36

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

Google Developer console上创建凭据时您可以根据创建的类型创建多种不同类型的凭据,您可以使用以下任何一种

  • 公共API密钥
  • 客户ID
  • 客户端秘密
  • 服务帐户电子邮件地址

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

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

有没有办法在我的应用程序中验证这些。他们是什么类型的钥匙?

我正在使用C#,但有关哪种键有帮助的任何信息。

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

更新:

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

不工作。

Convert.FromBase64String("AIzaSyAcMvMr_bk91qRKZ5SGYEvF5HWjXVE7Xkk");

1 个答案:

答案 0 :(得分:4)

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

您无法检查校验和或算法,Google没有为这些令牌指定格式,因此可以随时更改它们。您只能将它们视为不透明的blob,然后将它们关闭并查看服务器响应的内容。