【问题标题】:Spring Security Without Role-Base Using Database没有使用数据库的角色库的 Spring Security
【发布时间】:2013-06-12 10:30:13
【问题描述】:

我想实现 Spring Security(身份验证和授权)我用谷歌搜索它和任何 MKYoung Spring Security Example,我只想区分经过身份验证的用户和匿名用户之间的 URL,我不想使用任何基于角色的授权。

任何已注册并登录的用户,我想授权他们访问所有 URL,对于匿名用户,我希望他们访问登录和注册页面。 谢谢

【问题讨论】:

  • 问题是什么?您不必在 Spring 中使用基于角色的访问控制(在 Spring 参考手册中搜索 isAuthenticated()IS_AUTHENTICATED_FULLY)。
  • 感谢您的回复,去试试看。
  • 很好...检查 Jean-Philippe 的答案...我懒得像他那样写一个实际的答案:D.

标签: database spring authentication spring-security authorization


【解决方案1】:

你有没有试过在spring security xml配置文件中这样做:

<security:http auto-config="true" use-expressions="true">
    <security:intercept-url pattern="/login" access="permitAll" />
    <security:intercept-url pattern="/registration" access="permitAll" />
    <security:intercept-url pattern="/**" access="isAuthenticated()" />
     ...
</security:http>

【讨论】:

  • 不,我会尝试,这里我有另一个困惑 MKYoung 使用 引用数据源但对于我的情况,我使用的是 我的休眠
  • 再发一个关于数据源的问题,我会举例回答。
【解决方案2】:

您可以通过使用查询来实现:

authorities-by-username-query="select username, 'default' from users where username=?"

【讨论】:

    猜你喜欢
    • 2011-10-08
    • 2016-07-09
    • 2013-05-17
    • 2020-02-03
    • 2015-02-18
    • 2019-02-13
    • 2015-03-06
    • 2014-05-01
    • 2015-11-14
    相关资源
    最近更新 更多