Spring Security 4 新增特性

1.概述

a) 特性

如下是Spring Security 4.0的新特性php

<intercept-url pattern="/**" access="hasRole('ROLE_USER')"/>

如今,咱們能夠選擇省略掉ROLE_前綴。具體而言,不管ROLE_是否存在,表達式hasRole已經定義了一個做爲role的值。咱們能夠像下面這樣配置(效果和以前同樣):html

<intercept-url pattern="/**" access="hasRole('USER')"/>

相似的,也能夠像下面同樣配置:html5

@PreAuthorize("hasRole('ROLE_USER')")
@PreAuthorize("hasRole('USER')")

b) 從3.x過渡到4.x

做爲一個新版本,Spring Security團隊作了主要的更新:git

如下是更新的完整詳情,或者在JIRA中查看變更:github

2.XML配置的變化(Java註解的更新也差很少)

a)例子遷移

能夠在github上查看web

b)更新到Spring 4.1.x

Spring Security 4須要Spring 4。而Spring Security 3.2.x 能夠在Spring 3.2.x and Spring 4上運做。spring

詳細介紹參見安全

c)過期

如下列出了一些官方再也不建議使用的配置,詳情能夠參考這裏websocket

d)更新Spring Security

Maven:mvc

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-bom</artifactId>
            <version>4.0.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

不要忘記更新依賴

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-core</artifactId>
    <version>4.0.0.RELEASE</version>
</dependency>

e)默認命名空間的改變

詳情參考這裏

f)默認Filter URLs的改變

詳情能夠參考這裏:http://docs.spring.io/spring-security/site/migrate/current/3-to-4/html5/migrate-3-to-4-xml.html#m3to4-filter-urls

g)配置頭的改變

詳情能夠參考這裏:http://docs.spring.io/spring-security/site/migrate/current/3-to-4/html5/migrate-3-to-4-xml.html#m3to4-header

h)自動的ROLE_前綴

詳情能夠參考這裏:http://docs.spring.io/spring-security/site/migrate/current/3-to-4/html5/migrate-3-to-4-xml.html#m3to4-role-prefixing

相關文章
相關標籤/搜索