【问题标题】:Applying spring security - is this usage correct?应用弹簧安全 - 这种用法正确吗?
【发布时间】:2016-09-22 22:54:52
【问题描述】:

我正在将 Spring Security 应用于需要执行以下操作的 Web 应用程序:

  • 限制某些角色/权限对某些页面的访问

  • 根据用户访问权限和用户角色限制对某些数据的访问(对于
    例如管理员可以查看所有数据,用户只能查看管理员授予用户访问权限的数据)

  • 根据用户拥有的访问权限(读取、
    管理等)

所以,我在想:

  • 限制某些角色/权限对某些页面的访问 -> 使用 hasRole
  • 限制对某些数据的访问 -> 直接在查询中过滤 从安全上下文中获取主体
  • 根据用户拥有的访问权限允许对数据执行操作 -> 使用 我自定义 PermissionEvluator 的 hasPermission 方法

现在这是我想出的一个设置,但想知道这是否有意义,以及它是否符合对 spring 安全框架的良好使用,或者我只是把它扭曲了太多。

【问题讨论】:

    标签: spring spring-security


    【解决方案1】:

    Spring 安全性提供了所有这些功能,并使这些功能的实现变得简单。是的,您的方法是正确的。您可以添加以下案例。

    • 安全无:允许未经身份验证的用户访问某些 pages.(login, public pages) 认证:允许访问
    • 经过身份验证的用户..(所有注册用户的一般访问权限)
    • 基于角色限制:只读、编辑/经理、基于
    • permissionEvaluator 对用户有权访问的数据

    您还可以使用 Spring Security 来保护您的 Web 应用程序免受恶意用户的攻击,这些功能包括 - CSRF 保护(默认启用) - XSS 保护 更多细节请阅读:spring security manual

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-03
      • 2020-09-19
      • 2012-06-15
      • 2018-09-08
      • 1970-01-01
      • 1970-01-01
      • 2021-07-01
      • 1970-01-01
      相关资源
      最近更新 更多