【问题标题】:Profile into spring-security配置到 spring-security
【发布时间】:2013-11-12 10:42:54
【问题描述】:

我有一个关于 Spring Security 的问题,涉及到:

<authentication-manager>
    <authentication-provider>
      <user-service>

我需要该用户名可以进行一些与其他用户的其他操作不同的操作,即,

User Admin can make: create, read, delete, update.
User A can make: create, read, update.
User B can make: read, delete.

每个用户都是具有不同操作的不同配置文件。

我可以使用 spring-security 吗? 在数据库中类似于:

两个用户都访问相同的页面,但使用不同的操作,例如 www.myApp.com/pageOperation。

谢谢。

【问题讨论】:

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


    【解决方案1】:

    在 Spring Security 中,某些操作调用的权限存储为 GrantedAuthority 对象在“authorities”集合中的当前Authentication 对象中 因此,您应该通过检查用户名来为不同的用户提供不同的权限集合。您可以将它们硬编码到&lt;user-service&gt; 部分或提供自己的UserDetailService 实现,它根据用户名解析用户权限。 UserDetailsService 有方法 loadUserByUsername 接受用户名并返回包含用户权限集合的 UserDetails 实体。您可以在他调用某些操作时通过将@PreAuthorize 注释应用于目标方法或通过拦截适当的url来检查用户权限。希望这可以帮助。

    【讨论】:

    • 我有一个关于你的全球视野告诉我,但我没有像它那样做一个想法。你知道任何解释它的例子吗?这是因为我看得更清楚
    猜你喜欢
    • 2012-01-23
    • 2011-01-08
    • 2020-03-04
    • 2017-10-18
    • 2017-07-17
    • 2016-08-08
    • 1970-01-01
    • 2017-03-03
    • 2014-07-25
    相关资源
    最近更新 更多