首先请善待,因为我仍在尝试掌握整个 OpenId/Oauth2.0。
我最近参加了在比利时举行的 Devoxx 2012 会议。Tim Bray展示了使用 Oauth2.0 和 OpenId 的混合方法的能力(我相信它被称为 OpenId Connect)。这是描述它的幻灯片。如果我理解正确,他说 Android 应用程序可以进行身份验证(接收令牌)然后为服务器端 Web 应用程序请求令牌。然后,这将允许服务器端接收服务器令牌并检查令牌是否真正有效。验证这确实是来自 Android 应用程序的经过身份验证的用户。完成此操作后,服务器端 Web 应用程序可以安全地与 Android 应用程序交互。
我已经能够使用 Android 应用程序的 com.google.android.gms.auth.GoogleAuthUtil.getToken 进行身份验证。
我在 Google API 控制台 (https://code.google.com/apis/console/) 的 API 访问下创建了一个“已安装应用程序的客户端 ID”。我还在同一个控制台下创建了一个 Web 应用程序,但是当我按照幻灯片进行操作时,我无法获取应该发送到 Web 应用程序的令牌(通过 https)。我确信我只是错过了一个简单的步骤,或者只是不完全理解它,但我将非常感谢任何帮助。
谢谢,
亚历克斯