![](/img/trans.png)
[英]How can Keycloak Spring Security Adapter validate access token using public Keycloak client?
[英]how to locally validate keycloak access tokens using the public key
我正在使用帶有 Spring Boot 和 Kotlin 的 Keycloak,我使用的是 keycloak.json 的最低設置,看起來像這樣。 並使用@PreAuthorize("isAuthenticated()") 之類的注釋來保護我的端點。 密鑰斗篷設置是客戶端身份驗證器 = 客戶端 ID 和啟用標准流程的機密。
{
"realm": "dev",
"realm-public-key" : " public key here ",
"auth-server-url": "http://localhost:8085/auth/",
"ssl-required": "external",
"resource": "test_service",
"verify-token-audience": true,
"credentials": {
"secret": " secrete here"
},
"use-resource-role-mappings": true,
"confidential-port": 0
}
並且我在文檔部分“2.6.2. Validating Access Tokens”中僅使用“Keycloak-spring-security-adapter”,它說我可以使用 JWT 使用公鑰在本地驗證訪問令牌,但找不到java或Kotlin中的示例,目前驗證是通過將其發送到Keycloak服務器來完成的,我怎么能阻止它這樣做並在本地(離線)驗證令牌而不使用公鑰聯系服務器,如果你可以指出我正確的方向,或者如果你知道一個例子或博客,那將非常有幫助。
作為配置的一部分,您可以創建一個org.springframework.security.oauth2.provider.token.store.JwtAccessTokenConverter Bean 並通過其傳遞公鑰
setVerifierKey(字符串鍵)
方法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.