1

我想在 Java 中创建一个使用 Google 服务进行初始身份验证和 API 调用的 Web 应用程序。(例如谷歌日历)

我想远离 Google Apps Engine,因为它产生的开销以及 GAE 项目的要求。除此之外,我想避免使用 Google plus 登录按钮,因为它不是自定义品牌的。

对于身份验证,我想使用 OpenId,对于访问 Google API,我想使用 oAuth2。

目前我有一个使用最新的 oAuth2 库和代码的工作项目: https ://code.google.com/p/google-api-java-client/wiki/OAuth2

我正在使用轻量级 OpenId 库 JOpenId 进行 OpenId 身份验证。

该组合可用于成功进行身份验证,但我有两个主要问题:

  • JOpenId 没有积极维护超过 2 年。认证机制过时且不完整(基于项目的issue部分)
  • 在认证过程中,用户需要选择自己的google账号并授予两次权限。这会让用户感到困惑,如果用户在此过程中选择了两个不同的帐户,这可能会成为问题。

我已经将 Step2 ( http://code.google.com/p/step2/ ) 视为结合 Oauth2 和 OpenId 的混合解决方案,但该项目非常臃肿,包含一个大型 OpenId4Java 库、GAE 东西并且它使用 maven不再在线的依赖项(例如 Guice)

是否有其他更清洁的解决方案可以满足此项目要求?(最好能结合OpenId和OAuth2的库,还在维护)

4

0 回答 0