Microsoft Entra Id'de öznitelik eşlemeleri için ifade yazma
Bulut eşitlemeyi yapılandırdığınızda, belirtebileceğiniz öznitelik eşlemesi türlerinden biri bir ifade eşlemesidir.
İfade eşlemesi, betik benzeri bir ifade kullanarak öznitelikleri özelleştirmenizi sağlar. Bu, şirket içi verileri yeni veya farklı bir değere dönüştürmenizi sağlar. Örneğin, bu tek öznitelik bulut uygulamalarınızdan biri tarafından kullanıldığından iki özniteliği tek bir öznitelikte birleştirmek isteyebilirsiniz.
Aşağıdaki belgede, verileri dönüştürmek için kullanılan betik benzeri ifadeler ele alınacaktır. Bu, işlemin yalnızca bir parçasıdır. Ardından bu ifadeyi kullanmanız ve kiracınıza bir web isteğinde yerleştirmeniz gerekir. Bu konuda daha fazla bilgi için bkz. Dönüşümler
Söz dizimine genel bakış
Öznitelik Eşlemeleri İfadeleri söz dizimi Visual Basic for Applications (VBA) işlevlerini anımsatır.
İfadenin tamamı, parantez içindeki bağımsız değişkenlerin ardından bir addan oluşan işlevler açısından tanımlanmalıdır:
İşlevAdı(<<argument 1>>
,<<argument N>>
)İşlevleri birbirine iç içe yerleştirebilirsiniz. Örneğin:
FunctionOne(FunctionTwo(<<argument1>>
))İşlevlere üç farklı türde bağımsız değişken geçirebilirsiniz:
- Köşeli ayraç içine alınması gereken öznitelikler. Örneğin: [attributeName]
- Çift tırnak içine alınması gereken dize sabitleri. Örneğin: "Birleşik Devletler"
- Diğer İşlevler. Örneğin: FunctionOne(
<<argument1>>
, FunctionTwo(<<argument2>>
))
Dize sabitleri için, dizede ters eğik çizgi ( \ ) veya tırnak işaretine ( " ) ihtiyacınız varsa, ters eğik çizgi ( \ ) simgesiyle kaçış karakteri kullanılmalıdır. Örneğin: "Şirket adı: \"Contoso\""
İşlev listesi
İşlev listesi | Açıklama |
---|---|
Arkasına Ekle | Bir kaynak dize değeri alır ve soneki sonuna ekler. |
BitAnd | BitAnd işlevi bir değer üzerinde belirtilen bitleri ayarlar. |
Cbool | CBool işlevi, değerlendirilen ifadeyi temel alan bir Boole değeri döndürür |
ConvertFromBase64 | ConvertFromBase64 işlevi, belirtilen base64 kodlanmış değerini normal bir dizeye dönüştürür. |
ConvertToBase64 | ConvertToBase64 işlevi bir dizeyi Unicode base64 dizesine dönüştürür. |
ConvertToUTF8Hex | ConvertToUTF8Hex işlevi bir dizeyi UTF8 Onaltılık kodlanmış bir değere dönüştürür. |
Sayı | Count işlevi, çok değerli bir öznitelikteki öğe sayısını döndürür |
Cstr | CStr işlevi bir dize veri türüne dönüştürülür. |
DateFromNum | DateFromNum işlevi AD'nin tarih biçimindeki bir değeri DateTime türüne dönüştürür. |
DNComponent | DNComponent işlevi, soldan giden belirtilen DN bileşeninin değerini döndürür. |
Hata | Error işlevi özel bir hata döndürmek için kullanılır. |
FormatDateTime | Tarih dizesini bir biçimden alır ve farklı bir biçime dönüştürür. |
GUID | İşlev Guid'i yeni bir rastgele GUID oluşturur. |
IIF | IIF işlevi, belirtilen koşula göre bir dizi olası değerden birini döndürür. |
Instr | InStr işlevi, dizedeki bir alt dizenin ilk oluşumunu bulur. |
Isnull | İfade Null olarak değerlendirilirse, IsNull işlevi true değerini döndürür. |
Isnullorempty | İfade null veya boş bir dizeyse, IsNullOrEmpty işlevi true döndürür. |
Ispresent | İfade Null olmayan ve boş olmayan bir dize olarak değerlendirilirse, IsPresent işlevi true döndürür. |
IsString | İfade bir dize türüne değerlendirilebilirse, IsString işlevi True olarak değerlendirilir. |
Kalem | Item işlevi, çok değerli bir dizeden/öznitelikten bir öğe döndürür. |
Join | Join(), Birden çok kaynak dize değerini tek bir dizede birleştirebildiği ve her değerin bir ayırıcı dizeyle ayrılacağı dışında, Append() ile benzerdir. |
Left | Left işlevi, bir dizenin solundan belirtilen sayıda karakter döndürür. |
Mid | Kaynak değerin alt dizesini döndürür. Alt dize, kaynak dizedeki karakterlerden yalnızca bazılarını içeren bir dizedir. |
NormalizeDiacritics | Bir dize bağımsız değişkeni gerektirir. Dizeyi döndürür, ancak tüm aksan karakterleri, eşdeğer, aksansız karakterlerle değiştirilir. |
Not | Kaynağın boole değerini çevirir. Kaynak değer "True" ise, "False" döndürür. Aksi takdirde , "True" döndürür. |
Removeduplicates | RemoveDuplicates işlevi çok değerli bir dize alır ve her değerin benzersiz olduğundan emin olun. |
Replace | Bir dize içindeki değerleri değiştirir. |
SelectUniqueValue | İfadeler kullanılarak tanımlanan benzersiz değer oluşturma kuralları olan en az iki bağımsız değişken gerektirir. İşlev her kuralı değerlendirir ve ardından hedef uygulamada/dizinde benzersizlik için oluşturulan değeri denetler. |
SingleAppRoleAssignment | Belirli bir uygulama için kullanıcıya atanan tüm appRoleAssignments listesinden tek bir appRoleAssignment döndürür. |
Bölünme | Belirtilen sınırlayıcı karakterini kullanarak bir dizeyi çok değerli bir diziye böler. |
StringFromSID | StringFromSid işlevi, güvenlik tanımlayıcısı içeren bir bayt dizisini dizeye dönüştürür. |
StripSpaces | Kaynak dizedeki tüm boşlukları (" ") kaldırır. |
Switch | Kaynak değer bir anahtarla eşleştiğinde, bu anahtar için değer döndürür. |
Tolower | Bir kaynak dize değeri alır ve belirtilen kültür kurallarını kullanarak bunu küçük harfe dönüştürür. |
Toupper | Bir kaynak dize değeri alır ve belirtilen kültür kurallarını kullanarak bunu büyük harfe dönüştürür. |
Trim | Trim işlevi bir dizeden baştaki ve sondaki boşlukları kaldırır. |
Kelime | Word işlevi, kullanılacak sınırlayıcıları ve döndürülecek sözcük numarasını açıklayan parametrelere bağlı olarak bir dizenin içinde yer alan bir sözcüğü döndürür. |
Arkasına Ekleme
Işlev:
Ekleme(kaynak, sonek)
Açıklama:
Bir kaynak dize değeri alır ve soneki sonuna ekler.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle kaynak nesneden özniteliğin adı. |
Soneki | Zorunlu | String | Kaynak değerin sonuna eklemek istediğiniz dize. |
BitAnd
Açıklama:
BitAnd işlevi bir değer üzerinde belirtilen bitleri ayarlar.
Söz dizimi:
num BitAnd(num value1, num value2)
- değer1, değer2: VE birlikte olması gereken sayısal değerler
Açıklamalar:
Bu işlev her iki parametreyi de ikili gösterime dönüştürür ve bir bit ayarlar:
- 0 - değer1 ve değer2'deki ilgili bitlerden biri veya her ikisi de 0 ise
- 1 - karşılık gelen bitlerin her ikisi de 1 ise.
Başka bir deyişle, her iki parametrenin karşılık gelen bitlerinin 1 olması dışında her durumda 0 döndürür.
Örnek:
BitAnd(&HF, &HF7)
Onaltılık "F" VE "F7" değeri bu değere değerlendirildiği için 7 döndürür.
Cbool
Açıklama:
CBool işlevi, değerlendirilen ifadeyi temel alan bir Boole değeri döndürür
Söz dizimi:
bool CBool(exp Expression)
Açıklamalar:
İfade sıfır olmayan bir değere değerlendirilirse, CBool True döndürür, aksi takdirde False döndürür.
Örnek:
CBool([attrib1] = [attrib2])
Her iki öznitelik de aynı değere sahipse True döndürür.
ConvertFromBase64
Açıklama:
ConvertFromBase64 işlevi, belirtilen base64 kodlanmış değerini normal bir dizeye dönüştürür.
Söz dizimi:
str ConvertFromBase64(str source)
- kodlama için Unicode varsayılır
str ConvertFromBase64(str source, enum Encoding)
- kaynak: Base64 kodlanmış dize
- Kodlama: Unicode, ASCII, UTF8
Örnek
ConvertFromBase64("SABlAGwAbABvACAAdwBvAHIAbABkACEA")
ConvertFromBase64("SGVsbG8gd29ybGQh", UTF8)
Her iki örnek de "Merhaba dünya!" döndürür
ConvertToBase64
Açıklama:
ConvertToBase64 işlevi bir dizeyi Unicode base64 dizesine dönüştürür.
Bir tamsayı dizisinin değerini, taban-64 basamaklı kodlanmış eşdeğer dize gösterimine dönüştürür.
Söz dizimi:
str ConvertToBase64(str source)
Örnek:
ConvertToBase64("Hello world!")
"SABlAGwAbABvACAAdwBvAHIAbABkACEA" döndürür
ConvertToUTF8Hex
Açıklama:
ConvertToUTF8Hex işlevi bir dizeyi UTF8 Onaltılık kodlanmış bir değere dönüştürür.
Söz dizimi:
str ConvertToUTF8Hex(str source)
Açıklamalar:
Bu işlevin çıkış biçimi, Microsoft Entra ID tarafından DN öznitelik biçimi olarak kullanılır.
Örnek:
ConvertToUTF8Hex("Hello world!")
48656C6C6F20776F726C6421 döndürür
Sayı
Açıklama:
Count işlevi, çok değerli bir öznitelikteki öğe sayısını döndürür
Söz dizimi:
num Count(mvstr attribute)
Cstr
Açıklama:
CStr işlevi bir dize veri türüne dönüştürülür.
Söz dizimi:
str CStr(num value)
str CStr(ref value)
str CStr(bool value)
- value: Sayısal bir değer, başvuru özniteliği veya Boole olabilir.
Örnek:
CStr([dn])
"cn=Joe,dc=contoso,dc=com" döndürebilir
DateFromNum
Açıklama:
DateFromNum işlevi AD'nin tarih biçimindeki bir değeri DateTime türüne dönüştürür.
Söz dizimi:
dt DateFromNum(num value)
Örnek:
DateFromNum([lastLogonTimestamp])
DateFromNum(129699324000000000)
2012-01-01 23:00:00'i temsil eden bir DateTime döndürür
DNComponent
Açıklama:
DNComponent işlevi, soldan giden belirtilen DN bileşeninin değerini döndürür.
Söz dizimi:
str DNComponent(ref dn, num ComponentNumber)
- dn: Yorumlanacak başvuru özniteliği
- ComponentNumber: DN'de döndürülecek bileşen
Örnek:
DNComponent(CRef([dn]),1)
Dn "cn=Joe,ou=..." ise, Joe döndürür
Hata
Açıklama:
Error işlevi özel bir hata döndürmek için kullanılır.
Söz dizimi:
void Error(str ErrorMessage)
Örnek:
IIF(IsPresent([accountName]),[accountName],Error("AccountName is required"))
accountName özniteliği yoksa nesneye bir hata oluşturun.
FormatDateTime
Işlev:
FormatDateTime(source, inputFormat, outputFormat)
Açıklama:
Tarih dizesini bir biçimden alır ve farklı bir biçime dönüştürür.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle kaynak nesneden özniteliğin adı. |
inputFormat | Zorunlu | String | Kaynak değerin beklenen biçimi. Desteklenen biçimler için bkz . /dotnet/standard/base-types/custom-date-and-time-format-strings. |
outputFormat | Zorunlu | String | Çıkış tarihinin biçimi. |
Guid
Açıklama:
İşlev Guid'i yeni bir rastgele GUID oluşturur
Söz dizimi:
str Guid()
IIF
Açıklama:
IIF işlevi, belirtilen koşula göre bir dizi olası değerden birini döndürür.
Söz dizimi:
var IIF(exp condition, var valueIfTrue, var valueIfFalse)
- condition: true veya false olarak değerlendirilebilecek herhangi bir değer veya ifade.
- valueIfTrue: Koşul true olarak değerlendirilirse, döndürülen değer.
- valueIfFalse: Koşul false olarak değerlendirilirse, döndürülen değer.
Örnek:
IIF([employeeType]="Intern","t-" & [alias],[alias])
Kullanıcı bir stajyerse, başına "t-" eklenmiş bir kullanıcının diğer adını döndürür, aksi takdirde kullanıcının diğer adını olduğu gibi döndürür.
Instr
Açıklama:
InStr işlevi, dizedeki bir alt dizenin ilk oluşumunu bulur
Söz dizimi:
num InStr(str stringcheck, str stringmatch)
num InStr(str stringcheck, str stringmatch, num start)
num InStr(str stringcheck, str stringmatch, num start, enum compare)
- stringcheck: aranacak dize
- stringmatch: bulunabilecek dize
- start: alt dizeyi bulmak için başlangıç konumu
- compare: vbTextCompare veya vbBinaryCompare
Açıklamalar:
Alt dizenin bulunduğu konumu veya bulunamazsa 0 değerini döndürür.
Örnek:
InStr("The quick brown fox","quick")
Evalues to 5
InStr("repEated","e",3,vbBinaryCompare)
7 olarak değerlendirilir
Isnull
Açıklama:
İfade Null olarak değerlendirilirse, IsNull işlevi true değerini döndürür.
Söz dizimi:
bool IsNull(var Expression)
Açıklamalar:
Bir öznitelik için Null, özniteliğin olmamasıyla ifade edilir.
Örnek:
IsNull([displayName])
Öznitelik CS veya MV'de yoksa True döndürür.
Isnullorempty
Açıklama:
İfade null veya boş bir dizeyse, IsNullOrEmpty işlevi true döndürür.
Söz dizimi:
bool IsNullOrEmpty(var Expression)
Açıklamalar:
Bir öznitelik için, öznitelik yoksa veya mevcutsa ancak boş bir dizeyse, bu True olarak değerlendirilir.
Bu işlevin tersi IsPresent olarak adlandırılır.
Örnek:
IsNullOrEmpty([displayName])
Öznitelik yoksa veya CS veya MV'de boş bir dizeyse True döndürür.
Ispresent
Açıklama:
İfade Null olmayan ve boş olmayan bir dize olarak değerlendirilirse, IsPresent işlevi true döndürür.
Söz dizimi:
bool IsPresent(var expression)
Açıklamalar:
Bu işlevin tersi IsNullOrEmpty olarak adlandırılır.
Örnek:
Switch(IsPresent([directManager]),[directManager], IsPresent([skiplevelManager]),[skiplevelManager], IsPresent([director]),[director])
Ürün
Açıklama:
Item işlevi, çok değerli bir dizeden/öznitelikten bir öğe döndürür.
Söz dizimi:
var Item(mvstr attribute, num index)
- öznitelik: çok değerli öznitelik
- index: çok değerli dizedeki bir öğenin dizinini oluşturun.
Açıklamalar:
Item işlevi contains işleviyle birlikte yararlıdır çünkü ikinci işlev dizini çok değerli öznitelikteki bir öğeye döndürür.
Dizin sınırların dışındaysa hata oluşturur.
Örnek:
Mid(Item([proxyAddresses],Contains([proxyAddresses], "SMTP:")),6)
Birincil e-posta adresini döndürür.
IsString
Açıklama:
İfade bir dize türüne değerlendirilebilirse, IsString işlevi True olarak değerlendirilir.
Söz dizimi:
bool IsString(var expression)
Açıklamalar:
CStr() öğesinin ifadeyi ayrıştırmak için başarılı olup olmadığını belirlemek için kullanılır.
Katılın
Işlev:
Join(ayırıcı, kaynak1, kaynak2, ...)
Açıklama:
Join(), Birden çok kaynak dize değerini tek bir dizede birleştirebildiği ve her değerin bir ayırıcı dizeyle ayrılacağı dışında, Append() ile benzerdir.
Kaynak değerlerden biri çok değerli bir öznitelikse, bu öznitelikteki her değer ayırıcı değerle ayrılmış olarak birleştirilir.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
Ayırıcı | Zorunlu | String | Kaynak değerleri tek bir dizede birleştirildiğinde ayırmak için kullanılan dize. Ayırıcı gerekli değilse "" olabilir. |
kaynak1 ... sourceN | Gerekli, değişken sayısı | String | Birleştirilecek dize değerleri. |
Left
Açıklama:
Left işlevi, bir dizenin solundan belirtilen sayıda karakter döndürür.
Söz dizimi:
str Left(str string, num NumChars)
- string: karakter döndürülecek dize
- NumChars: Dizenin başından (soldan) döndürülecek karakter sayısını tanımlayan bir sayı
Açıklamalar:
Dizedeki ilk numChars karakterlerini içeren bir dize:
- numChars = 0 ise boş dize döndürün.
- numChars < 0 ise giriş dizesini döndürün.
- Dize null ise boş dize döndür.
Dize, numChars içinde belirtilen sayıdan daha az karakter içeriyorsa, dizeyle aynı bir dize (yani, parametre 1'deki tüm karakterleri içeren) döndürülür.
Örnek:
Left("John Doe", 3)
Joh
döndürür.
Mid
Işlev:
Orta(kaynak, başlangıç, uzunluk)
Açıklama:
Kaynak değerin alt dizesini döndürür. Alt dize, kaynak dizedeki karakterlerden yalnızca bazılarını içeren bir dizedir.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle özniteliğin adı. |
start | Zorunlu | integer | Alt dizenin başlaması gereken kaynak dizedeki dizin. Dizedeki ilk karakterin dizini 1, ikinci karakterin dizini 2 olur ve bu şekilde devam eder. |
length | Zorunlu | integer | Alt dizenin uzunluğu. Uzunluk kaynak dizenin dışında biterse, işlev başlangıç dizininden kaynak dizenin sonuna kadar alt dize döndürür. |
NormalizeDiacritics
Işlev:
NormalizeDiacritics(kaynak)
Açıklama:
Bir dize bağımsız değişkeni gerektirir. Dizeyi döndürür, ancak tüm aksan karakterleri, eşdeğer, aksansız karakterlerle değiştirilir. Genellikle, aksan karakterleri (vurgu işaretleri) içeren ad ve soyadlarını, kullanıcı asıl adları, SAM hesabı adları ve e-posta adresleri gibi çeşitli kullanıcı tanımlayıcılarında kullanılabilecek yasal değerlere dönüştürmek için kullanılır.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle bir ad veya soyadı özniteliği. |
Not
Işlev:
Not(kaynak)
Açıklama:
Kaynağın boole değerini çevirir. Kaynak değer "True" ise, "False" döndürür. Aksi takdirde , "True" döndürür.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | Boole Dizesi | Beklenen kaynak değerleri "True" veya "False" olur. |
Removeduplicates
Açıklama:
RemoveDuplicates işlevi çok değerli bir dize alır ve her değerin benzersiz olduğundan emin olun.
Söz dizimi:
mvstr RemoveDuplicates(mvstr attribute)
Örnek:
RemoveDuplicates([proxyAddresses])
Tüm yinelenen değerlerin kaldırıldığı temizlenmiş proxyAddress özniteliğini döndürür.
Replace
Işlev:
Replace(source, oldValue, regexPattern, regexGroupName, replacementValue, replacementAttributeName, template)
Açıklama:
Bir dize içindeki değerleri değiştirir. Sağlanan parametrelere bağlı olarak farklı çalışır:
oldValue ve replacementValue sağlandığında:
- Kaynaktaki tüm oldValue oluşumlarını replaceValue ile değiştirir
oldValue ve şablon sağlandığında:
- Şablondaki oldValue değerinin tüm oluşumlarını kaynak değerle değiştirir
regexPattern ve replacementValue sağlandığında:
- İşlev, kaynak dizeye regexPattern uygular ve regex grup adlarını kullanarak replacementValue dizesini oluşturabilirsiniz
regexPattern, regexGroupName, replacementValue sağlandığında:
- işlevi, regexPattern dosyasını kaynak dizeye uygular ve regexGroupName ile eşleşen tüm değerleri replaceValue ile değiştirir
regexPattern, regexGroupName, replacementAttributeName sağlandığında:
- Kaynağın değeri yoksa, kaynak döndürülür
- Kaynağın bir değeri varsa, işlev regexPattern dosyasını kaynak dizeye uygular ve regexGroupName ile eşleşen tüm değerleri replaceAttributeName ile ilişkili değerle değiştirir
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle kaynak nesneden özniteliğin adı. |
Oldvalue | İsteğe bağlı | String | Kaynak veya şablonda değiştirilecek değer. |
regexPattern | İsteğe bağlı | String | Kaynakta değiştirilecek değer için regex deseni. Veya replacementPropertyName kullanıldığında, replacementPropertyName değerinden değer ayıklamak için desen. |
regexGroupName | İsteğe bağlı | String | regexPattern içindeki grubun adı. Yalnızca replacementPropertyName kullanıldığında, bu grubun değerini replacementPropertyName'den replacementValue olarak ayıklarız. |
replacementValue | İsteğe bağlı | String | Eski değerle değiştirilecek yeni değer. |
replacementAttributeName | İsteğe bağlı | String | Değiştirme değeri için kullanılacak özniteliğin adı |
şablonu | İsteğe bağlı | String | Şablon değeri sağlandığında, şablonun içinde oldValue değerini arar ve kaynak değerle değiştiririz. |
SelectUniqueValue
Işlev:
SelectUniqueValue(uniqueValueRule1, uniqueValueRule2, uniqueValueRule3, ...)
Açıklama:
İfadeler kullanılarak tanımlanan benzersiz değer oluşturma kuralları olan en az iki bağımsız değişken gerektirir. İşlev her kuralı değerlendirir ve ardından hedef uygulamada/dizinde benzersizlik için oluşturulan değeri denetler. Bulunan ilk benzersiz değer, döndürülen değer olacaktır. Tüm değerler hedefte zaten varsa, giriş emanet edilir ve neden denetim günlüklerinde günlüğe kaydedilir. Sağlanabilir bağımsız değişken sayısı için üst sınır yoktur.
Dekont
- Bu üst düzey bir işlevdir, iç içe yerleştirilemez.
- Bu işlev, eşleşen önceliğe sahip özniteliklere uygulanamaz.
- Bu işlevin yalnızca giriş oluşturma işlemleri için kullanılması amaçlanır. Bunu bir öznitelikle kullanırken EşlemeYi Uygula özelliğini Yalnızca nesne oluşturma sırasında olarak ayarlayın.
- Bu işlev şu anda yalnızca "Workday ve SuccessFactors to Active Directory User Provisioning" için desteklenmektedir. Diğer sağlama uygulamalarıyla kullanılamaz.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
uniqueValueRule1 ... uniqueValueRuleN | En az 2 gereklidir, üst sınır yoktur | String | Değerlendirilecek benzersiz değer oluşturma kurallarının listesi. |
SingleAppRoleAssignment
Işlev:
SingleAppRoleAssignment([appRoleAssignments])
Açıklama:
Belirli bir uygulama için kullanıcıya atanan tüm appRoleAssignments listesinden tek bir appRoleAssignment döndürür. AppRoleAssignments nesnesini tek bir rol adı dizesine dönüştürmek için bu işlev gereklidir. En iyi yöntemin bir kerede tek bir kullanıcıya yalnızca bir appRoleAssignment atandığından ve birden çok rol atandığında döndürülen rol dizesinin tahmin edilemeyebilir olduğundan emin olmak olduğunu unutmayın.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
[appRoleAssignments] | Zorunlu | String | [appRoleAssignments] Nesne. |
Bölünme
Işlev:
Split(kaynak, sınırlayıcı)
Açıklama:
Belirtilen sınırlayıcı karakterini kullanarak bir dizeyi çok değerli bir diziye böler.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | kaynak değerini güncelleştirin. |
Sınırlayıcı | Zorunlu | String | Dizeyi bölmek için kullanılacak karakteri belirtir (örnek: ",") |
StringFromSid
Açıklama:
StringFromSid işlevi, güvenlik tanımlayıcısı içeren bir bayt dizisini dizeye dönüştürür.
Söz dizimi:
str StringFromSid(bin ObjectSID)
StripSpaces
Işlev:
StripSpaces(kaynak)
Açıklama:
Kaynak dizedeki tüm boşlukları (" ") kaldırır.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | kaynak değerini güncelleştirin. |
Switch
Işlev:
Switch(kaynak, defaultValue, anahtar1, değer1, anahtar2, değer2, ...)
Açıklama:
Kaynak değer bir anahtarla eşleştiğinde, bu anahtar için değer döndürür. Kaynak değer hiçbir anahtarla eşleşmiyorsa defaultValue değerini döndürür. Anahtar ve değer parametreleri her zaman çift olarak gelmelidir. işlevi her zaman çift sayıda parametre bekler.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Denetlenecek kaynak değer. |
defaultValue | İsteğe bağlı | String | Kaynak hiçbir anahtarla eşleşmediğinde kullanılacak varsayılan değer. Boş dize ("") olabilir. |
key | Zorunlu | String | Kaynak değeri ile karşılaştıracak anahtar. |
value | Zorunlu | String | Anahtarla eşleşen kaynağın değiştirme değeri. |
ToLower
Işlev:
ToLower(kaynak, kültür)
Açıklama:
Bir kaynak dize değeri alır ve belirtilen kültür kurallarını kullanarak bunu küçük harfe dönüştürür. Herhangi bir kültür bilgisi belirtilmemişse Sabit kültür kullanır.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle kaynak nesneden özniteliğin adı |
Kültür | İsteğe bağlı | String | RFC 4646'yı temel alan kültür adının biçimi languagecode2-country/regioncode2'dir; burada languagecode2 iki harfli dil kodudur ve country/regioncode2 iki harfli alt kültür kodudur. Örnek olarak Japonca (Japonya) için ja-JP ve İngilizce (Birleşik Devletler) için en-US verilebilir. İki harfli dil kodunun kullanılamadığı durumlarda, ISO 639-2'den türetilmiş üç harfli bir kod kullanılır. |
ToUpper
Işlev:
ToUpper(kaynak, kültür)
Açıklama:
Bir kaynak dize değeri alır ve belirtilen kültür kurallarını kullanarak bunu büyük harfe dönüştürür. Herhangi bir kültür bilgisi belirtilmemişse Sabit kültür kullanır.
Parametreler:
Adı | Gerekli/Yineleniyor | Türü | Notes |
---|---|---|---|
source | Zorunlu | String | Genellikle kaynak nesneden özniteliğin adı. |
Kültür | İsteğe bağlı | String | RFC 4646'yı temel alan kültür adının biçimi languagecode2-country/regioncode2'dir; burada languagecode2 iki harfli dil kodudur ve country/regioncode2 iki harfli alt kültür kodudur. Örnek olarak Japonca (Japonya) için ja-JP ve İngilizce (Birleşik Devletler) için en-US verilebilir. İki harfli dil kodunun kullanılamadığı durumlarda, ISO 639-2'den türetilmiş üç harfli bir kod kullanılır. |
Trim
Açıklama:
Trim işlevi bir dizeden baştaki ve sondaki boşlukları kaldırır.
Söz dizimi:
str Trim(str value)
Örnek:
Trim(" Test ")
"Test" döndürür.
Trim([proxyAddresses])
proxyAddress özniteliğindeki her değer için baştaki ve sondaki boşlukları kaldırır.
Word
Açıklama:
Word işlevi, kullanılacak sınırlayıcıları ve döndürülecek sözcük numarasını açıklayan parametrelere bağlı olarak bir dizenin içinde yer alan bir sözcüğü döndürür.
Söz dizimi:
str Word(str string, num WordNumber, str delimiters)
- string: sözcüğün döndürüleceği dize.
- WordNumber: Hangi sözcük numarasının döndürülmesi gerektiğini tanımlayan bir sayıdır.
- sınırlayıcılar: Sözcükleri tanımlamak için kullanılması gereken sınırlayıcıları temsil eden bir dize
Açıklamalar:
Sınırlayıcılardaki karakterlerden biriyle ayrılmış dizedeki her karakter dizesi, sözcükler olarak tanımlanır:
- < Sayı 1 ise, boş dize döndürür.
- Dize null ise boş dize döndürür.
Dize sayı sözcüklerinden küçükse veya dize sınırlayıcılar tarafından tanımlanan herhangi bir sözcük içermiyorsa boş bir dize döndürülür.
Örnek:
Word("The quick brown fox",3," ")
"kahverengi" döndürür
Word("This,string!has&many separators",3,",!&#")
"has" döndürür
Örnekler
Bilinen etki alanı adını şeritle
Kullanıcı adı almak için bilinen bir etki alanı adını kullanıcının e-postasından ayırmanız gerekir.
Örneğin, etki alanı "contoso.com" ise aşağıdaki ifadeyi kullanabilirsiniz:
Expression:
Replace([mail], "@contoso.com", , ,"", ,)
Örnek giriş/çıkış:
- INPUT (posta): "john.doe@contoso.com"
- OUTPUT: "john.doe"
Kullanıcı adına sabit sonek ekleme
Salesforce Korumalı Alanı kullanıyorsanız, eşitlemeden önce tüm kullanıcı adlarınıza ek bir sonek eklemeniz gerekebilir.
Expression:
Append([userPrincipalName], ".test")
Örnek giriş/çıkış:
- INPUT: (userPrincipalName): "John.Doe@contoso.com"
- ÇıKıŞ: "John.Doe@contoso.com.test"
Ad ve soyadı bölümlerini birleştirirken kullanıcı diğer adı oluşturma
Kullanıcı adının ilk 3 harfini ve soyadının ilk 5 harfini alarak bir kullanıcı diğer adı oluşturmanız gerekir.
Expression:
Append(Mid([givenName], 1, 3), Mid([surname], 1, 5))
Örnek giriş/çıkış:
- INPUT (givenName): "John"
- INPUT (soyadı): "Doe"
- ÇıKıŞ: "JohDoe"
Dizeden aksanları kaldırma
Vurgu işaretleri içeren karakterleri, aksan işaretleri içermeyen eşdeğer karakterlerle değiştirmeniz gerekir.
Expression:
NormalizeDiacritics([givenName])
Örnek giriş/çıkış:
- INPUT (givenName): "Zoë"
- ÇıKıŞ: "Zoe"
Dizeyi çok değerli bir diziye bölme
Virgülle ayrılmış bir dize listesi almanız ve bunları Salesforce'un PermissionSets özniteliği gibi çok değerli bir özniteliğe takılabilen bir diziye bölmeniz gerekir. Bu örnekte, Microsoft Entra Id'de extensionAttribute5'te izin kümelerinin listesi dolduruldu.
Expression:
Split([extensionAttribute5], ",")
Örnek giriş/çıkış:
- INPUT (extensionAttribute5): "PermissionSetOne, PermissionSetTwo"
- OUTPUT: ["PermissionSetOne", "PermissionSetTwo"]
Belirli bir biçimde bir dize olarak çıkış tarihi
Bir SaaS uygulamasına belirli bir biçimde tarih göndermek istiyorsunuz.
Örneğin, ServiceNow tarihlerini biçimlendirmek istiyorsunuz.
Expression:
FormatDateTime([extensionAttribute1], "yyyyMMddHHmmss.fZ", "yyyy-MM-dd")
Örnek giriş/çıkış:
- INPUT (extensionAttribute1): "20150123105347.1Z"
- ÇıKıŞ: "2015-01-23"
Önceden tanımlanmış seçenek kümesine göre bir değeri değiştirme
Kullanıcının saat dilimini Microsoft Entra Id'de depolanan durum koduna göre tanımlamanız gerekir.
Eyalet kodu önceden tanımlanmış seçeneklerden herhangi biriyle eşleşmiyorsa varsayılan "Avustralya/Sidney" değerini kullanın.
Expression:
Switch([state], "Australia/Sydney", "NSW", "Australia/Sydney","QLD", "Australia/Brisbane", "SA", "Australia/Adelaide")
Örnek giriş/çıkış:
- INPUT (durum): "QLD"
- OUTPUT: "Australia/Brisbane"
Normal ifade kullanarak karakterleri değiştirme
Normal ifade değeriyle eşleşen karakterleri bulmanız ve kaldırmanız gerekir.
Expression:
Replace([mailNickname], , "[a-zA-Z_]*", , "", , )
Örnek giriş/çıkış:
- INPUT (mailNickname: "john_doe72"
- ÇıKıŞ: "72"
Oluşturulan userPrincipalName (UPN) değerini küçük harfe dönüştürme
Aşağıdaki örnekte, UPN değeri PreferredFirstName ve PreferredLastName kaynak alanları birleştirilerek oluşturulur ve ToLower işlevi, tüm karakterleri küçük harfe dönüştürmek için oluşturulan dizede çalışır.
ToLower(Join("@", NormalizeDiacritics(StripSpaces(Join(".", [PreferredFirstName], [PreferredLastName]))), "contoso.com"))
Örnek giriş/çıkış:
- INPUT (PreferredFirstName): "John"
- INPUT (PreferredLastName): "Smith"
- ÇıKıŞ: "john.smith@contoso.com"
userPrincipalName (UPN) özniteliği için benzersiz değer oluşturma
Kullanıcının adı, ikinci adı ve soyadına bağlı olarak UPN özniteliği için bir değer oluşturmanız ve değeri UPN özniteliğine atamadan önce hedef AD dizininde benzersiz olup olmadığını denetlemeniz gerekir.
Expression:
SelectUniqueValue(
Join("@", NormalizeDiacritics(StripSpaces(Join(".", [PreferredFirstName], [PreferredLastName]))), "contoso.com"),
Join("@", NormalizeDiacritics(StripSpaces(Join(".", Mid([PreferredFirstName], 1, 1), [PreferredLastName]))), "contoso.com"),
Join("@", NormalizeDiacritics(StripSpaces(Join(".", Mid([PreferredFirstName], 1, 2), [PreferredLastName]))), "contoso.com")
)
Örnek giriş/çıkış:
- INPUT (PreferredFirstName): "John"
- INPUT (PreferredLastName): "Smith"
- OUTPUT: UPN değeri John.Smith@contoso.com dizininde zaten yoksa "John.Smith@contoso.com"
- OUTPUT: UPN değeri John.Smith@contoso.com dizinde zaten varsa "J.Smith@contoso.com"
- OUTPUT: Yukarıdaki iki UPN değeri dizinde zaten varsa "Jo.Smith@contoso.com"