簡體   English   中英

SaaS應用中基於聲明的身份驗證,用戶多至2,租戶為多

[英]Claims-based auth in a SaaS app with Users many-2-many to Tenants

我正在構建一個多租戶SaaS系統,其中系統中的用戶是獨立於租戶實體的實體。 IE:客戶1可以將具有特定角色的用戶User1,User2與之關聯,客戶2可以將具有某些其他角色的User2和User3與之關聯。

用戶可以使用特殊菜單選項在承租人之間切換,或者在登錄時提示您提前選擇承租人。

使用Web API和新的Identity Framework ...

問:如果用戶單擊按鈕即可切換租戶,我該如何為角色建模? 用戶可以與多少個租戶/客戶關聯沒有限制,所以我不能簡單地將所有可能的租戶/角色粘貼到Claims集合中,因為據我了解,Claims集合位於cookie中最高為4k。

但是,我不確定如何使用Identity Framework的內置Claims基礎結構

我們處理此問題的方法是將索償限制為僅限當前租戶。 切換承租人始終意味着先退出,然后退出,然后重新簽約給另一個承租人,以便發出新令牌並在依賴方創建新cookie。

就我個人而言,我從未考慮過其他選擇。 就像您說的那樣,如果有許多角色不同的租戶,但您仍然希望擁有一個身份(用戶名/密碼),那么在最壞的情況下嘗試發布所有可能的聲明在技術上是不可能的。

有一個安全警告,我們還必須發出帶有租戶名稱的索賠,以便依賴方根據每個請求進行驗證。

您可以將tenantId放置在Claims集合中。 如果大小大於cookie可以容納的大小,請使用cookie分塊(多個cookie來存儲數據)。 請參閱http://msdn.microsoft.com/en-us/library/ff359108.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM