Active-Directory
在 ADFS 中模仿 Azure AD 使用者/租戶聲明
我有一個 .Net Web 應用程序,它允許使用者將他們的帳戶與身份提供者(Azure AD、Google 和/或 ADFS)掛鉤以允許單點登錄。
在連接他們的帳戶(或“入職”,無論如何……)時,每個提供者都應返回以下值:
- 使用者唯一 ID(租戶上的一個常量 ID 值,對於使用者永遠不會更改(例如,如果他們的名稱更改,該值仍然是常量)
- 租戶唯一 ID當人們使用來自多個客戶群的應用程序時,我需要為每個客戶的 ID 提供者/租戶儲存一個辨識值
- 使用者名 使用者的友好名稱(例如電子郵件地址),可用於向他們顯示他們在提供商上的“姓名”(例如,如果使用 Google 或 Azure AD,這是您的電子郵件)
到目前為止,我已經在 Azure AD 和 Google 中實現了這一點,但我在 ADFS 上苦苦掙扎。由於我沒有實時 ADFS 伺服器,因此我正在使用 VM 來查看如何將上述內容設置為聲明。
是否可以在 ADFS 中設置依賴方,然後創建三個聲明來填充上述內容?
在處理 ADFS 聲明規則對話框時,我假設以下可能有效,但缺乏了解它是否有效的經驗:
- 名稱 ID - 持久標識符
- 不確定 - 可能手動創建值為“CompanyABC_Tenant123”的聲明
- UPN
上面的2號可以嗎。或者,有沒有更好的方法來實現我所需要的?我注意到,如果使用 Azure AD 訪問控制,則上述三個項目會自動填充,但假設 ID 是在雲中創建的,而不是在本地創建的。
首先,使用 objectGUID-refer: ADFS:objectGUID 作為聲明。
第二,可能有多個域,一個域內有多個 ADFS 場,一個場內有多個 ADFS 實例。理想情況下,靜態聲明類似於:
域/場/機器名
但是整個農場的索賠規則是相同的,所以:
域/農場
第三,是的,使用 UPN。