Spring Security 提供多種認證系統,例如通過數據庫和 UserDetailService。 此外,我們也可以使用 MongoDB 存儲庫,而不是 JPA 持久層。 本教程將演示如何通過 Spring Security 進行認證。
知識庫 / Spring / Spring Security RSS 訂閱
使用 JwtDecoder 模擬 JWT 在 JUnit 測試中
本教程將探討如何有效地模擬 JWT(JSON Web Token)以進行 Spring Security 應用的單元測試,特別是對於使用 JWT 身份驗證的應用程序。測試 JWT 保護的端點通常需要模擬不同的 JWT 場景,而無需依賴真實的 JWT。
從 Spring Security 5 遷移到 Spring Security 6/Spring Boot 3
Spring Security 6 帶來了多項重大變更,包括移除類和已棄用的方法,並引入了新的方法。從 Spring Security 5 遷移到 Spring Security 6 可以逐步進行,而不會破壞現有應用。
Spring Security – 請求被拒絕異常
Spring Framework 5.0 到 5.0.4、4.3 到 4.3.14 以及其他舊版本存在 Windows 系統上的目錄或路徑遍歷安全漏洞。不當配置靜態資源可能允許惡意用户訪問服務器的文件系統。
測試 Spring Boot 中的 CORS 跨域資源共享
跨域資源共享 (CORS) 是一種安全機制,允許一個域的網頁訪問另一個域的資源。 瀏覽器通過 CORS 機制來防止網站向不同域發出未經授權的請求。
禁用指定 Profile 的安全功能
本教程將介紹如何針對特定環境禁用 Spring Security。首先,我們將定義一個允許所有請求的安全配置。通過註冊 WebSecurityCustomizer 即可實現此目的。
Spring Security – 配置不同 URL 的策略
本教程將介紹如何配置Spring Security,以便針對不同的URL模式使用不同的安全配置。 這種方法在應用程序需要針對某些操作實施更嚴格的安全策略,而其他操作則允許所有用户訪問時非常有用。
Spring HTTP/HTTPS 通道安全
本教程演示如何使用Spring的Channel Security功能,通過HTTPS保護應用程序的登錄頁面。使用HTTPS進行身份驗證對於在傳輸過程中保護敏感數據完整性至關重要。
禁止缺少 @PreAuthorize 在 Spring 控制器方法中的訪問
在我們的 Spring 方法安全教程中,我們學習瞭如何使用 @PreAuthorize 和 @PostAuthorize 註解。在本教程中,我們將學習如何拒絕訪問缺少授權註解的方法。畢竟,我們都是人,所以我們可能會……
Spring Cloud Gateway 與 OAuth2 後端集成
本教程將演示如何使用 Spring Cloud Gateway 和 spring-addons 實現前端(BFF)模式下的 OAuth2 後端,並從三個單頁應用程序(Angular、React 和 Vue)消費無狀態 REST API。
Spring Web 應用登錄 – 錯誤處理與本地化
本文將演示如何使用 Spring MVC 實現一個簡單的登錄頁面,用於處理 Spring Security 後端身份驗證。 欲瞭解關於 Spring Security 身份驗證的詳細信息,請參閲全文。
使用 Spring Security Client 自定義授權和令牌請求
OAuth2 API有時會與標準有所偏差,因此需要對標準OAuth2請求進行自定義。 Spring Security 5.1 提供對OAuth2授權和令牌請求的定製支持。
Spring MVC 和 Thymeleaf 中 CSRF 保護
Thymeleaf 是一款 Java 模板引擎,用於處理和創建 HTML、XML、JavaScript、CSS 和純文本。 欲瞭解 Thymeleaf 和 Spring 的入門知識,請參考本文。本文將討論如何防止跨站請求偽造 (CSRF)。
Spring Security 中的 @CurrentSecurityContext 指導手冊
Spring Security 負責處理身份驗證憑證的接收和解析。 本教程將介紹如何在請求中獲取 SecurityContext 信息,並在我們的處理代碼中進行操作。
Spring Security OAuth 授權服務器
OAuth 是一種開放標準,描述了一種授權過程。它可用於授權用户訪問 API。例如,REST API 可以限制訪問僅限已註冊且具有適當角色的用户。OAuth 授權服務器負責...
Spring Security:檢查用户是否具有角色(Java)
在Spring Security中,有時需要檢查已認證用户是否具有特定角色。這對於在應用程序中啓用或禁用特定功能非常有用。 本教程將介紹在Java中檢查用户角色的方法。
響應式應用中的 Spring Security
本文將探討 Spring Security 框架的新功能,用於安全響應式應用程序。此版本與 Spring 6 和 Spring Boot 3 保持一致。
Spring Security – 持續會話保持功能
本文將介紹如何在 Spring Security 中設置“記住我”功能,不採用標準的僅使用 cookie 方式,而是使用更安全的持久化方案。Spring 可以配置為記住登錄憑據……
動態客户端註冊在 Spring 授權服務器中
Spring Authorization Server 提供了一系列合理的默認配置,使其幾乎無需配置即可使用。這使得它在測試場景和需要完全控制的情況下,與客户端應用程序配合使用非常方便。
Spring Security 中 CSRF 保護指南
本教程將討論跨站請求偽造(CSRF)攻擊以及如何使用Spring Security來防止它們。CSRF攻擊有多種形式,我們來討論一些常見的攻擊方式。2.1. GET示例
Spring Security – OAuth2 登錄
Spring Security 5 引入了新的 OAuth2LoginConfigurer 類,用於配置外部授權服務器。本教程將探討 oauth2Login() 元素的可配置選項。