我有两个项目 - 一个用于Java Spring Services,另一个用于Web UI。
我已准备好登录功能,因为我的观点位于" html"扩展名保存在完全不同的文件夹中
如何在导航HTML页面时检查用户安全的会话 /身份验证,并让用户返回登录页面,以防会话过期或不成功会议?
我不想遵循的方法:
除非没有更好的方法,否则我不想将我的网址与会话ID进行聚类
我不想使用Spring Security,我的观点是设计的 HTML和AngularJS。
再次使用Cookie并不是一种安全的方法,因为任何人都可以获得所有权利 来自前端的饼干。
答案 0 :(得分:0)
在成功进行用户身份验证后,您需要发送带有一些必需令牌的Cookie。然后创建一个像/userAuth
这样的服务,浏览器会自动将您的cookie(无论是sessionID,令牌等等)信息附加到您的身上http请求标头。根据请求标头数据,您需要验证用户访问权限或授权。
如果用户未被授权,则发送401作为状态,并在您的angular $ http失败方法上,您需要发出/广播注销事件以重定向到适当的页面。
答案 1 :(得分:0)
在Spring方面,您需要设置一个HandlerInterceptorAdapter
来检查登录状态并将错误代码返回给html端。
可以将Spring handlerInterceptorAdapter配置为拦截所有控制器,hand具有preHeandle方法,该方法可用于检查用户会话或在应用程序无会话时登录用户。
然后你的所有WS都没有数据。
这里的文档
如果你想保护页面,你也可以在角度方面做一些工作,以避免在页面WS返回正确的错误代码(用户未经授权)时进行可视化。或者您可以检查令牌或coockie。
或者您已将模板及其访问权限置于Spring Control下 以拦截器在服务之前运行的方式。