gpt4 book ai didi

java - 在 Java Web App 中集成 Google 的 OAuth/OpenID 混合库?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:16:43 24 4
gpt4 key购买 nike

我正在构建一个需要访问用户的 Google 日历数据的 Java 网络应用程序 - 因此我认为 OAuth/OpenID 混合是最好的方法。

什么是处理这项工作的最佳库 - 并减少我这边的代码量?

我尝试了 openid4javaSpring Security OpenID(两者都不支持混合)以及 dyuproject(无法集成).

PS:GAE 不是一个选项

有什么想法吗?

最佳答案

我不知道任何集成库,但我使用 OpenID 库 ( openid4java )、OAuth 库 ( net.oauth Java implementation [编辑:或 Scribe ]) 和我的徒手操作如下:

我的 OAuth 消费者 key 类似于 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 响应:

openid.ext2.request_token=<request-token>

我将收到的请求 token 与访问 token 和访问密码交换,这是进行 OAuth 授权调用所需的。就这样!

请注意,在普通的 OAuth 中,您必须使用请求 token 和请求 token ,但在这里您不需要它们。

为了获得更好的视野,您可以阅读 Google OAuth , Google OpenIDOpenID OAuth Extension .

编辑:Here (comment 8)是 openid4java 的 OAuth 扩展,它为您完成上述工作。

关于java - 在 Java Web App 中集成 Google 的 OAuth/OpenID 混合库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4069060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com