图书馆整合谷歌';Java Web应用程序中的OAuth/OpenID混合?
我正在构建一个Java web应用程序,它需要访问用户的Google日历数据——因此我认为OAuth/OpenID混合是最好的方法 处理这项工作并减少代码量的最佳库是什么 我尝试了openid4java和SpringSecurityOpenID(两者都不支持hybrid)以及dyuproject(无法将其集成) 注:GAE不是一个选项图书馆整合谷歌';Java Web应用程序中的OAuth/OpenID混合?,java,openid,oauth,Java,Openid,Oauth,我正在构建一个Java web应用程序,它需要访问用户的Google日历数据——因此我认为OAuth/OpenID混合是最好的方法 处理这项工作并减少代码量的最佳库是什么 我尝试了openid4java和SpringSecurityOpenID(两者都不支持hybrid)以及dyuproject(无法将其集成) 注:GAE不是一个选项 有什么想法吗?它不支持OpenID,但它是一个非常好的OAuth Java库,支持Google。我不知道任何集成库,但我使用OpenID库()、OAuth库([E
有什么想法吗?它不支持OpenID,但它是一个非常好的OAuth Java库,支持Google。我不知道任何集成库,但我使用OpenID库()、OAuth库([Edit:or])和我的徒手操作,如下所示: 我的
OAuth使用者密钥
类似于www.example.com,因此我使用http://*.example.com作为OpenID领域
将用户重定向到Google OpenID端点时,我添加了以下参数(重定向url或表单):
openid.ns.ext2=http://specs.openid.net/extensions/oauth/1.0
openid.ext2.consumer=<my oauth consumer key>
openid.ext2.scope=<oauth scope to be authorized>
openid.ns.ext2=http://specs.openid.net/extensions/oauth/1.0
openid.ext2.consumer=
openid.ext2.scope=
除了普通OpenID响应,我还收到:
openid.ext2.request_token=<request-token>
openid.ext2.request\u令牌=
我将收到的请求令牌与访问令牌和访问秘密交换,这是进行OAuth授权调用所需的。就这些
注意,在普通OAuth和请求令牌中,您必须使用请求机密和验证器,但在这里您不需要它们
为了有更好的视野,你可以阅读,和
编辑:是openid4java的OAuth扩展,上面为您做了这些。感谢您的提示-我现在正尝试使用Spring Security OpenID(它本身使用openid4java)并将伟大的东西John写在一起,“注意…”中的最后一行真的救了我一天。我随身携带请求令牌,但不知道如何获取访问令牌!现在我知道了:)所以你不需要任何形式的签名?我正在努力实现这一点,你能看一下吗?