使用外部 oAuth2 提供商验证用户,java spring
Authentificate user with external oAuth2 provider, java spring
我目前正在使用 java 框架 Spring(新功能),尝试为具有 oAuth2 授权的移动设备构建无状态 REST API。一般来说,我想执行以下步骤:
- 用户访问登录 url,他将从那里被服务器重定向到 oAuth 提供商以在那里进行身份验证
- 社交提供商 return 重定向代码 url 的用户,我将其作为 GET 参数填写在之前的请求中
- 在重定向中 url 我捕获代码,用它交换来自社交提供商的数据,如果数据有效,我在我的数据库中找到与此数据关联的用户(例如,通过社交 ID)并为用户生成我的令牌和 return 它。
- 在以后的所有请求中,客户端在 HTTP header 中给我这个令牌,我通过这个令牌找到用户(已经使用 spring 安全过滤器实现)
就是这样,我只需要社交提供商对用户进行身份验证,但我没有找到解决这个问题的简单示例 - 到处都是大量抽象的巨大库,试图为我构建更复杂的安全层然后我想要。
有人可以给我代码示例或链接,以便使用 spring 工具探索这个简单问题的简单解决方案,最好在 java 配置中吗? (从外部 oAuth2 提供商获取用户数据)
所以,几天后我发现 amazing lib oAuth 请求,称为 scribe,只需几行代码就可以完成我想要的一切。
我目前正在使用 java 框架 Spring(新功能),尝试为具有 oAuth2 授权的移动设备构建无状态 REST API。一般来说,我想执行以下步骤:
- 用户访问登录 url,他将从那里被服务器重定向到 oAuth 提供商以在那里进行身份验证
- 社交提供商 return 重定向代码 url 的用户,我将其作为 GET 参数填写在之前的请求中
- 在重定向中 url 我捕获代码,用它交换来自社交提供商的数据,如果数据有效,我在我的数据库中找到与此数据关联的用户(例如,通过社交 ID)并为用户生成我的令牌和 return 它。
- 在以后的所有请求中,客户端在 HTTP header 中给我这个令牌,我通过这个令牌找到用户(已经使用 spring 安全过滤器实现)
就是这样,我只需要社交提供商对用户进行身份验证,但我没有找到解决这个问题的简单示例 - 到处都是大量抽象的巨大库,试图为我构建更复杂的安全层然后我想要。
有人可以给我代码示例或链接,以便使用 spring 工具探索这个简单问题的简单解决方案,最好在 java 配置中吗? (从外部 oAuth2 提供商获取用户数据)
所以,几天后我发现 amazing lib oAuth 请求,称为 scribe,只需几行代码就可以完成我想要的一切。