自訂屬性多租戶最佳實務 - Amazon Cognito

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

自訂屬性多租戶最佳實務

Amazon Cognito 支援具有您選擇的名稱的自訂屬性。當自訂屬性區分共用使用者集區中的使用者租用時,一個有用的案例是它們。當您為使用者指派 等屬性的值時custom:tenantID,您的應用程式可以相應地指派對租戶特定資源的存取權。定義租用戶 ID 的自訂屬性應為應用程式用戶端的不可變或唯讀屬性。

下圖顯示共用應用程式用戶端和使用者集區的租戶,其中使用者集區中的自訂屬性會指出其所屬的租戶。

多租戶模型的 many-to-one圖表,其中每個使用者在共用使用者集區中都有自己的租戶使用者屬性。

當自訂屬性決定租用時,您可以分發單一應用程式或登入 URL。使用者登入後,您的應用程式可以處理custom:tenantID宣告,決定要載入的資產、要套用的品牌以及要顯示的功能。對於來自使用者屬性的進階存取控制決策,請在 Amazon Verified Permissions 中將使用者集區設定為身分提供者,並從 ID 或存取權杖的內容產生存取決策。

何時實作自訂屬性多租戶

當租用為表面層級時。租戶屬性可以有助於建立品牌和配置結果。當您想要在租戶之間實現顯著隔離時,自訂屬性不是最佳選擇。必須在使用者集區或應用程式用戶端層級設定的租戶之間的任何差異,例如 MFA或託管 UI 品牌,都需要您以自訂屬性不提供的方式建立租戶之間的區別。透過身分集區,您甚至可以從使用者的 ID 權杖中的自訂屬性宣告中選擇IAM角色。

努力程度

由於自訂屬性多租戶會轉移您應用程式上的租戶型授權決策責任,因此工作量通常很高。如果您已經熟悉剖析OIDC宣告的用戶端組態,或在 Amazon Verified Permissions 中,此方法可能需要最低程度的努力。