共用方式為


Microsoft Entra Connect Sync:瞭解宣告式佈署表達式

Microsoft Entra Connect Sync 是以 Forefront Identity Manager 2010 中首次推出的宣告式布建為基礎發展的。 它可讓您實作完整的身分識別整合商業規則,而不需要撰寫編譯的程序代碼。

宣告式布建的基本部分是屬性流程中使用的表達式語言。 使用的語言是 visual Basic® for Applications (VBA) Microsoft®子集。 此語言用於Microsoft Office,且具有 VBScript 經驗的使用者也會辨識該語言。 宣告式布建表示式語言只會使用函式,而且不是結構化語言。 沒有方法或語句。 函式會以巢狀方式表示程式流程。

如需詳細資訊,請參閱 歡迎使用 Office 2013的 Visual Basic for Applications 語言參考。

屬性具有強類型。 函式只接受正確類型的屬性。 它也區分大小寫。 函式名稱和屬性名稱都必須有正確的大小寫區分,否則會引發錯誤。

語言定義和識別碼

  • 函式的名稱後面接著括號中的自變數:FunctionName(argument 1,argument N)。
  • 屬性是由方括弧識別:[attributeName]
  • 參數是由百分比符號識別:%ParameterName%
  • 字串常數會以引號括住:例如,「Contoso」 (注意:必須使用直引號 “”,而不是智慧引號 “”)
  • 數值會以無引號表示,且預期為十進位。 十六進位值前面會加上 &H。 例如,98052、&HFF
  • 布爾值會以常數表示:True、False。
  • 內建常數和常值只會以其名稱表示:NULL、CRLF、IgnoreThisFlow

功能

宣告式布建會使用許多函式來啟用轉換屬性值的可能性。 這些函式可以巢狀化,因此一個函式的結果會傳入另一個函式。

Function1(Function2(Function3()))

您可以在 函式參考中找到函式的完整清單。

參數

參數是由連接器或使用PowerShell的系統管理員所定義。 參數通常包含與系統不同的值,例如,使用者所在的網域名稱。 這些參數可用於屬性流程。

Active Directory 連接器為輸入同步處理規則提供了下列參數:

參數名稱 評論
Domain.Netbios 目前正在匯入的網域使用的是 NetBIOS 格式,例如 FABRIKAMSALES
Domain.FQDN 目前正在匯入之網域的 FQDN 格式,例如 sales.fabrikam.com
Domain.LDAP 目前正在匯入之網域的LDAP格式,例如DC=sales,DC=fabrikam,DC=com
Forest.Netbios 目前正在匯入之樹系名稱的 Netbios 格式,例如 FABRIKAMCORP
Forest.FQDN(完整網域名稱) 目前正在匯入之樹系名稱的 FQDN 格式,例如 fabrikam.com
Forest.LDAP 正在匯入的樹系名稱以LDAP格式表示,例如DC=fabrikam,DC=com

系統會提供下列參數,用來取得目前執行的連接器識別碼:
Connector.ID

以下範例會將使用者所在的網域 netbios 名稱填入 metaverse 屬性域:
domain <- %Domain.Netbios%

運營商

您可以使用下列運算子:

  • 比較:<、<=、<>、=、>、>=
  • 數學: +, -, *, -
  • 字串: & (串連)
  • 邏輯: && (和), ||(或)
  • 評估順序: ( )

運算子會由左至右進行評估,且具有相同的優先評估順序。 也就是說,* (乘法運算)在 - (減法運算)之前不會被評估。 2*(5+3) 與 2*5+3 不同。 括弧 () 用於在左至右評估順序不適用時變更評估順序。

多值屬性

函式可以在單一值和多重值屬性上運作。 針對多重值屬性,函式會針對每個值運作,並將相同的函式套用至每個值。

例如:
Trim([proxyAddresses]) 對 proxyAddress 屬性中的每個值進行去除首尾空白的操作。
Word([proxyAddresses],1,"@") & "@contoso.com" 對於每個包含 @ 符號的值,將其網域替換為 @contoso.com。
IIF(InStr([proxyAddresses],"SIP:")=1,NULL,[proxyAddresses]) 尋找 SIP 位址,並從值中移除它。

後續步驟

概觀主題

參考主題