2016-01-19 97 views
2

在Spring Security OAuth中,它可以使用/使用從用戶使用Keycloak進行身份驗證時生成的JWT令牌嗎? Keycloak的開放標識就像這樣,但它似乎都非常相似。我仍然試圖理解分界線,以及與此相似或相同的內容。Spring Security OAuth - 它可以使用來自Keycloak的JWT令牌嗎

基本上我想在REST客戶端中分別進行身份驗證,然後在授權標頭中使用REST調用一些Web服務的令牌。在Spring Security OAuth中似乎有一些JWT的東西,所以我想知道我可以使用它來代替Keycloak Spring的東西嗎?有沒有這方面的例子? (我喜歡用我的控制器中的不同方法使用Spring安全檢查)

回答

4

您可以使用Keycloak Spring適配器,並仍然依賴Spring Security註解來控制器安全性。 Keycloak Spring適配器的主要目的是簡化與Keycloak的交互式登錄集成,並將JWT訪問令牌聲明正確映射到Spring Security認證上下文中。

通過Spring Security OAuth2 documentation的閱讀,我發現它沒有準備好處理OpenID Connect JWT訪問令牌。但是,它是可定製的,所以它很可能會被使用。

我現在的建議是堅持使用Keycloak Spring適配器,如果您使用Keycloak作爲您的OIDC服務器。它將爲您節省時間,並且通過Keycloak進行充分測試。

+1

我最終與Spring Boot的Keycloak適配器一起使用。除此之外,我還更新了https://github.com/Smartling/smartling-keycloak-extras中的KeycloakUserDetailsAuthenticationProvider以使UserDetails對象。這是一個恥辱,你不能走全春路線,但肯定有一些失蹤的東西。 Bummed我沒有使用令牌存儲的東西。 –

相關問題