簡體   English   中英

具有多租戶應用程序模式的 Microsoft Azure 目錄

[英]Microsoft Azure directory with multi-tenant application pattern

我已經搜索了一段時間了。 這里有人知道如何處理以下情況。

我有一個 SaaS 應用程序,它需要使用 Azure 目錄的 SSO。 我可以用django-allauth做到這一點。 現在,我需要將此限制為向我們訂閱的租戶(客戶)。

為此,我在想,如果我可以從 Azure 目錄中獲取tenantId,那么我可以進行數據庫查找以查看客戶是否有我們的訂閱。 那么,這里有人知道我該怎么做嗎?

這是來自 MS 的參考,關於how to get tenantId part不是很清楚。

來自 MS 的.net代碼用於執行我想要對django-allauth執行的操作: MS .NET 示例應用程序

我能夠找到解決上述問題的方法。 每當身份驗證成功時,我們都會得到一個access token ,它是Json Web Token

現在,如果您對JWT解碼,您會得到一些附帶的claims 關鍵tidclaims之一是tenantId

因此,就解決方案而言,我所做的是:

  • 覆蓋DefaultSocialAccountAdapter
  • 在里面,我覆蓋了pre_social_login並解碼了access token以獲取tenantId
  • 現在,我只需要一個要驗證的tenantId列表。 我從對該公司具有管理員訪問權限的用戶那里獲取信息。

希望這可以幫助某人。 如果需要,我很樂意進一步添加或澄清該方法。

暫無
暫無

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

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