2017-10-04 50 views
-1

我即将在我的应用中实现用户身份验证。Spring(引导)+ Angular(2 | 4)身份验证选项

由于这是我的第一个Angular + Spring项目,我想知道什么是可能的身份验证选项。我不等待详细的指示,概念水平就够了,这样我就知道在哪里挖掘。

我考虑进一步的后端应用程序开发的方式有两种:

  1. REST等;
  2. 定时弹簧MVC,但我不知道如何在这种情况下结合角度和弹簧。在这方面的任何建议也表示赞赏。
+1

我即将开始将其应用于我的SpringMVC应用程序。你可以使用jwt - > https://jwt.io/这里有一些库,我遇到过jwt https://github.com/auth0/java-jwt https://github.com/jwtk/jjwt你'重新为Angular构建一个API? – LogicDev

+0

可以通过查看弹簧安全参考文档来回答此问题。 (如果您不了解文档,请询问您不明白的具体问题。) – meriton

+0

@ user5500750感谢您的信息!可能我会使用REST api来处理Angular,因为我找不到任何信息,Angular如何以非REST方式与spring进行交互。 –

回答

1

有多种方法可以实现这一点。总体思路是,角客户端为每个请求添加一个凭证(通常在授权头中),在执行请求之前,后端的servlet Filter将进行验证。

从简单的HTTP Basic Authentication(弹簧安全性可以轻松实现)到OAuth 2(及其扩展OpenID Connect)等完整的单点登录有各种标准方法来完成此操作。

我听说,智威汤逊有缺点,其中一人是不可能的,直到他的JWT令牌过期阻止用户,这是非常重要的,我的情况

不一定。 JWT是用于身份验证的标准,而不是访问控制。也就是说,它只是描述了一种识别用户的方式,但不会限制您如何制定访问控制决策。特别是,授权框架完全有可能为每个请求加载用户权限,尽管这样做可能不是其默认配置。

+0

非常有用。谢谢。 –