SAML belirteci taleplerini özelleştirme

Microsoft kimlik platformu, uygulama galerisinde ve özel uygulamalarda çoğu önceden tümlenmiş uygulamalarla çoklu oturum açmayı (SSO) destekler. Bir kullanıcı SAML 2.0 protokolunu kullanarak Microsoft kimlik platformu aracılığıyla bir uygulamada kimlik doğrulaması yaparsa, uygulamaya bir belirteç gönderilir. Uygulama, kullanıcı adı ve parola isteme yerine oturum açmak için belirteci doğrular ve kullanır.

Bu SAML simgeleri, kullanıcı hakkında talep olarak bilinen bilgi parçalarını içerir. Talep, kimlik sağlayıcısının bu kullanıcı için verdikleri belirtecin içindeki bir kullanıcı hakkında belirttiği bilgilerdir. SAML belirtecinde talep verileri genellikle SAML Öznitelik Deyimi'nde yer alır. Kullanıcının benzersiz kimliği genellikle AD tanımlayıcısı (nameID ) olarak da adlandırılan SAML konu başlığında temsil edilir.

Varsayılan olarak, Microsoft kimlik platformu kullanıcının kullanıcı adı (kullanıcı asıl adı olarak da bilinir) değerine sahip bir talep içeren bir uygulamaya saml belirteci verir ve bu da kullanıcıyı benzersiz olarak tanımlayabilir. SAML belirteci kullanıcının e-posta adresini, adını ve soyadını içeren diğer talepleri de içerir.

Talepleri görüntüleme veya düzenleme

SAML token'unda uygulamaya verilen talepleri görüntülemek veya düzenlemek için:

  1. Microsoft Entra yönetim merkezinde en az Bir Bulut Uygulaması Yöneticisi olarak oturum açın.
  2. Entra ID>Enterprise uygulamaları>Tüm uygulamalar'a göz atın.
  3. Uygulamayı seçin, sol taraftaki menüden Çoklu oturum açma'yı ve ardından Öznitelikler ve Talepler bölümünde Düzenle'yi seçin.

SAML belirtecinde verilen talepleri aşağıdaki nedenlerle düzenlemeniz gerekebilir:

  • Uygulama, NameIdentifier veya nameID talebinin kullanıcı adı (veya kullanıcı temel adı) dışında bir şey olmasını gerektirir.
  • Uygulama farklı beyan URI'leri veya beyan değerleri kümesi gerektirecek şekilde yazıldı.

Düzenle nameID

İsim tanımlayıcı değeri talebini düzenlemek için:

  1. Ad tanımlayıcı değeri sayfasını açın.
  2. Özniteliğine uygulamak istediğiniz özniteliği veya dönüşümü seçin. İsteğe bağlı olarak, talebin sahip olmasını istediğiniz nameID biçimi belirtebilirsiniz.

NameID biçimi

SAML isteği belirli bir biçime sahip öğesini NameIDPolicy içeriyorsa, Microsoft kimlik platformu istekteki biçimi kabul eder.

SAML isteği NameIDPolicy öğesi içermiyorsa, o halde Microsoft kimlik platformu öğesi nameID'yi belirttiğiniz biçimde yayınlar. Biçim belirtilmezse, Microsoft kimlik platformu seçilen talep kaynağıyla ilişkili varsayılan kaynak biçimini kullanır. Yapılandırılan kaynak özniteliği olduğunda null, Microsoft tanımlama platformu kullanır userprincipalName. Bir dönüştürme null veya geçersiz bir değerle sonuçlanırsa, Microsoft Entra Kimliği nameID içinde kalıcı bir çiftler arası tanımlayıcı gönderir.

Ad tanımlayıcı biçimi seçin açılan listesinden aşağıdaki tabloda yer alan seçeneklerden birini belirleyin.

nameID biçim Açıklama
Varsayılan Microsoft kimlik platformu varsayılan kaynak biçimini kullanır.
kalıcı Microsoft kimlik platformu biçimi olarak Persistent kullanırnameID.
E-posta adresi Microsoft kimlik platformu biçimi olarak EmailAddress kullanırnameID.
Belirtilme -miş Microsoft kimlik platformu biçimi olarak Unspecified kullanırnameID.
Windows alan adı tam yetkin adı Microsoft kimlik platformu WindowsDomainQualifiedName biçimini kullanır.

Geçici nameID de desteklenir, ancak açılan listede kullanılamaz ve Azure tarafında yapılandırılamaz. Öznitelik hakkında NameIDPolicy daha fazla bilgi edinmek için bkz. Çoklu oturum açma SAML protokolü.

Özellikler

İstenen NameIdentifier veya nameID talebi için kaynağı seçin. Aşağıdaki tabloda yer alan seçenekler arasından seçim yapabilirsiniz.

Veri Akışı Adı Açıklama
Email Kullanıcının e-posta adresi.
userprincipalName Kullanıcının kullanıcı asıl adı (UPN).
onpremisessamaccountname Şirket içi Microsoft Entra Kimliği'nden eşitlenen SAM hesabı adı.
objectid Microsoft Entra Id'de kullanıcının nesne kimliği.
employeeid Kullanıcının çalışan kimliği.
Directory extensions Microsoft Entra Connect Sync kullanılarak şirket içi Active Directory'den eşitlenen dizin uzantıları.
Extension Attributes 1-15 Microsoft Entra şemasını genişletmek için kullanılan şirket içi uzantı öznitelikleri.
pairwiseid Kalıcı kullanıcı tanımlayıcısı biçimi.

Tanımlayıcı değerleri hakkında daha fazla bilgi için, bu sayfanın devamında kaynak başına geçerli kimlik değerlerini listeleyen tabloya bakın.

Herhangi bir sabit (statik) değer herhangi bir talepe atanabilir. Sabit değer atamak için aşağıdaki adımları kullanın:

  1. Öznitelikler ve Talepler dikey penceresinde, değiştirmek istediğiniz gerekli talebi seçin.
  2. Kaynak özniteliğinde, kuruluşunuza göre tırnak işareti olmadan sabit değeri girin ve Kaydet'i seçin. Sabit değer görüntülenir.

Dizin Şeması uzantıları

Dizin şeması uzantısı özniteliklerini koşullu/koşullu olmayan öznitelikler olarak da yapılandırabilirsiniz. Tek veya çok değerli dizin şeması uzantısı özniteliğini talep olarak yapılandırmak için aşağıdaki adımları kullanın:

  1. Öznitelikler ve Talepler dikey penceresinde Yeni talep ekle'yi seçin veya var olan bir talebi düzenleyin.
  2. Uzantı özelliğinin tanımlandığı uygulama seçiciden kaynak uygulamayı seçin.
  3. Seçimi taleplere eklemek için Ekle'yi seçin.
  4. Değişiklikleri kaydetmek için Kaydet'e tıklayın.

Özel talep dönüştürmeleri

Aşağıdaki özel talep dönüştürme işlevlerini kullanabilirsiniz.

İşlev Açıklama
ExtractMailPrefix() E-posta adresinden veya kullanıcı asıl adından etki alanı sonekini kaldırır. Bu işlev, geçirilen kullanıcı adının yalnızca ilk bölümünü ayıklar (örneğin, joe_smith@contoso.com yerine "joe_smith").
Küçük Harfe Çevir() Seçili özniteliğin karakterlerini küçük harflere dönüştürür.
KimeÜst() Seçili özniteliğin karakterlerini büyük harf karakterlere dönüştürür.

Uygulamaya özgü talepler ekleme

Uygulamaya özgü talepler eklemek için:

  1. Öznitelikler ve Talepler dikey penceresinde Yeni talep ekle'yi seçerek Kullanıcı beyanlarını yönet sayfasını açın.
  2. Taleplerin adını girin. Değerin, SAML belirtimine göre bir URI desenini izlemesi kesinlikle gerekmez. URI deseni gerekiyorsa, bunu Ad Alanı alanına yerleştirebilirsiniz.
  3. Talebin değerini alacağı Kaynağı seçin. Kullanıcı özniteliğini kaynak öznitelik açılan listesinden seçebilir veya bunu iddia olarak yaymadan önce kullanıcı özniteliğine bir dönüştürme uygulayabilirsiniz.

Grup talebi ekleme

Grup talepleri, bir uygulama veya hizmet sağlayıcısı tarafından kaynağa erişmek için yetkilendirme kararları almak için kullanılır. Grup talepleri eklemek için;

  1. Uygulama kayıtları'na gidin ve grup talebi eklemek istediğiniz uygulamayı seçin.
  2. Grup talebi ekle'yi seçin.
  3. Belirtecinize eklenecek grup türlerini seçin. Belirli bir uygulamaya atanmış güvenlik grupları, dizin grupları veya gruplar ekleyebilirsiniz.
  4. Grup talebinize eklemek istediğiniz değerleri seçin ve ardından Ekle'yi seçin.

Talep dönüştürmeleri

Kullanıcı özniteliğine dönüştürme uygulamak için:

  1. Talebi yönet bölümünde, Dönüştürmeyi yönet sayfasını açmak için talep kaynağı olarak Dönüştürme'yi seçin.
  2. Dönüştürme menüsündeki açılır listeden işlevi seçin. Seçilen işleve bağlı olarak, dönüştürmede değerlendirilecek parametreleri ve sabit bir değeri sağlayın.
  3. Uygun radyo düğmesine tıklayarak özniteliğin kaynağını seçin.
  4. Açılan listeden öznitelik adını seçin.
  5. Kaynağı birden çok değerli olarak kabul etme, dönüşümün tüm değerlere mi yoksa yalnızca ilk değere mi uygulanacağını belirten bir onay kutusudur. Varsayılan olarak, dönüştürmeler yalnızca çok değerli bir talepteki ilk öğeye uygulanır; bu kutu işaretlenerek tümüne uygulanmasını sağlar. Bu onay kutusu yalnızca çok değerli öznitelikler için etkinleştirilebilir, örneğin user.proxyaddresses.
  6. Birden çok dönüştürme uygulamak için Dönüştürme ekle'yi seçin. Bir talepe en fazla iki dönüştürme uygulayabilirsiniz. Örneğin, önce user.mail öğesinin e-posta adresinin ön kısmını ayıklayabilirsiniz. Ardından, dizenin tüm harflerini büyük yapın.

Talepleri dönüştürmek için aşağıdaki işlevleri kullanabilirsiniz.

İşlev Açıklama
ExtractMailPrefix() E-posta adresinden veya kullanıcı ana adından etki alanı sonekini kaldırır. Bu işlev, iletilen kullanıcı adının yalnızca ilk bölümünü ayıklar. Örneğin, joe_smith yerine joe_smith@contoso.com.
Birleştir() İki özniteliği birleştirerek yeni bir değer oluşturur. İsteğe bağlı olarak, iki öznitelik arasında bir ayırıcı kullanabilirsiniz. Talep dönüşümü için nameID Join () işlevi, dönüştürme girişinin bir etki alanı parçası olduğunda belirli bir davranışa sahiptir. Etki alanı bölümünü ayırıcı ve seçili parametreyle birleştirmeden önce girdiden kaldırır. Örneğin, dönüşümün girişi joe_smith@contoso.com, ayırıcı @ ve parametresi fabrikam.com olduğunda, bu giriş bileşimi joe_smith@fabrikam.com ile sonuçlanır.
Küçük Harfe Dönüştür() Seçili özniteliğin karakterlerini küçük harflere dönüştürür.
BüyükHarfeDönüştür() Seçili özniteliğin karakterlerini büyük harf karakterlere dönüştürür.
İçerir() Giriş belirtilen değerle eşleşiyorsa bir öznitelik veya sabit verir. Aksi takdirde, eşleşme yoksa başka bir çıkış belirtebilirsiniz. Örneğin, etki alanını @contoso.com içeriyorsa değerin kullanıcının e-posta adresi olduğu bir talep oluşturmak istiyorsanız, aksi takdirde kullanıcı asıl adını görüntülemek istersiniz. Bu işlevi gerçekleştirmek için şu değerleri yapılandırın: Parameter 1(input): user.email, Value: "@contoso.com", Parameter 2 (output): user.emailve Parameter 3 (output if there's no match): user.userprincipalname.
EndWith() Girişin belirtilen değerle bitmesi durumunda bir öznitelik veya sabit çıkışı verir. Aksi takdirde, eşleşme yoksa başka bir çıkış belirtebilirsiniz.
Örneğin, çalışan kimliği 000 ile bitiyorsa değerin kullanıcının çalışan kimliği olduğu bir talepte bulunmak istiyorsanız, aksi takdirde bir uzantı özniteliği çıkarmak istersiniz. Bu işlevi gerçekleştirmek için şu değerleri yapılandırın: Parameter 1(input): user.employeeid, Value: "000", Parameter 2 (output): user.employeeidve Parameter 3 (output if there's no match): user.extensionattribute1.
StartWith() Giriş belirtilen değerle başlıyorsa bir öznitelik veya sabit verir. Aksi takdirde, eşleşme yoksa başka bir çıkış belirtebilirsiniz. Örneğin, ülke/bölge US ile başlıyorsa değeri kullanıcının çalışan kimliği olan bir talep oluşturmak istiyorsanız; aksi takdirde bir uzantı özniteliği çıkarmak istersiniz. Bu işlevi gerçekleştirmek için şu değerleri yapılandırın: Parameter 1(input): user.country, Value: "US", Parameter 2 (output): user.employeeidve Parameter 3 (output if there's no match): user.extensionattribute1
Extract() - Eşleştirmeden sonra Belirtilen değerle eşleşdikten sonra alt dizeyi döndürür. Örneğin, girişin değeri Finance_BSimonise eşleşen değer olur Finance_ve talebin çıktısı olur BSimon.
Extract() - Eşleştirmeden önce Belirtilen değerle eşleşene kadar alt dizeyi döndürür. Örneğin, girişin değeri BSimon_USise eşleşen değer olur _USve talebin çıktısı olur BSimon.
Extract() - Eşleştirme işlemleri arasında Belirtilen değerle eşleşene kadar alt dizeyi döndürür. Örneğin, girişin değeri ise Finance_BSimon_US, ilk eşleşen değer , Finance_ikinci eşleşen değer ise _US, talebin çıktısı olur BSimon.
ExtractAlpha() - Önek Dizenin alfabetik ön ek bölümünü döndürür. Örneğin, girişin değeri BSimon_123 ise BSimon döndürür.
ExtractAlpha() - Sonek Dizenin son alfabetik bölümünü döndürür. Örneğin, girişin değeri 123_Simon ise, Simon döndürür.
ExtractNumeric() - Ön Ek Dizenin sayısal bölümünün ön ekini döndürür. Örneğin, girişin değeri 123_BSimon ise, 123 döndürür.
ExtractNumeric() - Sonek Dizenin sonek sayısal bölümünü döndürür. Örneğin, eğer girişin değeri BSimon_123 ise, 123 döndürür.
EğerBoş() Giriş null veya boşsa bir öznitelik veya sabit oluşturur. Örneğin, bir kullanıcının çalışan kimliği boşsa uzantı özniteliğinde depolanan bir özniteliğin çıktısını almak istiyorsanız. Bu işlevi gerçekleştirmek için şu değerleri yapılandırın: Parameter 1(input): user.employeeid, Parameter 2 (output): user.extensionattribute1ve Parameter 3 (output if there's no match): user.employeeid.
EğerBoşDeğilse() Giriş null veya boş değilse bir öznitelik veya sabit çıkışı oluşturur. Örneğin, bir kullanıcının çalışan kimliği boş değilse uzantı özniteliğinde depolanan bir özniteliğin çıktısını almak istiyorsanız. Bu işlevi gerçekleştirmek için aşağıdaki değerleri yapılandırın: Parameter 1(input): user.employeeid ve Parameter 2 (output): user.extensionattribute1.
Substring() - Sabit Uzunluk Dize talep türünün belirtilen konumdaki karakterden başlayarak bölümlerini ayıklar ve belirtilen karakter sayısını döndürür. sourceClaim, yürütülmesi gereken dönüşümün talep kaynağıdır. StartIndex, bu örnekteki bir alt dizenin sıfır tabanlı başlangıç karakteri konumudur. Length, alt dizenin karakter cinsinden uzunluğudur. Örneğin, sourceClaim - PleaseExtractThisNow, StartIndex - 6ve Length - 11 çıkışını ExtractThisüretir.
Substring() - EndOfString Belirtilen konumdaki karakterden başlayarak bir dize talep türünün bölümlerini ayıklar ve belirtilen başlangıç dizininden talebin geri kalanını döndürür. sourceClaim, yürütülmesi gereken dönüşümün talep kaynağıdır. StartIndex, bu örnekteki bir alt dizenin sıfır tabanlı başlangıç karakteri konumudur. Örneğin, sourceClaim - PleaseExtractThisNow ve StartIndex - 6, ExtractThisNow çıkışı oluşturur.
RegexDeğiştir() Regex tabanlı talep dönüştürme hakkında daha fazla bilgi için sonraki bölüme bakın.

Regex tabanlı talep dönüştürme

Talepleri dönüştürmek için normal ifadeleri kullanabilirsiniz. Regex tabanlı talep dönüştürmeleri kullanılırken en fazla 20 toplam regex değişimi yapılabilir.

Aşağıdaki görüntüde ilk dönüştürme düzeyinin bir örneği gösterilmektedir:

İlk dönüştürme düzeyinin ekran görüntüsü.

Aşağıdaki tabloda listelenen eylemler, ilk dönüştürme düzeyi hakkında bilgi sağlar ve önceki görüntüdeki etiketlere karşılık gelir. Talep dönüştürme panelini açmak için Düzenle'yi seçin.

Eylem Alan Açıklama
1 Transformation Dönüştürme seçeneklerinden RegexReplace() seçeneğini belirleyerek beyan dönüştürme için regex tabanlı talep dönüştürme yöntemini kullanın.
2 Parameter 1 Normal ifade dönüşümü için giriş. Örneğin, admin@fabrikam.com gibi bir kullanıcı e-posta adresine sahip olan user.mail.
3 Treat source as multivalued Bazı giriş kullanıcı öznitelikleri çok değerli kullanıcı öznitelikleri olabilir. Seçilen kullanıcı özniteliği birden çok değeri destekliyorsa ve kullanıcı dönüştürme için birden çok değer kullanmak istiyorsa, Kaynağı birden çok değerli olarak değerlendir'i seçmesi gerekir. Seçilirse, regex eşleşmesi için tüm değerler kullanılır, aksi takdirde yalnızca ilk değer kullanılır.
4 Regex pattern Parametre 1 olarak seçilen kullanıcı özniteliğinin değerine göre değerlendirilen normal ifade. Örneğin, kullanıcının e-posta adresinden kullanıcı diğer adını ayıklamak için normal bir ifade olarak (?'domain'^.*?)(?i)(\@fabrikam\.com)$temsil edilir.
5 Add additional parameter Dönüştürme için birden fazla kullanıcı özniteliği kullanılabilir. Daha sonra özniteliklerin değerleri regex dönüştürme çıkışıyla birleştirilir. En fazla beş parametre daha desteklenir.
6 Replacement pattern Değiştirme düzeni, regex sonucu için yer tutucular içeren metin şablonudur. Tüm grup adları {group-name} gibi küme ayraçlarının içine kapsanmalıdır. Yönetimin, kullanıcı diğer adını, örneğin xyz.com gibi başka bir etki alanı adıyla kullanmak ve ülke adını bununla birleştirmek istediğini varsayalım. Bu durumda, değiştirme deseni {country}.{domain}@xyz.comolur; burada {country} giriş parametresinin değeri ve {domain} normal ifade değerlendirmesinin grup çıktısı olur. Böyle bir durumda beklenen sonuç olur US.swmal@xyz.com.

Aşağıdaki görüntüde ikinci dönüştürme düzeyi örneği gösterilmektedir:

İkinci düzey talep dönüşümünün ekran görüntüsü.

Aşağıdaki tabloda, ikinci dönüştürme düzeyi hakkında bilgi sağlanmaktadır. Tabloda listelenen eylemler önceki görüntüdeki etiketlere karşılık gelir.

Eylem Alan Açıklama
1 Transformation Regex tabanlı talep dönüştürmeleri ilk dönüşümle sınırlı değildir ve ikinci düzey dönüştürme olarak da kullanılabilir. Diğer tüm dönüştürme yöntemleri ilk dönüştürme olarak kullanılabilir.
2 Parameter 1 RegexReplace() ikinci düzey dönüştürme olarak seçilirse, ikinci düzey dönüştürme için giriş olarak birinci düzey dönüşümün çıktısı kullanılır. Dönüşümü uygulamak için ikinci düzey regex ifadesi ilk dönüşümün çıkışıyla eşleşmelidir.
3 Regex pattern Regex deseni , ikinci düzey dönüştürme için normal ifadedir.
4 Parameter input İkinci düzey dönüştürmeler için kullanıcı özniteliği girişleri.
5 Parameter input Yöneticiler artık gerekli değilse seçili giriş parametresini silebilir.
6 Replacement pattern Değiştirme kalıbı, regex sonuç grubu adı, giriş parametresi grubu adı ve statik metin değeri için yer tutucular içeren bir metin şablonudur. Tüm grup adları, {group-name} gibi küme ayraçlarının içine alınmalıdır. Yönetimin, kullanıcı diğer adını başka bir alan adıyla birlikte kullanmak istediğini varsayalım, örneğin xyz.com ve ülke adını bu adla birleştirmek. Bu durumda, değiştirme deseni {country}.{domain}@xyz.comolur; burada {country} giriş parametresinin değeri ve {domain} normal ifade değerlendirmesinin grup çıktısıdır. Böyle bir durumda beklenen sonuç olur US.swmal@xyz.com.
7 Test transformation RegexReplace() dönüşümü yalnızca Parametre 1 için seçilen kullanıcı özniteliğinin değeri Regex deseni metin kutusunda sağlanan normal ifadeyle eşleşiyorsa değerlendirilir. Eşleşmedikleri takdirde, varsayılan talep değeri token'a eklenir. Normal ifadeyi giriş parametresi değerine göre doğrulamak için, dönüştürme panelinde bir test imkanı sunulmaktadır. Bu test deneyimi yalnızca sahte değerler üzerinde çalışır. Daha fazla giriş parametresi kullanıldığında, parametrenin adı gerçek değer yerine test sonucuna eklenir. Test bölümüne erişmek için Test dönüştürme'yi seçin.

Aşağıdaki görüntüde dönüştürmeleri test etme örneği gösterilmektedir:

Dönüşümü test etme işleminin ekran görüntüsü.

Aşağıdaki tabloda, dönüştürmeleri test etme hakkında bilgi sağlanmaktadır. Tabloda listelenen eylemler önceki görüntüdeki etiketlere karşılık gelir.

Eylem Alan Açıklama
1 Test transformation Test bölümünü gizlemek için kapat veya (X) düğmesini seçin ve panelde Test dönüştürme düğmesini tekrar görüntüleyin.
2 Test regex input Normal ifade testi değerlendirmesi için kullanılan girişi kabul eder. Regex tabanlı talep dönüştürmesinin ikinci düzey dönüştürme olarak yapılandırılması durumunda, ilk dönüşümün beklenen çıkışı olan bir değer sağlayın.
3 Run test Test regex girişi sağlandıktan ve Regex deseni, Değiştirme deseni ve Giriş parametreleri yapılandırıldıktan sonra, ifade Testi çalıştır seçilerek değerlendirilebilir.
4 Test transformation result Değerlendirme başarılı olursa, Test dönüştürme sonucu etiketi altında bir test dönüştürmesi çıktısı gösterilir.
5 Remove transformation İkinci düzey dönüştürme, Dönüşümü kaldır seçilerek kaldırılabilir.
6 Specify output if no match Normal ifadeyle eşleşmeyen Parametre 1'de bir regex giriş değeri yapılandırıldığında dönüştürme atlanır. Bu gibi durumlarda alternatif kullanıcı özniteliği yapılandırılabilir. Bu öznitelik, eşleşme yoksa çıktıyı belirtin seçeneğini işaretleyerek talep belirtecine eklenebilir.
7 Parameter 3 Eşleşme olmadığında alternatif bir kullanıcı özniteliği döndürülmesi gerekiyorsa ve Eşleşme yoksa çıkışı belirtin seçeneği işaretliyse, açılır menü kullanılarak alternatif bir kullanıcı özniteliği seçilebilir. Bu açılan menü Parametre 3 için mevcuttur (eşleşme yoksa çıkış olarak kullanılır).
8 Summary Bıçağın altında, dönüştürmenin basit bir metinle anlamını açıklayan biçimin özeti görüntülenir.
9 Add Dönüştürme yapılandırma ayarları doğrulandıktan sonra Ekle’yi seçerek bir talep politikasına kayıt edilebilir. Değişiklikleri kaydetmek için Talep Yönetimi sayfasındaki Kaydet seçeneğini seçin.

RegexReplace() dönüşümü, grup talepleri dönüşümleri için de kullanılabilir.

RegexReplace() dönüştürme doğrulamaları

Ekle veya Çalıştır testi seçildikten sonra aşağıdaki koşullar oluştuğunda, sorun hakkında daha fazla bilgi sağlayan bir ileti görüntülenir:

  • Yinelenen kullanıcı özniteliklerine sahip giriş parametrelerine izin verilmez.
  • Kullanılmayan giriş parametreleri bulundu. Tanımlı giriş parametreleri, Değiştirme modeli metninde uygun şekilde kullanılmalıdır.
  • Sağlanan test regex girişi, sağlanan normal ifadeyle eşleşmiyor.
  • Değiştirme düzenindeki grupların kaynağı bulunamadı.

SAML belirteçlerine UPN talebi ekleme

Talephttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn, SAML kısıtlanmış talep kümesinin bir parçasıdır. Özel imzalama anahtarınız yapılandırılmışsa, bunu Öznitelikler ve Talepler bölümünde ekleyebilirsiniz.

Yapılandırılmış özel imzalama anahtarı olmaması durumunda lütfen SAML Kısıtlı talep kümesine bakın. Azure portalındaki Uygulama kayıtları aracılığıyla isteğe bağlı talep olarak ekleyebilirsiniz.

Uygulamayı Uygulama kayıtları'nda açın, Belirteç yapılandırması'nı ve ardından İsteğe bağlı talep ekle'yi seçin. SAML belirteci türünü seçin, listeden upn öğesini seçin ve ardından belirteci eklemek için Ekle'ye tıklayın.

Öznitelikler ve Talepler bölümünde yapılan özelleştirme, Uygulama Kaydı'ndaki isteğe bağlı taleplerin üzerine yazabilir.

Şartlara göre iddialar yayınla

Beyanın kaynağını kullanıcı türü ve kullanıcının ait olduğu grup temelinde belirtebilirsiniz.

Kullanıcı türü:

  • Tümü - Tüm kullanıcıların uygulamaya erişmesine izin verilir.
  • Üyeler: Kiracının yerel üyesi
  • Tüm konuklar: Kullanıcı, Microsoft Entra Kimliği olan veya olmayan bir dış kuruluştan getirilir.
  • Microsoft Entra konukları: Konuk kullanıcı, Microsoft Entra Kimliğini kullanan başka bir kuruluşa aittir.
  • Dış konuklar: Konuk kullanıcı, Microsoft Entra Kimliği olmayan bir dış kuruluşa aittir.

Kullanıcı türünün yararlı olduğu senaryolardan biri, bir talebin kaynağının bir uygulamaya erişen konuk ve çalışan için farklı olmasıdır. Kullanıcı bir çalışansa NameID değerinin user.email kaynaklandığını belirtebilirsiniz. Kullanıcı bir konuksa, NameID user.extensionattribute1 kaynağından alınır.

Talep koşulu eklemek için:

  1. Talebi yönet bölümünde Talep koşullarını genişletin.
  2. Kullanıcı türünü seçin.
  3. Kullanıcının ait olması gereken grupları seçin. Belirli bir uygulama için tüm taleplerde en fazla 50 benzersiz grup seçebilirsiniz.
  4. Talebin değerini alacağı Kaynağı seçin. Kaynak özniteliğin açılan listesinden bir kullanıcı özniteliği seçebilir veya kullanıcı özniteliğine bir dönüştürme uygulayabilirsiniz. Ayrıca, bir dizin şeması uzantısını talep biçiminde yayımlamadan önce seçebilirsiniz.

Koşulları eklediğiniz sıra önemlidir. Microsoft Entra, önce kaynak Attribute ile tüm koşulları değerlendirir, ardından talepte hangi değerin yayımlanacağına karar vermek için kaynak Transformation ile tüm koşulları değerlendirir. Aynı kaynağa sahip koşullar yukarıdan aşağıya doğru değerlendirilir. İfade ile eşleşen son değer istek içinde yayımlanır. IsNotEmpty ve Contains gibi dönüşümler kısıtlamalar gibi davranır.

Örneğin, Britta Simon Contoso kiracısında bir konuk kullanıcıdır. Britta, Microsoft Entra Id kullanan başka bir kuruluşa aittir. Fabrikam uygulaması için aşağıdaki yapılandırma göz önüne alındığında, Britta Fabrikam'da oturum açmaya çalıştığında, Microsoft kimlik platformu koşulları değerlendirir.

İlk olarak, Microsoft kimlik platformu Britta'nın kullanıcı türünün Tüm konuklar olup olmadığını doğrular. Tür tüm konuklar olduğundan, Microsoft kimlik platformu talebin kaynağını user.extensionattribute1 olarak atar. İkincisi, Microsoft kimlik platformu Britta'nın kullanıcı türünün Microsoft Entra konukları olup olmadığını doğrular. Tür tüm konuklar olduğundan, Microsoft kimlik platformu talebin kaynağını user.mail olarak atar. Son olarak, talep Britta için değeriyle user.mail birlikte yayılır.

Başka bir örnek olarak, Britta Simon'ın ne zaman oturum açmaya çalıştığını ve aşağıdaki yapılandırmanın kullanıldığını düşünün. Tüm koşullar ilk olarak kaynağıyla Attributedeğerlendirilir. Britta'nın kullanıcı türü Microsoft Entra konukları olduğundan, user.mail talep için kaynak olarak atanır. Ardından dönüşümler değerlendirilir. Britta bir konuk olduğundan, user.extensionattribute1 artık talebin yeni kaynağıdır. Britta Microsoft Entra misafir kullanıcılar arasında olduğundan, user.othermail artık bu talebin kaynağıdır. Son olarak, Britta için talep user.othermail değeriyle yayımlanır.

Son bir örnek olarak, Britta yapılandırılmamışsa user.othermail veya boşsa neler olduğuna bakın. Her iki durumda da koşul girdisi göz ardı edilir ve talep user.extensionattribute1'ye geri döner ve varsayılan durum olarak ayarlanır.

Gelişmiş SAML talep seçenekleri

Gelişmiş talep yapılandırma seçenekleri, SAML2.0 uygulamaları için talebin OIDC belirteçlerine ve OIDC talebinin SAML2.0 yanıt belirteçlerine uyacak şekilde yapılandırılabilir; bu, aynı talebi hem SAML2.0 hem de OIDC yanıt belirteçleri için kullanmayı planlayan uygulamalara olanak tanır.

Gelişmiş talep seçenekleri, Talepleri yönet dikey penceresindeki Gelişmiş SAML Talep Seçenekleri altındaki kutu işaretlenerek yapılandırılabilir.

Aşağıdaki tabloda, bir uygulama için yapılandırılabilir diğer gelişmiş seçenekler listelenmiştir.

Seçenek Açıklama
Verene uygulama kimliği ekleme Uygulama kimliğini veren talebine otomatik olarak ekler. Bu seçenek, aynı uygulamanın birden çok örneği olduğunda her örnek için benzersiz bir talep değeri sağlar. Uygulama için özel bir imzalama anahtarı yapılandırılmadıysa bu ayar yoksayılır.
hedef kitle iddiası geçersiz kılın Uygulamaya gönderilen hedef kitle talebi geçersiz kılınmasına izin verir. Sağlanan değer geçerli bir mutlak URI olmalıdır. Uygulama için özel bir imzalama anahtarı yapılandırılmadıysa bu ayar yoksayılır.
Öznitelik adı biçimini ekle Seçilirse, Microsoft Entra ID adın biçimini uygulama için kısıtlanmış, çekirdek ve isteğe bağlı talepleri açıklayan adlı NameFormat bir öznitelik ekler. Daha fazla bilgi için bkz. Talep eşleme ilkesi türü