搭配 Microsoft Identity Manager (MIM) 2016 SP1 與 Azure 應用程式 Proxy 的 Azure AD 企業對企業 (B2B) 共同作業

初始案例為外部使用者 AD 帳戶的生命週期管理。 在此案例中,組織已邀請來賓加入其 Azure AD 目錄,並希望透過 Azure AD 應用程式 Proxy 或其他閘道機制,讓來賓存取內部部署 Windows 整合式驗證或 Kerberos 型應用程式。 使用 Azure AD 應用程式 Proxy 時,每位使用者都必須擁有自己的 AD DS 帳戶,以供識別和委派之用。

案例特定指南

搭配 MIM 與 Azure AD 應用程式 Proxy 的 B2B 設定中有以下幾項假設:

B2B 端對端部署範例案例

本指南是以下列案例為建置基礎:

Contoso 製藥適用于 Trey Research Inc. 作為其 R & D 部門的一部分。 Trey Research 員工需要存取由 Contoso Pharmaceuticals 所提供的研究報告應用程式。

  • Contoso Pharmaceuticals 位於自己的租用戶中,並已設定自訂網域。

  • 外部使用者獲得加入 Contoso Pharmaceuticals 租用戶的邀請。 此使用者已接受邀請,並可存取共用的資源。

  • Contoso Pharmaceuticals 已透過應用程式 Proxy 發佈應用程式。 在此案例中,範例應用程式是 MIM 入口網站。 這可讓來賓使用者參與 MIM 處理序,例如技術支援中心案例,或要求存取 MIM 中的群組。

將 AD 與 Azure AD Connect 設定為排除透過 Azure AD 新增的使用者

根據預設,Azure AD Connect 會假設 Active Directory 中的非管理使用者需要同步處理至 Azure AD。 如果 Azure AD Connect 發現 Azure AD 中的現有使用者與內部部署 AD 的使用者相符,Azure AD Connect 會比對這兩個帳戶並假設這是先前同步處理的使用者,而讓內部部署 AD 授權。 不過,此預設行為不適用於 B2B 流程,因為其中的使用者帳戶是來自 Azure AD。

因此,針對 MIM 從 Azure AD 帶入 AD DS 的使用者,您必須將這些使用者儲存在 Azure AD 不會嘗試將其同步處理回 Azure AD 的位置。 其中一個方法是在 AD DS 中建立新的組織單位,並將 Azure AD Connect 設為排除該組織單位。

如需詳細資訊,請參閱 Azure AD Connect sync:Configure filtering (Azure AD Connect 同步:設定篩選)。

建立 Azure AD 應用程式

附註:在 MIM 同步處理中建立 Graph 連接器的管理代理程式之前,請確認您已檢閱 Graph 連接器部署指南,並已使用用戶端識別碼和祕密建立應用程式。 請確認已授權應用程式下列至少其中一項權限:User.Read.AllUser.ReadWrite.AllDirectory.Read.AllDirectory.ReadWrite.All

建立新的管理代理程式

在 Synchronization Service Manager UI 中,選取 [連接器] 和 [建立]。 選取 [Graph (Microsoft)] 並為其指定描述性名稱。

連線能力

您必須在 [連線能力] 頁面中,指定圖形 API 的版本。 生產版本 API 為 V 1.0,非生產版本 API 則為 Beta

全域參數

設定佈建階層

此頁面用來將 DN 元件 (例如 OU) 對應至應佈建的物件類型 (例如 organizationalUnit)。 此案例不需要這個項目,因此請保留預設值,然後按一下 [下一步]。

設定分割區與階層

在分割區和階層頁面上,選取含有您想要匯入和匯出之物件的所有命名空間。

選取物件類型

在 [物件類型] 頁面中,選取您打算匯入的物件類型。 您至少要選取 [使用者]。

選取屬性

在 [選取屬性] 畫面中,從 Azure AD 中選取在 AD 中管理 B2B 使用者所需的屬性。 "ID" 是必要的屬性。 此設定稍後會使用 userPrincipalNameuserType 屬性。 其他屬性都是選擇性的,包括

  • displayName

  • mail

  • givenName

  • surname

  • userPrincipalName

  • userType

設定錨點

在 [設定錨點] 畫面中,設定錨點屬性是必要的步驟。 預設會使用 ID 屬性進行使用者對應。

設定連接器篩選

在 [設定連接器篩選] 頁面上,MIM 可讓您根據屬性篩選來篩選出物件。 在此 B2B 案例中,其目標是只讓使用者具有等於的屬性值, userTypeGuest 而不是 userType 等於的使用者 member

設定聯結與投影規則

本指南假設您要建立新的同步處理規則。 [設定聯結和投影規則] 是由同步處理規則來處理,因此連接器本身並不需要識別出聯結和投影。 保留預設值,然後按一下 [確定]。

設定屬性流程

本指南假設您要建立新的同步處理規則。 定義 MIM 同步中的屬性流程時並不需要投影,因為投影是由稍後建立的同步處理規則來處理。 保留預設值,然後按一下 [確定]。

設定取消佈建

如果要刪除 Metaverse 物件,您可以使用設定取消佈建的設定將 MIM 同步設定為刪除物件。 在此案例中,因為目標是將它們留在 Azure AD 中,因此要將其設為斷路器。 在此案例中,我們不會匯出任何項目至 Azure AD,因此將連接器設定為僅供匯入。

設定擴充

由於我們使用的是同步處理規則,所以此管理代理程式上的 [設定延伸模組] 不是必要選項。 如果我們在稍早的屬性流程中決定使用進階規則,就會顯示定義規則延伸模組的選項。

延伸 Metaverse 結構描述

建立同步處理規則之前,必須使用 MV 設計工具建立與人員物件繫結的 userPrincipalName 屬性。

在同步處理用戶端中,選取 [Metaverse 設計工具]

然後選取 [人員] 物件類型

接下來在 [動作] 下方,按一下 [新增屬性]

然後完成下列詳細資料

屬性名稱:userPrincipalName

屬性類型:字串 (可編製索引)

已建立索引 = True

建立 MIM 服務同步處理規則

在下列步驟中,我們會開始對應 B2B 來賓帳戶與屬性流程。 這裡假設您已經設定 Active Directory MA,並將 FIM MA 設定為將使用者帶入 MIM 服務與入口網站。

接下來的步驟將需要將最基本的設定新增至 FIM MA 和 AD MA。

如需設定的詳細資料,請參閱 https://technet.microsoft.com/library/ff686263(v=ws.10).aspx \(英文\) - 如何將使用者佈建到 AD DS

同步處理規則:將來賓使用者匯入 MV,以從 Azure Active Directory 同步處理服務 Metaverse

巡覽至 MIM 入口網站,並選取 [同步處理規則],然後按一下 [新增]。 透過 Graph 連接器,為 B2B 流程建立輸入同步處理規則。

在關聯性條件步驟中,務必選取 [在 FIM 中建立資源]。

設定下列輸入屬性流程規則。 請務必填入 accountNameuserPrincipalName 和屬性, uid 因為稍後會在此案例中使用這些屬性:

僅限初始流程 作為存在測試使用 Flow (Source Value ⇒ FIM Attribute)
[displayName⇒displayName](javascript:void(0);)
[Left(id,20)⇒accountName](javascript:void(0);)
[id⇒uid](javascript:void(0);)
[userType⇒employeeType](javascript:void(0);)
[givenName⇒givenName](javascript:void(0);)
[surname⇒sn](javascript:void(0);)
[userPrincipalName⇒userPrincipalName](javascript:void(0);)
[id⇒cn](javascript:void(0);)
[mail⇒mail](javascript:void(0);)
[mobilePhone⇒mobilePhone](javascript:void(0);)

同步處理規則:對 Active Directory 建立來賓使用者帳戶

此同步處理規則會在 Active Directory 中建立使用者。 請注意,dn 流程必須將使用者放在已被 Azure AD Connect 排除的組織單位中。 另請依據您的 AD 密碼原則更新 unicodePwd 的流程,且使用者不需知道密碼。 請記下 262656 的值,以便 userAccountControl 編碼 SMARTCARD_REQUIREDNORMAL_ACCOUNT 旗標。

流程規則:

僅限初始流程 作為存在測試使用 流程 (FIM 值 ⇒ 目的地屬性)
accountName ⇒ sAMAccountName
givenName ⇒ givenName
mail ⇒ mail
sn ⇒ sn
userPrincipalName ⇒ userPrincipalName
Y "CN =" + uid + ",OU = B2BGuest,DC = contoso,DC = com" ⇒ dn
Y RandomNum (0999) + userPrincipalName ⇒ unicodePwd
Y 262656⇒ userAccountControl

選擇性同步處理規則:匯入 B2B 來賓使用者物件 SID 以允許登入 MIM

此輸入同步處理規則會將使用者的 SID 屬性從 Active Directory 帶回 MIM,以便使用者可以存取 MIM 入口網站。 MIM 入口網站要求使用者必須將 samAccountNamedomainobjectSid 屬性填入 MIM 服務資料庫。

由於 AD 會在 MIM 建立使用者時自動設定 objectSid 屬性,因此請將來源外部系統設定為 ADMA

請注意,如果您將使用者設定為在 MIM 服務中建立,請確定他們不在專用於員工 SSPR 管理原則規則的任何集合範圍內。 您可能需要變更您的集合定義,以排除由 B2B 流程建立的使用者。

僅限初始流程 作為存在測試使用 Flow (Source Value ⇒ FIM Attribute)
sAMAccountName ⇒ accountName
"CONTOSO" ⇒網域
objectSid ⇒ objectSid

執行同步處理規則

接下來,我們會邀請使用者,然後依下列順序執行管理代理程式同步處理規則:

  • MIMMA 管理代理程式上進行完整匯入和同步處理。 這可確保 MIM 同步已設定最新的同步處理規則。

  • ADMA 管理代理程式上進行完整匯入和同步處理。 這可確保 MIM 和 Active Directory 保持一致。 此時,尚不會有任何來賓擱置匯出。

  • 在 B2B Graph 管理代理程式上進行完整匯入和同步處理。 這會將來賓使用者帶入 Metaverse。 此時,將會針對 ADMA 擱置匯出一個或多個帳戶。 如果沒有任何擱置匯出,請確認已將來賓使用者匯入連接器空間,並為其設定規則以提供 AD 帳戶。

  • ADMA 管理代理程式上進行匯出、差異匯入和同步處理。 如果匯出失敗,請檢查規則設定,並判斷是否有任何遺漏的結構描述需求。

  • MIMMA 管理代理程式上進行匯出、差異匯入和同步處理。 完成此動作後,就應該不會再有任何擱置匯出。

選用:可讓 B2B 來賓登入 MIM 入口網站的應用程式 Proxy

現在我們已在 MIM 中建立同步處理規則。 請在應用程式 Proxy 設定中,將雲端準則定義為允許在應用程式 Proxy 上使用 KCD。 此外,接下來將使用者手動加入管理使用者和群組。 在 MIM 中發生建立之前不顯示使用者,以在佈建後將來賓新增至 Office 群組的選項,需要進行其他未在本文中涵蓋的設定。

完成設定後,即可讓 B2B 使用者登入並查看應用程式。

後續步驟

如何將使用者佈建到 AD DS

FIM 2010 的函式參考

如何為內部部署應用程式提供安全的遠端存取

下載適用於 Microsoft Graph 的 Microsoft Identity Manager 連接器