網路城邦
上一篇 回創作列表 下一篇   字體:
SaaS 架構 - AWS 篇
2021/07/17 09:32:11瀏覽329|回應0|推薦2
當你上完基礎課程之後,選一個主題來磨練一下是一個不錯的選擇,我選了 AWS SaaS 架構當作我的主題,同時在 AWS Well-Architected 文件中有提到如何設計 AWS SaaS 架構,可以做為參考。

基本上,在雲端上面的 SaaS 架構會包括兩個層面,底層的 Serverless 架構和上層的 Multi-Talent 架構。在 AWS Serverless 架構上,當然會以 Lambda function 為主,右邊是所有租戶的共用服務,而左邊是租戶獨有的服務。

所以 Amazon API Gateway 在多租戶方面佔有重要腳色,它會依據 Usage plans 提供多租戶的隔離功能,另一方面還要靠 JWT (JSON Web Token) 傳遞權限設定,可以貫穿到 Lambda function 內部。Amazon Cognito 提供租戶 login 的帳號認證功能。

在 Lambda function 設計上,當租戶數量比較少時,可以提供單獨的 Lambda function,但是租戶數量龐大,還是要使用 Lambda funtion pool 來提升使用效率,避免過多資源浪費。如果要更完整地管控到多租戶 Runtime 操作權限問題,還是要從 AWS Identity and Access Management (IAM) 下手,協助定義好每個租戶的 scope,避免跨界使用,多加一層 Security Token Service (AWS STS) 的保護。

在 AWS Lambda function 中可以做到讓開發人員不會知道多租戶的身份,它在 Lambda Function 裡面多加一層 Token manager,而不是由開發人員自行解譯 JWT。

自己覺得在 AWS 上面建置多租戶系統確實可以減小需多安全上的顧慮,因為 AWS 本來就是要做到多租戶水平,可以利用到它的建置經驗應該會很有幫助。
( 創作散文 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=robertyjlai&aid=165406536