是乙個能夠為基於 spring 的企業應用系統提供宣告式的安全訪問控制解決方案的安全框架。它提供了一組可以在 spring 應用上下文中配置的 bean,充分利用了 spring ioc,di(控制反轉 inversion of control ,di:dependencyinjection 依賴注入)和 aop(面向切面程式設計)功能,為應用系統提供宣告式的安全訪問控制功能,減少了為企業系統安全控制編寫大量重複**的工作
新增依賴
org.springframework.security
spring-security-web
org.springframework.security
spring-security-config
配置檔案 spring-security.xml
<?xml version="1.0" encoding="utf-8"?>
配置說明:
intercept-url 表示攔截頁面
/* 表示的是該目錄下的資源,只包括本級目錄不包括下級目錄
/** 表示的是該目錄以及該目錄下所有級別子目錄的資源
form-login 為開啟表單登陸
use-expressions 為是否使用使用 spring 表示式語言( spel ),預設為 true ,如果開啟,則攔截的配置應該寫成以下形式
security="none" 設定此資源不被攔截.
如果你沒有設定登入頁 security="none" ,將會出現以下錯誤配置說明:
因為登入頁會被反覆重定向。
login-page:指定登入頁面。
authentication-failure-url:指定了身份驗證失敗時跳轉到的頁面。
default-target-url:指定了成功進行身份驗證和授權後預設呈現給使用者的頁面。
csrf disabled="true" 關閉 csrf ,如果不加會出現錯誤
csrf(cross-site request forgery)跨站請求偽造,也被稱為「one click attack」或者 session riding,通常縮寫為 csrf 或者 xsrf,是一種對**的惡意利用。
在web.xml中配置過濾器
springsecurityfilterchain
org.springframework.web.filter.delegatingfilterproxy
/*
獲取當前登入使用者的使用者名稱
public class logincontroller自定義登入認證類
Spring Security結合CAS的配置
在我的幾個專案裡需要用到單點登入,我選用了cas,下面給出乙個一般性的spring security結合cas的配置檔案 附加說明 drop table if exists uc users create table uc users username varchar 32 not null,pas...
Spring Security的基本使用
這個 會把過濾到請求自動轉到 springsecurityfilterchain 這個類裡面,這個是spring security的乙個處理類 這個過濾器要配置 springsecurityfilterchain 這裡的name固定要是springsecurityfilterchain,因為他是se...
springsecurity的URL過濾和全域性過濾
springsecurity的url過濾和全域性過濾 最近有個需求,需要配置乙個登陸使用者才能訪問專案的資源,也就是說要配置乙個 形式的鏈結,保護專案中所有的資源,要登入了的使用者才能訪問,當然是要除開登陸頁面之外。springsecurity對url過濾是採用的正規表示式,其實一直就在使用spri...