1. 程式人生 > >Security配置檔案的基本配置及引數名詳解

Security配置檔案的基本配置及引數名詳解

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:security="http://www.springframework.org/schema/security"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security.xsd">

<!--不需要認證的頁面, 靜態資源-->
<security:http pattern="/failer.html" security="none"/>
<security:http pattern="/login.html" security="none"/>

<!--
security:http: 攔截請求配置

auto-config: 這個是一個自動配置過濾器(Filter)的屬性, 設定為true,security框架幫我建立login頁面,login處理方法
use-expressions:"是否使用spring 的el表示式",如果使用表示式true:access="hasRole('ROLE_USER')"
-->
<security:http auto-config="true" use-expressions="false">


<!-- 配置攔截的請求地址,pattern=/**代表攔截所有請求,
access=ROLE_USER,即訪問的使用者必須有ROLE_USER的角色才可訪問
ROLE_USER寫法,ROLE_自定義,須以ROLE_為字首, 多個以逗號分割,或者
-->
<security:intercept-url pattern="/**" access="ROLE_USER" />

<!--登陸相關的配置
username-parameter: 登陸請求中傳送過來的使用者名稱稱的引數名
password-parameter: 登陸請求中傳送過來的密碼的引數名
login-processing-url: 登陸請求處理的地址,由security處理,幫我們生成好了
login-page: 配置自定義登陸頁面 /
default-target-url: 登陸成功後預設跳轉頁面
authentication-failure-url: 登陸失敗後跳轉的頁面
always-use-default-target: 不管原來訪問的是哪個頁面,登陸成功後都跳轉到default-target-url
-->
<security:form-login username-parameter="username" password-parameter="password"


login-processing-url="/login" login-page="/login.html"
default-target-url="/success.html"
authentication-failure-url="/failer.html"
always-use-default-target="true"
></security:form-login>


<!--<input name="_csrf" type="hidden" value="55ce289b-7be7-4952-b91f-faee1e9fc16e" />-->
<!--關閉跨域請求限制-->
<security:csrf disabled="true"/>

<!-- 退出登陸的配置
logout-url: 退出請求的處理
logout-success-url: 退出成功後跳轉的頁面
invalidate-session: 讓session失效
-->
<security:logout logout-url="/logout" logout-success-url="/login.html" invalidate-session="true"></security:logout>
</security:http>

<!--配置授權資訊-->
  <security:authentication-manager>
    <security:authentication-provider>
      <security:user-service>
    <!--
      配置賬號密碼,以及該賬號的角色資訊
      其中{noop}表示加密的型別,noop則表示不使用任何加密方式
      authorities這個使用者所擁有的角色
    -->
        <security:user name="admin" password="{noop}admin" authorities="ROLE_USER" />
      </security:user-service>
    </security:authentication-provider>
  </security:authentication-manager>

</beans>