Spring Security 4 新增特性


1.概述

a) 特性

以下是Spring Security 4.0的新特性

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

現在,我們可以選擇省略掉ROLE_前綴。具體而言,無論ROLE_是否存在,表達式hasRole已經定義了一個作為role的值。我們可以像下面這樣配置(效果和之前一樣):

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

類似的,也可以像下面一樣配置:

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

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

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

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

2.XML配置的變化(Java注解的更新也差不多)

a)例子遷移

可以在github上查看

b)更新到Spring 4.1.x

Spring Security 4需要Spring 4。而Spring Security 3.2.x 可以在Spring 3.2.x and Spring 4上運作。

詳細介紹參見

c)過時

以下列出了一些官方不再建議使用的配置,詳情可以參考這里

d)更新Spring Security

Maven:

<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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM