spring 3 + hibernate 4 +用户身份验证和授权权限

时间:2013-07-22 17:10:19

标签: java spring hibernate spring-mvc spring-security

Status: 等待有关dao,服务,控制器,视图的代码示例的全面答案。

使用spring 3 + hibernate 4,在服务中,dao,controller,view(mvc scenario),如http://www.cavalr.com/blog/Spring_3_and_Annotation_Based_Hibernate_4_Example, 在做某事之前,哪里是认证的好地方。例如

场合:

  1. 用户是否已登录? (首先按会话检查,然后按数据库用户名密码匹配)
  2. 会话?获取每个事务的上一个会话,并在没有会话时进行身份验证。

    1. 每次交易的更多身份验证,例如: 从数据库中获取一些值或布尔值,检查它是否为真(例如,此用户可以添加更多用户),然后继续。

    2. 用户是否拥有权限?如果验证失败,如何回应用户?

    3. 回应方式:

      一个。重定向到错误页面(虽然不喜欢)

      湾重定向到同一页面并显示错误消息(ok)

      ℃。使用ajax执行所有操作(最优选)不要重新加载或重定向页面,只需通过

      进行身份验证
      1. 会话和或

      2. 数据库

      3. 通过ajax在同一页面上发送错误消息。

      4. 如果验证成功,则继续。

      5. 在哪里放逻辑?在道,服务,控制器? 我有什么选择?

        有人可以提供示例代码吗?我用Google搜索但发现了无关紧要的例子。 我知道一个解决方案是弹簧安全,但你怎么看?是否有一个涵盖我所有问题的示例代码?

        示例场景:

        enter image description here

        我的情景是这样的。用户来,db查询tels /列出他有权访问的borad。当他进入董事会。盒子权限是列表,只向他显示可读框。然后与任务相同。它们中的每一个都具有创建/读取/更新/删除权限,并且在用户为一个进行操作时已知/获取。例如,尝试创建/读取/更新/删除板/盒/任务。

        现在有数百万个盒子/任务。每个加载权限可能是疯了吗?

        我不明白如何以及在何处进行身份验证和授权。 daos,服务,控制器,然后将问题作为错误消息发送到视图。一个dao可以呼叫另一个,一个服务可以呼叫另一个dao和/或服务。所有或大多数可能会授予授权失败。如何传递失败字符串以查看相应的位置?

        谢谢!

0 个答案:

没有答案