[英]Spring Boot and Angular authentication - how to secure the app?
[英]How to secure angular/spring app with keycloak?
我有一個 spring 引導(后端)和 angular(前端)應用程序,我想用 keycloak 保護(用於身份驗證)。
我有一個非常基本的部署,其中由 spring 創建的可執行 jar 也服務於客戶端代碼(來自角度)。
我看過幾個教程,前面和后面是分開的,前面使用代碼流+pkce將其身份驗證委托給keycloak,而后面是無狀態的,並檢查是否存在經過keycloak實例認證的jwt令牌。
但是,由於我有一個后端服務器,我想避免使用公共客戶端,而是依賴服務器端的反向通道令牌交換。 所以前面應該沒有keycloak實例的任何知識。
這可能嗎/這是最佳實踐嗎? 是否有一個前端庫可以幫助我實現這一目標? 我遇到了庫 keycloak-angular,但它似乎是針對第一種情況,即 SPA 直接連接到 Keycloak 而不是使用后端服務器。
在這種情況下,您不需要前端庫。 在您的前端,您應該只處理用戶 session(有一個 session cookie)並每次將 cookie 發送到您的后端。 然后后端服務器應該使用任何 oauth 客戶端與您的 keycloak 服務器進行通信,一旦獲得令牌,它就可以將它們與 session 的句柄一起保存在數據庫中。
下面是這個流程的樣子:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.