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 belirteçleri, talep olarak bilinen kullanıcı hakkında bilgi parçaları 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 belirtecinde uygulamaya verilen talepleri görüntülemek veya düzenlemek için:
- Microsoft Entra yönetim merkezinde en az Bulut Uygulaması Yönetici istrator olarak oturum açın.
- Kimlik>Uygulamaları>Kurumsal uygulamaları>Tüm uygulamalar'a göz atın.
- Uygulamayı seçin, sol taraftaki menüden Çoklu oturum açma'yı ve ardından Öznitelikler ve Talepler bölümünde Düzenle'yiseçin.
SAML belirtecinde verilen talepleri aşağıdaki nedenlerle düzenlemeniz gerekebilir:
- Uygulama, veya
nameID
talebi içinNameIdentifier
kullanıcı adı (veya kullanıcı asıl adı) dışında bir şey olmasını gerektirir. - Uygulama farklı beyan URI'leri veya beyan değerleri kümesi gerektirecek şekilde yazıldı.
NameID'yi düzenle
Ad tanımlayıcısı değer talebi düzenlemek için:
- Ad tanımlayıcı değeri sayfasını açın.
- Ö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 için NameIDPolicy
bir öğesi içermiyorsa, Microsoft kimlik platformu belirttiğiniz biçimle öğesini nameID
dağıtır. Biçim belirtilmezse, Microsoft kimlik platformu seçilen talep kaynağıyla ilişkili varsayılan kaynak biçimini kullanır. Bir dönüştürme null veya geçersiz bir değerle sonuçlanırsa, Microsoft Entra Kimliği içinde nameID
kalıcı bir çift tabanlı 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 nameID kullanırPersistent . |
E-posta adresi | Microsoft kimlik platformu biçimi olarak nameID kullanırEmailAddress . |
Belirtilme -miş | Microsoft kimlik platformu biçimi olarak nameID kullanırUnspecified . |
Windows etki alanı tam adı | Microsoft kimlik platformu biçimini kullanırWindowsDomainQualifiedName . |
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
Bahşiş
Bu makaledeki adımlar, başladığınız portala göre biraz değişiklik gösterebilir.
(veya nameID
) talebi için NameIdentifier
istenen kaynağı seçin. Aşağıdaki tabloda yer alan seçenekler arasından seçim yapabilirsiniz.
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 Bağlan Sync kullanılarak şirket içi Active Directory'dan 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:
- Öznitelikler ve Talepler dikey penceresinde, değiştirmek istediğiniz gerekli talebi seçin.
- 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ı (Önizleme)
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:
- Öznitelikler ve Talepler dikey penceresinde Yeni talep ekle'yi seçin veya var olan bir talebi düzenleyin.
- Uzantı özelliğinin tanımlandığı uygulama seçiciden kaynak uygulamayı seçin.
- Seçimi taleplere eklemek için Ekle'yi seçin.
- 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, yerine "joe_smith" joe_smith@contoso.com). |
ToLower() | Seçili özniteliğin karakterlerini küçük harflere dönüştürür. |
ToUpper() | 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:
- Öznitelikler ve Talepler dikey penceresinde Yeni talep ekle'yi seçerek Kullanıcı beyanlarını yönet sayfasını açın.
- 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.
- Talebin değerini alacağı Kaynağı seçin. Kaynak öznitelik açılan listesinden bir kullanıcı özniteliği seçebilir veya bunu talep olarak yaymadan önce kullanıcı özniteliğine dönüştürme uygulayabilirsiniz.
Talep dönüştürmeleri
Kullanıcı özniteliğine dönüştürme uygulamak için:
- 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.
- Dönüştürme açılan listesinden 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.
- Uygun radyo düğmesine tıklayarak özniteliğin kaynağını seçin. Dizin şeması uzantısı kaynağı şu anda önizleme aşamasındadır.
- Açılan listeden öznitelik adını seçin.
- 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
. - 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 öğesinin e-posta ön ekini
user.mail
ayıklayabilirsiniz. Ardından dizeyi büyük harf 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ı asıl 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 . |
Join() | İ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 joe_smith@contoso.com girişi, ayırıcı @ ise ve parametresi ise fabrikam.com , bu giriş bileşimi ile joe_smith@fabrikam.com sonuçlanır. |
ToLowercase() | Seçili özniteliğin karakterlerini küçük harflere dönüştürür. |
ToUppercase() | Seçili özniteliğin karakterlerini büyük harf karakterlere dönüştürür. |
Contains() | 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 yaymak istiyorsanız, aksi takdirde kullanıcı asıl adını çıkarmak 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.email ve 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 ile 000 bitiyorsa değerin kullanıcının çalışan kimliği olduğu bir talep yaymak 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.employeeid ve 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 ile US başlıyorsa, değerin kullanıcının çalışan kimliği olduğu bir talep yaymak 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.employeeid ve 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_BSimon ise 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_US ise eşleşen değer olur _US ve talebin çıktısı olur BSimon . |
Extract() - Eşleştirme 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() - Ön Ek | Dizenin alfabetik ön ek bölümünü döndürür. Örneğin, girişin değeri ise BSimon_123 döndürür BSimon . |
ExtractAlpha() - Sonek | Dizenin alfabetik bölümünü döndürür. Örneğin, girişin değeri ise 123_Simon döndürür Simon . |
ExtractNumeric() - Ön Ek | Dizenin sayısal bölümünün ön ekini döndürür. Örneğin, girişin değeri ise 123_BSimon döndürür 123 . |
ExtractNumeric() - Sonek | Dizenin sonek sayısal bölümünü döndürür. Örneğin, girişin değeri ise BSimon_123 döndürür 123 . |
IfEmpty() | 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.extensionattribute1 ve Parameter 3 (output if there's no match): user.employeeid . |
IfNotEmpty() | 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 (Önizleme) | 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 - 6 ve Length - 11 çıkışını ExtractThis üretir. |
Substring() - EndOfString (Önizleme) | 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 ve sourceClaim - PleaseExtractThisNow StartIndex - 6 çıkışını ExtractThisNow oluşturur. |
RegexReplace() (Önizleme) | 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
Aşağıdaki görüntüde ilk dönüştürme düzeyinin bir örneği gösterilmektedir:
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 dikey penceresini 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, gibi admin@fabrikam.com bir kullanıcı e-posta adresi 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ı gibi {group-name} küme ayraçlarının içine sarmalanmalıdır. Yönetimin kullanıcı diğer adını başka bir etki alanı adıyla kullanmak istediğini varsayalım; örneğin xyz.com , ülke adını bu adla birleştirin. Bu durumda, değiştirme deseni {country}.{domain}@xyz.com olur; 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:
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önetici istrator'lar, artık ihtiyaç duymamaları durumunda seçili giriş parametresini silebilir. |
6 |
Replacement pattern |
Değiştirme düzeni, regex sonuç grubu adı, giriş parametre grubu adı ve statik metin değeri için yer tutucular içeren metin şablonudur. Tüm grup adları gibi {group-name} küme ayraçlarının içine sarmalanmalıdır. Yönetimin kullanıcı diğer adını başka bir etki alanı adıyla kullanmak istediğini varsayalım; örneğin xyz.com , ülke adını bu adla birleştirin. Bu durumda, değiştirme deseni {country}.{domain}@xyz.com olur; 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şmiyorsa, varsayılan talep değeri belirteci eklenir. Normal ifadeyi giriş parametresi değerine göre doğrulamak için, dönüştürme dikey penceresinde bir test deneyimi sağlanı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:
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 dikey pencerede Test dönüştürme düğmesini yeniden işleyebilirsiniz. |
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 etiketine karşı bir test dönüştürmesi çıkışı işlenir. |
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 işaretliyse , açılan liste kullanılarak alternatif bir kullanıcı özniteliği seçilebilir. Bu açılan menü Parametre 3'e göre kullanılabilir (eşleşme yoksa çıkış). |
8 |
Summary |
Dikey pencerenin en altında, dönüştürmenin basit metindeki anlamını açıklayan biçimin tam özeti görüntülenir. |
9 |
Add |
Dönüştürmenin yapılandırma ayarları doğrulandıktan sonra, Ekle'yi seçerek bir talep ilkesine kaydedilebilir. Değişiklikleri kaydetmek için Talebi Yönet dikey penceresinde Kaydet'i 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 deseni metninde ilgili kullanıma sahip olmalı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ı talepolarak ekleyebilirsiniz.
Uygulamayı Uygulama kayıtları 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.
Talepleri koşullara göre yayma
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:
- Talebi yönet bölümünde Talep koşullarını genişletin.
- Kullanıcı türünü seçin.
- 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.
- 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ı (önizleme) talep olarak yaymadan önce de seçebilirsiniz.
Koşulları eklediğiniz sıra önemlidir. Microsoft Entra ilk olarak tüm koşulları kaynakla Attribute
değerlendirir ve ardından talepte hangi değerin yayıldığı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. İfadeyle eşleşen son değer talepte yayılır. gibi IsNotEmpty
dönüştürmeler ve Contains
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ı adresine user.extensionattribute1
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ı adresine user.mail
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 Attribute
değ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 konuklarında olduğundan, user.othermail
bu talebin kaynağı artık budur. Son olarak, talep Britta için değeriyle user.othermail
birlikte yayılır.
Son örnek olarak, Britta yapılandırılmamışsa user.othermail
veya boşsa ne olacağını göz önünde bulundurun. Her iki durumda da koşul girişi yoksayılır ve talep yerine geri user.extensionattribute1
döner.
Gelişmiş SAML talep seçenekleri
Gelişmiş talep seçenekleri, SAML2.0 uygulamaları için aynı talebi OIDC belirteçlerine, hem SAML2.0 hem de OIDC yanıt belirteçleri için aynı talebi kullanmayı planlayan uygulamalar için de tam tersi olacak şekilde yapılandırılabilir.
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 talebi 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ü |