多租戶資料存取模式與 IAM 原則
在 AWS 中使用資料儲存服務
Dunieski Otano
AWS Solutions Architect
多租戶的資安外洩
- SaaS 應用服務 1,000 家公司
- 程式碼錯誤導致跨租戶存取
- A 公司員工看到 B 公司的資料
- 結果:流失客戶、訴訟、名譽受損
每租戶一個分割鍵的模式
- 設計
- 以 tenantId 作為分割(partition)鍵
- 每個項目都包含 tenantId
- 優勢
- 需求
用 IAM 條件鍵達成租戶隔離
- dynamodb:LeadingKeys
- 範例原則
- "Allow if tenantId = tenant-123"
- 強制機制
實作縱深防禦
- 第 1 層:應用程式
- 第 2 層:IAM 原則
- 第 3 層:資料庫設計
測試與驗證
- 測試跨租戶存取
- 嘗試讀取其他租戶的資料
- 應以 AccessDeniedException 失敗
- 稽核記錄
- 定期檢閱
恭喜你!
- AWS 資料儲存:DynamoDB、S3、ElastiCache、OpenSearch
- 設計與最佳化:資料表設計、儲存最佳化
- 資料安全:加密、機密管理、多租戶隔離
Preparing Video For Download...