Udostępnij za pośrednictwem


Microsoft Entra Connect Sync: Zrozumienie wyrażeń deklaratywnego zaopatrywania

Usługa Microsoft Entra Connect Sync jest oparta na aprowizacji deklaratywnej, która została po raz pierwszy wprowadzona w programie Forefront Identity Manager 2010. Umożliwia zaimplementowanie pełnej logiki biznesowej integracji tożsamości bez konieczności pisania skompilowanego kodu.

Istotną częścią prowizjonowania deklaratywnego jest język wyrażeń stosowany w przepływach atrybutów. Używany język jest podzbiorem języka Microsoft® Visual Basic® for Applications (VBA). Ten język jest używany w pakiecie Microsoft Office, a użytkownicy korzystający z języka VBScript rozpoznają go również. Deklaratywny język wyrażeń aprowizacyjnych używa tylko funkcji i nie jest językiem ustrukturyzowanym. Nie ma metod ani instrukcji. Funkcje są zamiast tego zagnieżdżone w celu wyrażania przepływu programu.

Aby uzyskać więcej informacji, zobacz Witamy w referencji językowej Visual Basic for Applications dla Office 2013.

Atrybuty są silnie typizowane. Funkcja akceptuje tylko atrybuty poprawnego typu. Uwzględniana jest również wielkość liter. Nazwy funkcji i nazwy atrybutów muszą mieć prawidłową wielkość liter, w przeciwnym razie zostanie zgłoszony błąd.

Definicje języka i identyfikatory

  • Funkcje mają nazwę, a następnie argumenty w nawiasach: FunctionName(argument 1, argument N).
  • Atrybuty są identyfikowane przez nawiasy kwadratowe: [attributeName]
  • Parametry są identyfikowane przez znaki procentowe: %ParameterName%
  • Stałe ciągów są otoczone cudzysłowami: na przykład "Contoso" (Uwaga: musi używać cudzysłowów prostych "", a nie cudzysłowów inteligentnych "")
  • Wartości liczbowe są wyrażane bez cudzysłowów i powinny być dziesiętne. Wartości szesnastkowe są poprzedzone &H. Na przykład 98052, &HFF
  • Wartości logiczne są wyrażane przy użyciu stałych: True, False.
  • Wbudowane stałe i literały są wyrażane tylko przy użyciu ich nazwy: NULL, CRLF, IgnoreThisFlow

Funkcje

Aprowizacja deklaratywna używa wielu funkcji, aby umożliwić przekształcanie wartości atrybutów. Te funkcje mogą być zagnieżdżone, więc wynik z jednej funkcji jest przekazywany do innej funkcji.

Function1(Function2(Function3()))

Pełną listę funkcji można znaleźć w dokumentacji funkcji .

Parametry

Parametr jest definiowany przez łącznik lub przez administratora przy użyciu programu PowerShell. Parametry zwykle zawierają wartości, które różnią się od systemu do systemu, na przykład nazwa domeny, w którą znajduje się użytkownik. Te parametry mogą być używane w przepływach atrybutów.

Łącznik usługi Active Directory dostarczył następujące parametry dla reguł synchronizacji ruchu przychodzącego:

Nazwa parametru Komentarz
Domain.Netbios Format Netbios domeny aktualnie importowanej, na przykład FABRIKAMSALES
Domain.FQDN Format FQDN aktualnie importowanej domeny, na przykład sales.fabrikam.com
Domain.LDAP Format LDAP domeny aktualnie importowanej, na przykład DC=sales,DC=fabrikam,DC=com
Forest.Netbios Format Netbios nazwy lasu, który jest obecnie importowany, na przykład FABRIKAMCORP
Forest.FQDN Format FQDN aktualnie importowanej nazwy lasu, na przykład fabrikam.com
Forest.LDAP Format nazwy lasu w formacie LDAP, który jest obecnie importowany, na przykład DC=fabrikam,DC=com

System udostępnia następujący parametr, który służy do pobierania identyfikatora aktualnie uruchomionego łącznika:
Connector.ID

Oto przykład, który wypełnia domenę atrybutu metaverse nazwą netbios domeny, w której znajduje się użytkownik:
domain <— %Domain.Netbios%

Operatorów

Można użyć następujących operatorów:

  • porównanie: <, <=, <>, =, >, >=
  • matematyka: +, -, *, -
  • ciąg: & (konkatenacja)
  • logiczny: && (i), || (lub)
  • kolejność oceny: ( )

Operatory są oceniane od lewej do prawej i mają ten sam priorytet oceny. Oznacza to, że * (mnożnik) nie jest obliczany przed - (odejmowanie). 2*(5+3) nie jest taka sama jak 2*5+3. Nawiasy kwadratowe ( ) są używane do zmiany kolejności oceny, gdy kolejność oceny od lewej do prawej nie jest odpowiednia.

Atrybuty wielowartościowe

Funkcje mogą działać zarówno na atrybutach jednowartych, jak i wielowartych. W przypadku atrybutów wielowartych funkcja działa nad każdą wartością i stosuje tę samą funkcję do każdej wartości.

Na przykład:
Trim([proxyAddresses]) Wykonaj Trim każdej wartości w atrybucie proxyAddress.
Word([proxyAddresses],1,"@") & "@contoso.com" Dla każdej wartości ze znakiem @ zastąp domenę na @contoso.com.
IIF(InStr([proxyAddresses],"SIP:")=1,NULL,[proxyAddresses]) Wyszukaj adres SIP i usuń go z wartości.

Następne kroki

— omówienie tematów

Tematy referencyjne