我正在為我的應用程式實作一個訪問管理器,但還沒有找到一個優雅的解決方案來將資料從 AWS Lambda 傳遞到客戶端。
用戶將嘗試訪問指向訪問管理器 IP 地址的https://myapplication.com/ 。訪問管理器將檢查會話是否存在或提示用戶登錄。一旦通過身份驗證,訪問管理器將從 CloudFront 獲取我的應用程式,并在授權標頭中使用 Bearer 令牌。在查看器請求中,我使用 Lambda 函式驗證該令牌,如果成功則回傳應用程式,否則回傳 401 錯誤。任何不是來自訪問管理器的查看器請求也會回傳 401。
在驗證令牌時,我能夠檢索用戶資訊,例如用戶名、角色、電子郵件等。我想通過查看器回應將來自 Lambda 的資料傳遞給客戶端。我在這里有什么選擇?我嘗試在標題中傳遞資料,但我不相信有任何方法可以查看我的應用程式中的初始頁面加載標題?我可以將資料設定為 cookie 并以這種方式訪問??它,但我認為這不太安全。也許如果我將該資料加密為 jwt,將其設定為 cookie 并在客戶端解密?
我的主要應用程式是通過 CloudFront 從 S3 提供的 Angular。我還有幾個 Flask 應用程式,我想在之后連接到訪問管理器。
任何指標表示贊賞。
謝謝!
uj5u.com熱心網友回復:
您可以在訪問管理器上創建另一個 API,該 API 回傳現有會話已驗證的用戶詳細資訊。讓 Angular 應用程式呼叫 API。
uj5u.com熱心網友回復:
對此可能有多種解決方案。以下是我想到的一些解決方案。
- 讓您的應用程式也像 lambda 一樣破譯令牌并讀取資訊
- Lambda 可以設定標頭,您可以通過 CloudFront(稱為白名單標頭)將這些標頭傳遞給您的應用程式參考:https ://aws.amazon.com/premiumsupport/knowledge-center/configure-cloudfront-to-forward-headers/
- 從 lambda 創建 JWT(值)令牌并將其傳遞給您的應用程式。您的應用將解碼 JWT 并獲取值
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/414633.html
標籤:
下一篇:具有值條件的陣列中的重復項
