`
godo121
  • 浏览: 52952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spring security 的几个细节

阅读更多
<intercept-url pattern="/" access="permitAll"/>
<http pattern="/aboutus/**/*" security="none"/>
注意,permitAll和none是有区别的,permitAll指所有登录和未登录人员都可以访问,这个设置是需要经过security filter的,而none也指所有人员都可以访问,但不会经过sec filter。这个设置在一些地方会有影响,比如,要在不必授权的页面获取当前已登录用户的principal,这个时候,设置none肯定是获取不到,应该用permitAll。参考文章:

[url]
http://stackoverflow.com/questions/7391735/difference-between-access-permitall-and-filters-none
[/url]

在页面获取principal的信息,如果扩展了userdetails,也是可以获取得到的,例如<security:authentication property="principal.username" />是固有的属性,如果你扩展了userDetails,比如有一个getPhone属性,也可以<security:authentication property="principal.phone" />来获取。参考:

[url]
http://stackoverflow.com/questions/4951984/get-custom-property-of-user-principal
[/url]

对于未登录用户,spring sec会将用户重定向到login页面,那么,如果要让用户签权后,重定向到之前访问的页面怎么办?有个设置要设,always-use-default-target=false,设置成false。参考:

[url]
http://stackoverflow.com/questions/9267809/spring-mvc-and-login-redirect
[/url]

在页面上判断用户是否已经登录,可以用<sec:authorize access="isAuthenticated()"> ,参考:

[url]
http://stackoverflow.com/questions/9048995/get-spring-security-principal-in-jsp-el-expression
[/url]

spring sec中有匿名用户的概念,可以参考:

[url]
http://stackoverflow.com/questions/9054401/spring-security-3-1-and-returning-anonymous-userdetails
[/url]
分享到:
评论

相关推荐

    springSecurity 实现传参

    Spring Security 是一个强大的和高度可定制的身份验证和访问控制框架,用于Java应用程序。在这个场景中,我们关注的是如何使用Spring Security实现登录验证以及在登录过程中传递参数,特别是记录并返回用户登录前的...

    精彩:Spring Security 演讲PPT

    在演讲结束后,演讲嘉宾张明星还预留了时间进行现场问答,解答了观众关于Spring Security的实际应用和技术细节等问题。 ### 总结 通过这次演讲,我们可以看出Spring Security 2.x不仅在功能上强大,而且在灵活性和...

    Spring Security 3多用户登录实现一

    配置主要包括以下几个部分: - ****:定义URL匹配规则,以及对应的访问控制策略。 - ****:配置认证管理器,用于处理用户的登录尝试。 - **** 或 ****:定义用户服务,提供用户信息。 3. **多用户登录实现** - ...

    利用spring security控制同一个用户只能一次登陆

    这通常涉及到以下几个步骤: 1. **配置SessionRegistry**: Spring Security提供`SessionRegistry`接口,用于存储和管理用户会话信息。我们需要创建一个实现了此接口的类,并在配置中注册它。 ```java @Bean public...

    SpringMVC集成SpringSecurity

    在“SpringMVC 集成 SpringSecurity”的实践中,我们需要理解以下几个关键知识点: 1. **SpringSecurity架构**:SpringSecurity的核心架构由多个组件构成,包括过滤器链、认证管理、权限控制等。其中,过滤器链是...

    Spring Security 3 源码分析文档

    《Spring Security 3 源码分析文档》可能包含了以下几个关键知识点: 1. **架构概述**:Spring Security的核心架构由一系列组件构成,如Filter Chain、Authentication Manager、Access Decision Manager等。学习...

    SpringSecurity官网修改例子 tutorial

    在SpringSecurity中,主要涉及以下几个关键知识点: 1. **访问控制**:SpringSecurity提供了基于角色的访问控制(RBAC),允许开发者定义用户角色和权限,以决定哪些用户可以访问哪些资源。在示例中,你可以看到...

    springSecurity demo 下载可用

    在SSM集成Spring Security的过程中,主要涉及以下几个关键知识点: 1. **配置Spring Security**: 首先,你需要在Spring Security的核心配置类中启用安全配置,并指定认证和授权的规则。这通常通过实现`...

    Spring Security OAuth2认证授权示例详解

    OAuth2的授权流程通常包括以下几个步骤: - 用户登录授权服务器。 - 授权服务器验证用户身份并要求用户同意授权。 - 用户同意后,授权服务器发放授权码或访问令牌。 - 客户端使用授权码或访问令牌请求资源...

    maven spring security框架搭建

    在项目中引入了以下几个关键的Maven依赖: 1. **Spring Web MVC**: ```xml &lt;groupId&gt;org.springframework &lt;artifactId&gt;spring-webmvc &lt;version&gt;3.2.4.RELEASE ``` 这个依赖用于支持Spring MVC框架,它是...

    oauth2-client-springsecurity5.zip

    通常,这包括以下几个步骤: 1. **配置OAuth2客户端**:在Spring Boot的配置文件(application.properties或yml)中,你需要设置客户端ID、客户端秘密、授权服务器的URL等关键参数。 2. **实现OAuth2过滤器**:...

    spring security 示例

    在Spring Security中,有以下几个关键组件: - **SecurityContextHolder**:它是一个全局的安全上下文,存储当前线程的认证信息。 - **Authentication**:表示当前用户的认证信息,包括用户名、权限等。 - **...

    spring-security demo

    在实践中,我们还需要理解Spring Security的几个核心概念: - **Remember Me服务**:允许用户在一段时间内无须重新登录。 - **CSRF(跨站请求伪造)防护**:Spring Security提供了防止这种攻击的机制。 - **Logout...

    Spring Security3 配置使用

    在配置Spring Security时,我们需要明确以下几个关键部分: 1. **Web安全配置**:这是Spring Security的基础,用于处理HTTP请求的安全性。通常,我们会在`web.xml`中定义一个DelegatingFilterProxy,该过滤器将请求...

    Spring Security 3.1.pdf

    在Spring Security 3.1版本中,主要包含了以下几个关键知识点: 1. **核心概念**:首先,理解Spring Security的基本概念至关重要,如认证(Authentication)和授权(Authorization)。认证涉及识别用户身份,而授权...

    Spring Security 安全权限管理手册

    以下是选择 Spring Security 的几个重要原因: 1. **强大的背景**:Spring Security 最初被称为 Acegi,后于 2.0 版本成为 Spring 框架的一部分。这意味着它拥有来自 Spring 社区的强大支持和技术保障。 2. **...

Global site tag (gtag.js) - Google Analytics