共用方式為


同步擴展屬性以進行 Microsoft Entra 應用程式佈建

Microsoft Entra 識別碼必須包含將使用者帳戶從 Microsoft Entra ID 佈建至 SaaS 應用程式 或內部部署應用程式時,建立使用者配置檔所需的所有數據(屬性)。 自訂使用者布建的屬性對應時,您可能會發現 Microsoft Entra ID 中您要對應的屬性不會出現在[c0]來源屬性[/c0]清單中。 此文章說明如何新增遺漏的屬性。

判斷需要新增擴充項目的位置

新增應用程式所需的遺漏屬性將會從內部部署的 Active Directory 或 Microsoft Entra ID 開始,視使用者帳戶所在的位置以及它們如何帶入 Microsoft Entra ID 而定。

首先,找出在您的 Microsoft Entra 租用戶中需要存取應用程式的使用者,因此這些使用者將被納入佈建至應用程式的範疇。

接下來,判斷屬性的來源,以及用於將這些使用者帶入 Microsoft Entra ID 的拓撲。

屬性的來源 拓撲 所需的步驟
HR 系統 HR 系統中的員工會被設定為 Microsoft Entra ID 的使用者。 在 Microsoft Entra ID 中建立擴充屬性
更新 HR 輸入對應,從 HR 系統填入 Microsoft Entra ID 使用者的擴充屬性。
HR 系統 HR 系統的員工會被設為 Windows Server AD 中的使用者。
Microsoft Entra Connect 雲端同步處理會將它們同步處理到 Microsoft Entra ID 中。
如有必要,請擴充 AD 架構。
使用雲端同步,在 Microsoft Entra ID 中建立擴充屬性
更新 HR 輸入對應,從 HR 系統填入 AD 使用者的擴充屬性。
HR 系統 HR 系統的員工會被設為 Windows Server AD 中的使用者。
Microsoft Entra Connect 將它們同步到 Microsoft Entra ID。
如有必要,請擴充 AD 架構。
使用 Microsoft Entra Connect,在 Microsoft Entra ID 中建立擴充屬性
更新 HR 輸入對應,從 HR 系統填入 AD 使用者的擴充屬性。

如果您組織的使用者已經位於內部部署的 Active Directory 中,或您是在 Active Directory 中建立他們嗎?如果是,則必須將使用者從 Active Directory 同步至 Microsoft Entra ID。 您可以使用 Microsoft Entra ConnectMicrosoft Entra Connect 雲端同步處理來同步使用者和屬性。

  1. 請洽詢內部部署 Active Directory 網域管理員,這些屬性是否為 AD DS 架構 User 物件類別的一部分,如果不是,請在那些使用者擁有帳戶的網域中 擴充 Active Directory Domain Services 架構
  2. 設定 Microsoft Entra Connect 或 Microsoft Entra Connect 雲端同步,以將使用者與其擴充屬性從 Active Directory 同步至 Microsoft Entra ID。 這兩個解決方案都會自動將特定屬性同步至Microsoft Entra ID,但並非所有屬性。 此外,某些預設同步處理的屬性 (例如 sAMAccountName) 可能不會使用圖形 API 公開。 在這些情況下,您可以使用 Microsoft Entra Connect 目錄延伸模組功能,將屬性同步至 Microsoft Entra ID,或使用 Microsoft Entra Connect 雲端同步。如此一來,屬性對 Graph API 的和 Microsoft Entra 布建服務的可見。
  3. 如果內部部署的 Active Directory 中的使用者還沒有必要的屬性,您必須更新 Active Directory 中的使用者。 可以透過從 WorkdaySAP SuccessFactors 讀取屬性來完成此更新,或者如果您使用不同的 HR 系統,可以使用 輸入 HR API
  4. 等候 Microsoft Entra Connect 或 Microsoft Entra Connect 雲端同步,以同步您在 Active Directory 架構中所做的更新,並將 Active Directory 使用者同步至 Microsoft Entra ID。

或者,如果需要存取應用程式的使用者都不是來自內部部署 Active Directory,則必須先在 Microsoft Entra ID 中 使用 PowerShell 或 Microsoft Graph 建立架構延伸模組,再設定布建至您的應用程式。

下列各節概述如何為具有僅限雲端使用者的租用戶,以及具有 Active Directory 使用者的租用戶建立擴充屬性。

在具有僅限雲端使用者的租用戶中建立擴充屬性

您可以使用 Microsoft Graph 和 PowerShell,針對 Azure AD 中的使用者擴充使用者結構描述。 如果您有需要該屬性的使用者,且其中沒有任何屬性是源於內部部署的 Active Directory 或從其同步處理,則這是必要的。 (如果您有 Active Directory,請繼續閱讀下一節中關於如何使用 Microsoft Entra Connect 目錄延伸模組功能將 屬性同步至 Microsoft Entra ID

在大部分情況下,一旦建立結構描述擴充功能,當您下次瀏覽 Microsoft Entra 系統管理中心的佈建頁面時,這些擴充屬性將自動被發現。

當您的服務主體超過 1000 個時,您可能會在來源屬性清單中找到遺漏的擴充項目。 如果您建立的屬性未自動出現,請驗證該屬性已建立,並手動將其新增至您的結構描述。 若要確認已建立,請使用 Microsoft Graph 和 Graph 瀏覽器。 若要手動將它新增至您的架構,請參閱 編輯支援的屬性清單

使用 Microsoft Graph 建立僅限雲端用戶的擴充屬性

您可以使用 Microsoft Graph 擴充 Microsoft Entra 使用者的架構。

首先,列出您租戶中的應用程式,以取得您正在工作的應用程式識別碼。 若要深入瞭解,請參閱 extensionProperties 清單

GET https://graph.microsoft.com/v1.0/applications

接著,建立擴充屬性。 將下方的 ID 屬性取代為在上一個步驟中擷取的 標識碼 。 您必須使用 「ID」 屬性,而不是 「appId」。 若要深入了解,請參閱[建立 extensionProperty]/graph/api/application-post-extensionproperty)。

POST https://graph.microsoft.com/v1.0/applications/{id}/extensionProperties
Content-type: application/json

{
    "name": "extensionName",
    "dataType": "string",
    "targetObjects": [
      "User"
    ]
}

先前的要求已建立具有 extension_appID_extensionName 格式的擴充屬性。 您現在可以使用此擴充屬性來更新使用者。 若要深入瞭解,請參閱 更新使用者

PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json

{
  "extension_inputAppId_extensionName": "extensionValue"
}

最後,驗證使用者的屬性。 若要深入瞭解,請參閱 取得使用者。 Graph v1.0 預設不會傳回任何使用者的目錄擴充屬性,除非在要求中指定該屬性做為要傳回的屬性之一。

GET https://graph.microsoft.com/v1.0/users/{id}?$select=displayName,extension_inputAppId_extensionName

使用 PowerShell 建立僅限雲端使用者的擴充屬性

您可以使用 PowerShell 建立自訂擴充項目。

#Connect to your Entra tenant
Connect-Entra -Scopes 'Application.ReadWrite.All'

#Create an application (you can instead use an existing application if you would like)
$App = New-EntraApplication -DisplayName "test app name" -IdentifierUris https://testapp

#Create a service principal
New-EntraServicePrincipal -AppId $App.AppId

#Create an extension property
New-EntraApplicationExtensionProperty -ApplicationId $App.ObjectId -Name "TestAttributeName" -DataType "String" -TargetObjects "User"

您可以選擇性地測試是否可以在僅限雲端用戶上設定擴充屬性。

#List users in your tenant to determine the objectid for your user
Get-EntraUser

#Set a value for the extension property on the user. Replace the objectid with the ID of the user and the extension name with the value from the previous step
Set-EntraUserExtension -ObjectId aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb -ExtensionName "extension_6552753978624005a48638a778921fan3_TestAttributeName"

#Verify that the attribute was added correctly.
Get-EntraUser -ObjectId aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb | Select -ExpandProperty ExtensionProperty

使用雲端同步建立擴充屬性

如果您在 Active Directory 中擁有使用者,並正在使用 Microsoft Entra Connect 的雲端同步,那麼當您新增對應時,雲端同步會自動偵測本機 Active Directory 中的擴展。 如果您使用 Microsoft Entra Connect 同步處理,請在下一節繼續閱讀 ,使用 Microsoft Entra Connect 建立擴充屬性

使用下列步驟自動化探索這些屬性,並設定對應配置至 Microsoft Entra ID。

  1. 以至少混合式身分識別系統管理員身分登入 Microsoft Entra 系統管理中心
  2. 流覽至 Entra ID>Entra Connect>Cloud sync
  3. 選取您想要將延伸屬性和映射新增到的組態。
  4. 管理屬性 下選擇按一下以編輯對應
  5. 選擇 新增屬性對應。 屬性會被自動發現。
  6. 新的屬性可在 [來源屬性] 下的下拉式清單中取得。
  7. 填入您想要的對應類型,然後選取 [ 套用]。

如需詳細資訊,請參閱 Microsoft Entra Connect 雲端同步中的自定義屬性對應

使用 Microsoft Entra Connect 建立擴充屬性

如果存取應用程式的使用者源自內部部署的 Active Directory,則必須將屬性與 Active Directory 中的使用者同步至 Microsoft Entra ID。 如果您使用 Microsoft Entra Connect,您必須先執行下列工作,才能對佈建至您的應用程式進行設定。

  1. 請洽詢內部部署 Active Directory 網域管理員,這些屬性是否為 AD DS 架構 User 物件類別的一部分,如果不是,請在那些使用者擁有帳戶的網域中 擴充 Active Directory Domain Services 架構

  2. 開啟 [Microsoft Entra Connect 精靈],選擇 [工作],然後選擇 [ 自定義同步處理選項]。

  3. 混合式身分識別系統管理員身份登入。

  4. 在 [選用功能] 頁面上,選取 [目錄擴充屬性同步處理]

  5. 選取您想要擴充至 Microsoft Entra ID 的屬性。

    注意

    [可用屬性] 下的搜尋會區分大小寫。

  6. 完成 Microsoft Entra Connect 精靈向導,並允許完整的同步處理週期運行。 當週期完成時,架構會擴充,並且新值會在您的本機 AD 與 Microsoft Entra ID 之間同步。

注意

目前尚不支援從內部部署的 AD 中布建參考屬性,如 managedbyDN/DistinguishedName。 您可以在 User Voice 上要求此功能。

填入並使用新屬性

在 Microsoft Entra 系統管理中心,當您正在編輯單一登入的 使用者屬性對應 或從 Microsoft Entra ID 佈建至應用程式時,Source 屬性 列表現在將包含新增屬性,格式為 <attributename> (extension_<appID>_<attributename>),其中 appID 是您租戶中的佔位應用程式的識別符。 選取屬性,並將其對應至目標應用程式以進行佈建。

Microsoft Entra Connect 精靈目錄延伸模組選取頁面

然後,您必須在啟用佈建至應用程式之前,先將指派給應用程式的使用者填入必要的屬性。 如果屬性不是源自 Active Directory,則有五種方式可以大量填入使用者:

  • 如果屬性源自 HR 系統,而且您要將該 HR 系統的員工布建為 Active Directory 中的使用者,則請設定從 WorkdaySAP SuccessFactors 或者如果您使用不同的 HR 系統,使用 inbound HR API 到 Active Directory 屬性的對應。 然後,等候 Microsoft Entra Connect 或 Microsoft Entra Connect 雲端同步,以同步您在 Active Directory 架構中所做的更新,並將 Active Directory 使用者同步至 Microsoft Entra ID。
  • 如果屬性源自 HR 系統,而且您不是使用 Active Directory,您可以透過輸入 APIWorkdaySAP SuccessFactors 或其他項目對應設定為 Microsoft Entra 使用者屬性。
  • 如果屬性源自另一個內部部署系統,您可以設定 MIM Connector for Microsoft Graph 來建立或更新 Microsoft Entra 使用者。
  • 如果屬性源自使用者本身,則您可以要求使用者在要求存取應用程式時提供屬性值,方法是在 權利管理目錄中包含屬性需求。
  • 針對所有其他情況,自定義應用程式可以透過 Microsoft Graph API 更新使用者。

下一步