我想使用 Go AppEngine 后端对 Android 用户进行身份验证,
我可以通过遵循http://android-developers.blogspot.co.il/2013/01/verifying-back-end-calls-from-android.html在 Android 中轻松获取 ID 令牌
ID-token 有效负载可以使用https://code.google.com/p/google-api-go-client/库的 oauth2/v2 包进行验证。
使用 AppEngine 需要进行一些安装调整,我在http://golangtutorials.blogspot.co.il/2011/11/using-external-api-in-go-appengine.html找到了一些指示
根据文档:“验证签名事实证明,这是使用 Google 公钥/私钥对签署的,Google 在 www.googleapis.com/oauth2/v1/certs 上发布公钥(我们定期更改);去向前看。
您必须验证 ID 令牌(实际上是 JSON Web 令牌)是否已使用这些证书之一进行签名。幸运的是,周围有不错的图书馆可以做到这一点。在这篇文章中,我将介绍 Java、Ruby 和 PHP。
这些库可以缓存 Google 证书并仅在需要时刷新它们,因此验证(几乎总是)是一个快速的静态调用。”
如何在 Go 中验证令牌是否由 Google 签名?