我目前正在开发一个轻量级的web应用程序,在服务器端使用Jax-RS (部署在Tomcat7容器上),在前端使用HTML5、CSS3和jQuery。
连接工作正常。我不知道的是如何保护应用程序。我的想法是,用户可以通过前端注册,并被分配到默认角色(例如用户)。
从那时起,用户可以登录到网站,并且能够例如注册课程或类似的东西。
如何以安全的方式实现这一点?最好使用tomcats身份验证(摘要或表单)?还是有别的办法?例如,在每个请求中以MD5散列的形式传输用户和密码?
如果我能在Ressource Class中使用@RolesAllowed Annotation来注释只对特定组可访问的方法,那就太好了。
如何在客户端存储用户数据?这样用户就不需要在每次请求后都登录了?我必须为此使用cookie吗?
另一件我不确定的事情是如何存储购物车中的数据。在服务器上使用DB表来存储特定用户的所有购物车内容是不是一个好主意?我必须如何识别那里的用户?表中登录用户和购物车条目之间的映射是什么样子的?
我希望有人能帮助我:-)。
提前感谢
问候
发布于 2013-02-20 01:45:06
我已经使用会话cookie在几个系统中做到了这一点。简单的方法是将@Context HttpServletRequest作为参数添加到每个服务器端Jersey化的方法中,它将在那里获取会话。在我的例子中,我有一个安全处理程序(类似于Shiro,但没有它的包围盒),它将包装的用户会话放在线程上下文中作为Tomcat过滤器,所以我没有使用@Context HttpServletRequest注释。如果用户试图通过对他们不可用的ID访问that风格的资源,他们将得不到响应。
发布于 2013-02-20 00:19:29
我会按照您的建议使用表单身份验证。您可以通过使用角色注释来生成上下文安全约束。
要像存储篮子一样存储用户信息,请将其保存在会话对象中,然后在到期时序列化到磁盘或数据库,以便进一步持久化。
https://stackoverflow.com/questions/14869816
复制相似问题