如何通过REST API为Spring-social和spring-security设置登录服务?

如何通过REST API为Spring-social和spring-security设置登录服务?,第1张

概述我想在客户端(没有jsps)有一个JS应用程序,它只与REST调用后端通信.我还想让用户能够使用FB,Twitter帐户登录.另外,我还想让用户注册自己的帐户.为此,我想在后端使用Spring-security和spring-social,在前面使用Javascript SDK从FB获取access_token,然后将其传递给后端.问题是:如何创建一个RES

我想在客户端(没有Jsps)有一个Js应用程序,它只与REST调用后端通信.我还想让用户能够使用FB,Twitter帐户登录.另外,我还想让用户注册自己的帐户.为此,我想在后端使用Spring-security和spring-social,在前面使用Javascript SDK从FB获取access_token,然后将其传递给后端.

问题是:如何创建一个REST控制器,使用spring-social和spring-security工具进行身份验证?

我通读了以下示例:

https://github.com/spring-projects/spring-social-samples

但为了这个目的,我无法真正找到如何使用ProvIDerSignInController或SpringSocialConfigurer.我想我不能在我的情况下使用SocialAuthenticationFilter,因为“/ auth / {provIDerID}”url不是我正在寻找的.但是,我猜这个ProvIDerSingInController似乎也没用.如果我错了,请纠正我.理想情况下,我希望受益于Spring Security框架的所有功能.

我将不胜感激任何建议.

最好的祝福

编辑

我想按照这里的流程:http://porterhead.blogspot.com/2013/01/writing-rest-services-in-java-part-4.html但使用Spring Social和Spring Security结合起来.

前端应用程序是用AngularJs编写的

第二次编辑

事实证明,您可以简单地利用所有Spring Social模块的优点.客户端唯一要做的就是在auth / facebook或任何链接上调用GET来触发整个0auth舞蹈,最终将返回身份验证结果.然后,您可以轻松控制流程(注册帐户或将一些相关信息返回给客户端,以便知道需要注册).所以SpringSocialConfigurer在这种情况下运行良好(除了它不支持范围设置的事实,但是,这可以手动更改,检查我的拉取请求@ github.com/spring-projects/spring-social/pull/ 141)

第3次编辑 – 2014年10月14日

根据要求,我将分享我如何使其成功.

鉴于我已按以下方式配置安全过滤器:

@Configuration@EnableWebSecuritypublic class SecurityConfig extends WebSecurityConfigurerAdapter {...@OverrIDepublic voID configure(final httpSecurity http) throws Exception {    http.formLogin()    ...    .and().apply(getSpringSocialConfigurer());}private SpringSocialConfigurer getSpringSocialConfigurer() {    final SpringSocialConfigurer config = new SpringSocialConfigurer();    config.alwaysUsePostLoginUrl(true);    config.postLoginUrl("http://somehost.com:1000/myApp");    return config;}

一旦我的应用程序设置完毕,我唯一需要调用的是http://somehost.com:1000/myApp/auth/facebook
有GET请求.最佳答案

“In addition,I also want to enable users to register their own
accounts”

如果您说要允许用户使用自己的凭据登录(没有FB / twiter),您还需要让他们创建帐户,并支持忘记密码等…

如果是这种情况,也许这个SO线程可能会有所帮助. auth-flow包还支持REST API.

Create Account,Forgot Password and Change Password 总结

以上是内存溢出为你收集整理的如何通过REST API为Spring-social和spring-security设置登录服务?全部内容,希望文章能够帮你解决如何通过REST API为Spring-social和spring-security设置登录服务?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1248311.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存