Erişim belirteci talep başvurusu

Erişim belirteçleri JSON web belirteçleridir (JWT). JWT'ler aşağıdaki parçaları içerir:

  • Üst bilgi - Belirtecin türü ve imzalama yöntemi hakkındaki bilgiler de dahil olmak üzere belirteci doğrulama hakkında bilgi sağlar.
  • Payload - Hizmeti çağırmaya çalışan kullanıcı veya uygulama hakkındaki tüm önemli verileri içerir.
  • İmza - Belirteci doğrulamak için kullanılan ham maddedir.

Her parça bir nokta (.) ile ayrılır ve ayrı olarak Temel 64 kodlanır.

Talepler yalnızca onu dolduracak bir değer varsa mevcuttur. Bir uygulama, mevcut bir talebin bağımlılığını almamalıdır. Örnekler arasında pwd_exp (her kiracı parolaların süresinin dolmasını gerektirmez) ve family_name (istemci kimlik bilgisi akışları adları olmayan uygulamalar adına yapılır). Erişim belirteci her zaman erişim değerlendirmesi için yeterli talepler içerir.

Microsoft kimlik platformu, yeniden kullanım için belirteçlerin güvenliğini sağlamaya yardımcı olmak için bazı talepler kullanır. açıklaması Opaque , bu talepleri genel tüketim için değil olarak işaretler. Bu talepler belirteçte görünebilir veya görünmeyebilir ve bildirimde bulunmaksızın yenileri eklenebilir.

Üst bilgi talepleri

Talep Biçimlendir Açıklama
typ Dize - her zaman JWT Belirtecin bir JWT olduğunu gösterir.
alg String Belirteci imzalamak için kullanılan algoritmayı gösterir, örneğin, RS256.
kid String Belirtecin imzasını doğrulamak için kullanılan ortak anahtarın parmak izini belirtir. Hem v1.0 hem de v2.0 erişim belirteçlerinde yayılan.
x5t String ile aynı (kullanımda ve değerde) kidçalışır. x5t ve yalnızca uyumluluk amacıyla v1.0 erişim belirteçlerinde yayılan eski bir taleptir.

Yük talepleri

Talep Biçimlendir Açıklama Yetkilendirmeyle ilgili dikkat edilmesi gerekenler
acrs Dizelerin JSON dizisi Taşıyıcının gerçekleştirmeye uygun olduğu işlemlerin Kimlik Doğrulama Bağlam kimliklerini gösterir. Kimlik Doğrulama Bağlam Kimlikleri, uygulamanızın ve hizmetlerinizin içinden adım adım kimlik doğrulaması talebini tetikleme amacıyla kullanılabilir. Genellikle taleple xms_cc birlikte kullanılır.
aud Dize, Uygulama Kimliği URI'si veya GUID Belirtecin hedef kitlesini tanımlar. v2.0 belirteçlerinde bu değer her zaman API'nin istemci kimliğidir. v1.0 belirteçlerinde istemci kimliği veya istekte kullanılan kaynak URI'si olabilir. Değer, istemcinin belirteci nasıl istediğine bağlı olabilir. Bu değer doğrulanmalıdır, değer hedeflenen hedef kitleyle eşleşmiyorsa belirteci reddedin.
iss Dize, güvenlik belirteci hizmeti (STS) URI'si Belirteci oluşturan ve döndüren STS'yi ve kimliği doğrulanmış kullanıcının Microsoft Entra kiracısını tanımlar. Verilen belirteç bir v2.0 belirteciyse (talebine ver bakın), URI ile /v2.0biter. Kullanıcının bir Microsoft hesabından bir tüketici kullanıcısı olduğunu gösteren GUID değeridir 9188040d-6c67-4c5b-b112-36a304b66dad. Uygulama, varsa uygulamada oturum açabilen kiracı kümesini kısıtlamak için talebin GUID bölümünü kullanabilir.
idp Dize, genellikle bir STS URI'si Belirtecin öznesinin kimliğini doğrulayan kimlik sağlayıcısını kaydeder. Bu değer, kullanıcı hesabı, konuklar gibi verenle aynı kiracıda olmadığı sürece Veren talebi değeriyle aynıdır. Talep yoksa değerini iss kullanın. Kuruluş bağlamında kullanılan kişisel hesaplar için (örneğin, Microsoft Entra kiracısına davet edilen kişisel bir hesap), idp talep 'live.com' veya Microsoft hesabı kiracısını 9188040d-6c67-4c5b-b112-36a304b66dadiçeren bir STS URI'si olabilir.
iat int, unix zaman damgası Bu belirtecin kimlik doğrulamasının ne zaman gerçekleştiğini belirtir.
nbf int, unix zaman damgası JWT'nin işlenebileceği süreyi belirtir.
exp int, unix zaman damgası JWT'nin işlenmek üzere kabul edilebileceği süre sonunu belirtir. Bir kaynak, belirteci bu süreden önce de reddedebilir. Reddetme, kimlik doğrulamasında gerekli bir değişiklik veya belirteç iptal edildiğinde oluşabilir.
aio Opak Dize Microsoft Entra Id tarafından belirteç yeniden kullanımı için verileri kaydetmek için kullanılan iç talep. Kaynaklar bu talebi kullanmamalıdır.
acr Dize, veya 01yalnızca v1.0 belirteçlerinde bulunur "Kimlik doğrulama bağlam sınıfı" talebi değeri 0 , son kullanıcı kimlik doğrulamasının ISO/IEC 29115 gereksinimlerini karşılamadığını gösterir.
amr Dizelerin JSON dizisi, yalnızca v1.0 belirteçlerinde bulunur Belirtecin konusunun kimlik doğrulama yöntemini tanımlar.
appid Dize, GUID, yalnızca v1.0 belirteçlerinde bulunur Belirteci kullanan istemcinin uygulama kimliği. Uygulama kendisi veya bir kullanıcı adına hareket edebilir. Uygulama kimliği genellikle bir uygulama nesnesini temsil eder, ancak Microsoft Entra Id'de bir hizmet sorumlusu nesnesini de temsil edebilir. appid yetkilendirme kararlarında kullanılabilir.
azp Dize, GUID, yalnızca v2.0 belirteçlerinde bulunur yerine appid. Belirteci kullanan istemcinin uygulama kimliği. Uygulama kendisi veya bir kullanıcı adına hareket edebilir. Uygulama kimliği genellikle bir uygulama nesnesini temsil eder, ancak Microsoft Entra Id'de bir hizmet sorumlusu nesnesini de temsil edebilir. azp yetkilendirme kararlarında kullanılabilir.
appidacr Dize, bir 0, 1veya 2, yalnızca v1.0 belirteçlerinde bulunur İstemcinin kimlik doğrulama yöntemini gösterir. Genel istemci için değeridir 0. İstemci kimliğini ve istemci gizli anahtarını kullandığınızda, değeri şeklindedir 1. Kimlik doğrulaması için bir istemci sertifikası kullandığınızda, değeri şeklindedir 2.
azpacr Dize, bir 0, 1veya 2yalnızca v2.0 belirteçlerinde bulunur yerine appidacr. İstemcinin kimlik doğrulama yöntemini gösterir. Genel istemci için değeridir 0. İstemci kimliğini ve istemci gizli anahtarını kullandığınızda, değeri şeklindedir 1. Kimlik doğrulaması için bir istemci sertifikası kullandığınızda, değeri şeklindedir 2.
preferred_username Dize, yalnızca v2.0 belirteçlerinde bulunur. Kullanıcıyı temsil eden birincil kullanıcı adı. Değer bir e-posta adresi, telefon numarası veya belirtilen biçime sahip olmayan genel bir kullanıcı adı olabilir. Kullanıcı adı ipuçları ve kullanıcı tarafından okunabilir kullanıcı arabiriminde kullanıcı adı olarak değerini kullanın. Bu talebi almak için kapsamı kullanın profile . Bu değer değişebilir olduğundan yetkilendirme kararları almak için kullanmayın.
name String Belirtecin konusunu tanımlayan, insan tarafından okunabilir bir değer sağlar. Değer değişebilir, değişebilir ve yalnızca görüntüleme amaçlıdır. Bu talebi almak için kapsamı kullanın profile . Yetkilendirme kararları almak için bu değeri kullanmayın.
scp Dize, boşlukla ayrılmış kapsam listesi İstemci uygulamasının onay istediği (ve aldığı) uygulama tarafından kullanıma sunulan kapsam kümesi. Yalnızca kullanıcı belirteçleri için eklenir. Uygulama, bu kapsamların uygulama tarafından kullanıma sunulan geçerli kapsamlar olduğunu doğrulamalı ve bu kapsamların değerine göre yetkilendirme kararları vermelidir.
roles Dize dizisi, izin listesi İstekte bulunan uygulamaya veya kullanıcıya çağırma izninin verildiği uygulama tarafından kullanıma sunulan izin kümesi. İstemci kimlik bilgisi akışı, uygulama belirteçleri için kullanıcı kapsamları yerine bu izin kümesini kullanır. Kullanıcı belirteçleri için bu değer kümesi, hedef uygulamada kullanıcının atanmış rollerini içerir. Bu değerler, kaynağa erişmek için yetkilendirme zorunlu kılma gibi erişimi yönetmek için kullanılabilir.
wids RoleTemplateID GUID dizisi Microsoft Entra yerleşik rollerinde mevcut olan rollerin bölümünden bu kullanıcıya atanan kiracı genelindeki rolleri belirtir. groupMembershipClaims Uygulama bildiriminin özelliği, bu talebi uygulama başına temelinde yapılandırır. Talebi veya DirectoryRoleolarak All ayarlayın. Belirteç uzunluğuyla ilgili endişelerden dolayı örtük akış aracılığıyla elde edilen belirteçlerde bulunamayabilir. Bu değerler, kaynağa erişmek için yetkilendirme zorunlu kılma gibi erişimi yönetmek için kullanılabilir.
groups GUID'lerin JSON dizisi Konunun grup üyeliklerini temsil eden nesne kimlikleri sağlar. groupMembershipClaims Uygulama bildiriminin özelliği, grup talebi uygulama başına temelinde yapılandırır. değeri null tüm grupları dışlar, değeri SecurityGroup dizin rollerini ve Active Directory Güvenlik Grubu üyeliklerini içerir ve değeri All hem Güvenlik Gruplarını hem de Microsoft 365 Dağıtım Listelerini içerir.

hasgroups Örtük verme ile talebi kullanma groups hakkında ayrıntılı bilgi için talebi inceleyin. Diğer akışlar için, kullanıcının içinde yer alan grup sayısı SAML için 150'den, JWT için 200'den fazlaysa, Microsoft Entra ID talep kaynaklarına fazla kullanım talebi ekler. Beyan kaynakları kullanıcının grup listesini içeren Microsoft Graph uç noktasına işaret eder.
Bu değerler, kaynağa erişmek için yetkilendirme zorunlu kılma gibi erişimi yönetmek için kullanılabilir.
hasgroups Boolean Varsa, her zaman true, kullanıcının en az bir grupta olup olmadığını gösterir. Tam grup talebi URI parçasını URL uzunluk sınırlarının (şu anda altı veya daha fazla grup) ötesine genişletiyorsa örtük verme akışlarında JWT'ler için talep yerine groups kullanılır. İstemcinin, kullanıcının gruplarını (https://graph.microsoft.com/v1.0/users/{userID}/getMemberObjects) belirlemek için Microsoft Graph API'sini kullanması gerektiğini gösterir.
groups:src1 JSON nesnesi Belirteç istekleri belirteç için çok büyük olduğunda kullanıcının tam gruplar listesine bir bağlantı içerir. Dağıtılmış talep olarak JWT'ler için, talep yerine groups yeni bir talep olarak SAML için.

Örnek JWT Değeri:
"groups":"src1"
"_claim_sources: "src1" : { "endpoint" : "https://graph.microsoft.com/v1.0/users/{userID}/getMemberObjects" }
sub String Belirteçle ilişkili sorumlu. Örneğin, bir uygulamanın kullanıcısı. Bu değer sabittir, yeniden atama veya yeniden kullanma. Konu, belirli bir uygulama kimliği için benzersiz olan çift tabanlı bir tanımlayıcıdır. Tek bir kullanıcı iki farklı istemci kimliği kullanarak iki farklı uygulamada oturum açarsa, bu uygulamalar konu talebi için iki farklı değer alır. İki farklı değerin kullanılması mimariye ve gizlilik gereksinimlerine bağlıdır. Ayrıca kiracı içindeki oid uygulamalar arasında aynı kalan talepe de bakın. Bu değer, belirtecin bir kaynağa erişmek için ne zaman kullanıldığı gibi yetkilendirme denetimleri gerçekleştirmek için kullanılabilir ve veritabanı tablolarında anahtar olarak kullanılabilir.
oid Dize, GUID kullanıcının veya hizmet sorumlusunun doğrulanmış kimliği olan istek sahibinin sabit tanımlayıcısı. Bu kimlik, istek sahibini uygulamalar arasında benzersiz olarak tanımlar. Aynı kullanıcıda oturum açmış iki farklı uygulama, talepte oid aynı değeri alır. oid, Microsoft Graph gibi Microsoft çevrimiçi hizmetler sorgular yaparken kullanılabilir. Microsoft Graph, bu kimliği belirli bir kullanıcı hesabının özelliği olarak id döndürür. oid birden çok uygulamanın sorumluları ilişkilendirmesine izin verdiğinden, kullanıcılar için bu talebi almak için kapsamı kullanırprofile. Birden çok kiracıda tek bir kullanıcı varsa, kullanıcı her kiracıda farklı bir nesne kimliği içerir. Kullanıcı her hesapta aynı kimlik bilgileriyle oturum açtığında, hesaplar farklıdır. Bu değer, belirtecin bir kaynağa erişmek için ne zaman kullanıldığı gibi yetkilendirme denetimleri gerçekleştirmek için kullanılabilir ve veritabanı tablolarında anahtar olarak kullanılabilir.
tid Dize, GUID Kullanıcının oturum açmakta olduğu kiracıyı temsil eder. İş ve okul hesapları için GUID, kullanıcının oturum açmakta olduğu kuruluşun sabit kiracı kimliğidir. Kişisel Microsoft hesabı kiracısında (Xbox, Yaşam için Teams veya Outlook gibi hizmetler) oturum açma işlemleri için değeri şeklindedir 9188040d-6c67-4c5b-b112-36a304b66dad. Bu talebi almak için uygulamanın kapsamı istemesi profile gerekir. Bu değer, yetkilendirme kararlarındaki diğer taleplerle birlikte değerlendirilmelidir.
unique_name Dize, yalnızca v1.0 belirteçlerinde bulunur Belirtecin konusunu tanımlayan ve okunabilir bir değer sunar. Bu değer bir kiracı içinde farklı olabilir ve yalnızca görüntüleme amacıyla kullanılabilir.
uti String JWT belirtimindeki ile jti eşdeğer belirteç tanımlayıcısı talebi. Büyük/küçük harfe duyarlı benzersiz, belirteç başına tanımlayıcı.
rh Opak Dize Azure tarafından belirteçleri yeniden doğrulama amacıyla kullanılan iç talep. Kaynaklar bu talebi kullanmamalıdır.
ver Dize, 1.0 veya 2.0 Erişim belirtecinin sürümünü gösterir.
xms_cc Dizelerin JSON dizisi Belirteci alan istemci uygulamasının talep sınamalarını işleyip işleyemeyeceğini gösterir. Genellikle talep acrsile birlikte kullanılır. Bu talep, Koşullu Erişim ve Sürekli Erişim Değerlendirme senaryolarında yaygın olarak kullanılır. Belirtecin verildiği kaynak sunucusu veya hizmet uygulaması, belirteçte bu talebin varlığını denetler. Erişim belirtecindeki değeri cp1 , bir istemci uygulamasının talep sınamasını işleyebilme becerisini belirlemenin yetkili yoludur. Daha fazla bilgi için bkz . Talep sınamaları, talep istekleri ve istemci özellikleri.

Grup fazla kullanım talebi

Microsoft Entra Id, HTTP üst bilgisinin boyut sınırı içinde kalmak için talep edilen gruplara dahil edilen nesne kimliklerinin sayısını sınırlar. Bir kullanıcı fazla kullanım sınırından daha fazla grubun üyesiyse (SAML belirteçleri için 150, JWT belirteçleri için 200 ve örtük akış kullanılarak verilirse yalnızca 6), Microsoft Entra Id belirteçte grup talebi yaymaz. Bunun yerine, belirteçte kullanıcının grup üyeliğini almak için Microsoft Graph API'sini sorgulamak için uygulamaya işaret eden bir fazla kullanım talebi içerir.

{
    ...
    "_claim_names": {
        "groups": "src1"
    },
    "_claim_sources": {
        "src1": {
            "endpoint": "[Url to get this user's group membership from]"
        }   
    }
    ...
}

BulkCreateGroups.ps1 Fazla kullanım senaryolarının testine yardımcı olması için Uygulama Oluşturma Betikleri klasöründe sağlanan öğesini kullanın.

Not

Döndürülen URL bir Azure AD Graph URL'si (graph.windows.net) olacaktır. Hizmetler, bu URL'ye güvenmek yerine, grupların idtyp tam listesini sorgulamak üzere bir Microsoft Graph URL'si oluşturmak için isteğe bağlı talebi (belirtecin bir uygulama mı yoksa uygulama+kullanıcı belirteci mi olduğunu belirler) kullanmalıdır.

v1.0 temel talepleri

v1.0 belirteçleri varsa aşağıdaki talepleri içerir, ancak varsayılan olarak v2.0 belirteçlerini içermez. Uygulama, v2.0 için bu talepleri kullanmak için isteğe bağlı talepleri kullanarak talep eder.

Talep Biçimlendir Açıklama
ipaddr String Kullanıcının kimliği doğrulanan IP adresi.
onprem_sid Dize, SID biçiminde Kullanıcının şirket içi kimlik doğrulamasına sahip olduğu durumlarda, bu talep SID'sini sağlar. Eski uygulamalarda yetkilendirme için bu talebi kullanın.
pwd_exp int, unix zaman damgası Kullanıcının parolasının süresinin ne zaman dolduğunda gösterir.
pwd_url String Kullanıcıların parolalarını sıfırlayabileceğiniz bir URL.
in_corp boolean İstemcinin şirket ağından oturum açmış olup olmadığını bildirir.
nickname String Kullanıcı için ad veya soyadından ayrı başka bir ad.
family_name String Kullanıcı nesnesinde tanımlandığı gibi kullanıcının soyadını, soyadını veya aile adını sağlar.
given_name String Kullanıcı nesnesinde ayarlandığı gibi, kullanıcının adını veya verilen adını sağlar.
upn String Kullanıcının kullanıcı adı. Telefon numarası, e-posta adresi veya biçimlendirilmemiş bir dize olabilir. Yalnızca görüntüleme amacıyla kullanın ve yeniden kimlik doğrulama senaryolarında kullanıcı adı ipuçları sağlayın.

amr talebi

Kimlikler farklı yollarla kimlik doğrulaması yapabilir ve bu da uygulamayla ilgili olabilir. Talep amr , hem parola hem de Authenticator uygulaması kullanan bir kimlik doğrulaması için gibi ["mfa", "rsa", "pwd"]birden çok öğe içerebilen bir dizidir.

Value Açıklama
pwd Kullanıcının Microsoft parolası veya bir uygulamanın istemci gizli dizisi olan parola kimlik doğrulaması.
rsa Kimlik doğrulaması, örneğin Microsoft Authenticator uygulamasıyla bir RSA anahtarının kanıtını temel alır. Bu değer, kimlik doğrulamasında X509 sertifikasına sahip bir hizmetle otomatik olarak imzalanan bir JWT'nin kullanımını da gösterir.
otp E-posta veya kısa mesaj kullanarak tek seferlik geçiş kodu.
fed Federasyon kimlik doğrulaması onayını (JWT veya SAML gibi) kullanmayı gösterir.
wia Windows Tümleşik Kimlik Doğrulaması
mfa Çok faktörlü kimlik doğrulamasının kullanımını gösterir. Bu talep mevcut olduğunda diğer kimlik doğrulama yöntemlerini içerir.
ngcmfa ile eşdeğerdir mfa, bazı gelişmiş kimlik bilgileri türlerini sağlamak için kullanılır.
wiaormfa Kullanıcı kimlik doğrulaması için Windows veya MFA kimlik bilgilerini kullandı.
none Tamamlanmış kimlik doğrulaması olmadığını gösterir.

Sonraki adımlar

  • Microsoft Entra Id'de kullanılan erişim belirteçleri hakkında daha fazla bilgi edinin.