Kimlik doğrulaması ve yetkilendirme için Microsoft kimlik platformu kod örnekleri
Bu kod örnekleri, Microsoft kimlik platformu kimlik doğrulama kitaplıklarımızın kullanımını göstermek için Microsoft tarafından derlenir ve korunur. Yaygın kimlik doğrulama ve yetkilendirme senaryoları çeşitli uygulama türlerinde, geliştirme dillerinde ve çerçevelerde uygulanır.
- Kullanıcıları web uygulamalarında oturum açın ve korumalı web API'lerine yetkili erişim sağlayın.
- API işlemlerini gerçekleştirmek için erişim belirteci gerektirerek bir web API'sini koruyun.
Her kod örneği, projenin nasıl derlenip (varsa) örnek uygulamayı çalıştırmayı açıklayan bir README.md dosyası içerir. Koddaki açıklamalar, kimlik platformunu kullanarak kimlik doğrulaması ve yetkilendirme gerçekleştirmek için bu kitaplıkların uygulamada nasıl kullanıldığını anlamanıza yardımcı olur.
Örnekler ve kılavuzlar
Örnekleri uygulama türüne veya tercih ettiğiniz dile/çerçeveye göre sıralamak için sekmeleri kullanın.
Tek sayfalı uygulamalar
Bu örnekler, Microsoft kimlik platformu ile güvenli hale getirilen tek sayfalı bir uygulamanın nasıl yazılacağını gösterir. Bu örnekler MSAL.js çeşitlerinden birini kullanır.
Dil/ Platform |
Kod örnekleri GitHub'da |
Auth kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
React | • Oturum açma kullanıcıları | MSAL React | PKCE ile yetkilendirme kodu | Hızlı Başlangıç | Eğitim |
Angular | • Oturum açma kullanıcıları | MSAL Angular | PKCE ile yetkilendirme kodu | Hızlı Başlangıç | Öğretici |
JavaScript | • Oturum açma kullanıcıları • Microsoft Graph'ı arayın • Node.js web API'lerini çağırma • Azure Depolama ve App Service'e dağıtma |
MSAL.js | PKCE ile yetkilendirme kodu | Hızlı Başlangıç | |
Blazor WebAssembly | • Oturum açma kullanıcıları • Microsoft Graph'ı arayın • Azure Uygulaması Hizmetine dağıtma |
MSAL.js | PKCE ile yetkilendirme kodu | Hızlı Başlangıç |
Web uygulamaları
Aşağıdaki örneklerde, kullanıcılarda oturum açabilen web uygulamaları gösterilmektedir. Bazı örnekler, Microsoft Graph'ı çağıran uygulamayı veya kullanıcının kimliğiyle kendi web API'nizi de gösterir.
Web API'si
Aşağıdaki örneklerde, Microsoft kimlik platformu ile bir web API'sini koruma ve web API'sinden aşağı akış API'sini çağırma gösterilmektedir.
Dil/ Platform |
Kod örnekleri GitHub'da |
Auth kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
ASP.NET | • Microsoft Graph'ı arayın | MSAL.NET | Adına (OBO) | Hızlı Başlangıç | |
ASP.NET Core | • Microsoft kimlik platformu ile erişim denetimi (korumalı yollar) | MSAL.NET | Başkası Adına (OBO) | Hızlı Başlangıç | Eğitim |
Java | • Java Spring Boot web API'nizi Microsoft kimlik platformu ile koruyun | MSAL Java | Başkası Adına (OBO) | ||
Node.js | • Node.js web API'lerini koruma | MSAL Düğümü | Yetkilendirme taşıyıcısı |
Masaüstü
Aşağıdaki örneklerde, Microsoft Graph API'sine veya kullanıcı adına kendi web API'nize erişen genel istemci masaüstü uygulamaları gösterilmektedir. Web Authentication Manager (WAM) ile Masaüstü (Konsol) örneği dışında, tüm bu istemci uygulamaları Microsoft Kimlik Doğrulama Kitaplığı'nı (MSAL) kullanır.
Mobil
Aşağıdaki örneklerde Microsoft Graph API'sine erişen genel istemci mobil uygulamaları gösterilmektedir. Bu istemci uygulamaları Microsoft Kimlik Doğrulama Kitaplığı'nı (MSAL) kullanır.
Dil/ Platform |
Kod örnekleri GitHub'da |
Auth kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
.NET Core | • MAUI kullanarak Microsoft Graph'ı arayın • Komisyoncu ile MAUI kullanarak Microsoft Graph'ı çağırın |
MSAL.NET | PKCE ile yetkilendirme kodu | ||
iOS | • Microsoft Graph'ı yerel olarak çağır | MSAL iOS | PKCE ile yetkilendirme kodu | Hızlı Başlangıç | Eğitim |
Java | • Kullanıcılara oturum açtırın ve Microsoft Graph'a çağrı yapın | MSAL Android | PKCE ile yetkilendirme kodu | Hızlı Başlangıç | Eğitim |
Kotlin | • Kullanıcıların oturum açmasını sağlayın ve Microsoft Graph'ı çağırın | MSAL Android | PKCE ile yetkilendirme kodu | ||
Xamarin | • Kullanıcıların oturum açmasını sağlayın ve Microsoft Graph'ı çağırın • Aracı ile kullanıcılarla oturum açın ve Microsoft Graph'ı arayın |
MSAL.NET | PKCE ile yetkilendirme kodu |
Hizmet / daemon (arka planda çalışan)
Aşağıdaki örneklerde, Microsoft Graph API'sine kendi kimliğiyle (kullanıcı olmadan) erişen bir uygulama gösterilmektedir.
Dil/ Platform |
Kod örnekleri GitHub'da |
Doğrulama kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
.NET | • Korumalı web API'lerine erişen .NET konsol uygulaması • Microsoft kimlik platformu uç noktasını kullanan çok kiracılı yapı |
MSAL.NET | İstemci kimlik bilgileri verme | Hızlı Başlangıç | Eğitim Dersi |
.NET Core | • Microsoft Graph'ı arayın • Web API'lerini çağırma • MSGraph'ı çağırmak için yönetilen kimlik kullanma • API çağırmak için yönetilen kimlik kullanma • API'yi çağıran çalışan rolü |
Microsoft.Identity.Web | İstemci kimlik bilgileri verme | ||
Java | • Gizli Anahtar ile Microsoft Graph'ı çağırın • Sertifika ile Microsoft Graph'ı arayın |
MSAL Java | İstemci kimlik bilgileri verme | Hızlı Başlangıç | |
Node.js | • Microsoft Graph'ı gizli anahtarla çağırma | MSAL Düğümü | İstemci kimlik bilgileri verme | Hızlı Başlangıç | Eğitim |
Python | • Microsoft Graph'ı gizli anahtarla çağırma • Sertifikayla Microsoft Graph'ı arayın |
MSAL Python | İstemci kimlik bilgileri verme | Hızlı Başlangıç |
Tarayıcısız (Arayüzsüz)
Aşağıdaki örnekte, web tarayıcısı olmayan bir cihazda çalışan bir genel istemci uygulaması gösterilmektedir. Uygulama bir komut satırı aracı, Linux veya Mac üzerinde çalışan bir uygulama veya bir IoT uygulaması olabilir. Örnekte, başka bir cihazda (cep telefonu gibi) etkileşimli olarak oturum açan bir kullanıcı adına Microsoft Graph API'sine erişen bir uygulama bulunur. Bu istemci uygulaması Microsoft Kimlik Doğrulama Kitaplığı'nı (MSAL) kullanır.
Dil/ Platform |
Kod örnekleri GitHub'da |
Auth kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
.NET Core | • Korumalı API'leri yalnızca metin aygıtından çağırma | MSAL.NET | Cihaz kodu | ||
Java | • Kullanıcılar için oturum açın ve yalnızca metinle çalışan bir cihazdan korumalı API'yi çağırın | MSAL Java | Cihaz kodu | ||
Python | • Microsoft Graph'ı arayın | MSAL Python | Cihaz kodu |
Web API'leri olarak Azure İşlevleri
Aşağıdaki örneklerde HttpTrigger kullanarak Azure İşlevi'nin nasıl korunup Microsoft kimlik platformu ile bir web API'sinin kullanıma sunılması ve web API'sinden aşağı akış API'sinin nasıl çağrılmaya çalışılması gösterilmektedir.
Dil/ Platform |
Kod örnekleri GitHub'da |
Auth kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
Python | • Microsoft Entra Id ile güvenliği sağlanan Python Azure işlevi web API'si | MSAL Python | Yetki kodu |
Microsoft Teams uygulamaları
Aşağıdaki örnekte, kullanıcıların oturum açtığı Microsoft Teams Sekme uygulaması gösterilmektedir. Buna ek olarak, Microsoft Kimlik Doğrulama Kitaplığı 'nı (MSAL) kullanarak kullanıcının kimliğiyle Microsoft Graph API'sini çağırmayı gösterir.
Dil/ Platform |
Kod örnekleri GitHub'da |
Auth kitaplıklar |
Kimlik doğrulama akışı | Hızlı Başlangıç | Eğitim |
---|---|---|---|---|---|
Node.js | • Teams Sekme uygulaması: çoklu oturum açma (SSO) ve Microsoft Graph'ı çağırma | MSAL Düğümü | Adına (OBO) |
Multitenant SaaS
Uygulamanızın herhangi bir Microsoft Entra kiracısından oturum açmaları kabul edecek şekilde nasıl yapılandırılacağını aşağıdaki örnekler göstermektedir. Uygulamanızı çok kiracılı olacak şekilde yapılandırmak, birçok kuruluşa bir Hizmet Olarak Yazılım (SaaS) uygulaması sunabileceğiniz ve kullanıcılarının onay verdikten sonra uygulamanızda oturum açabilmesine olanak tanıyabileceğiniz anlamına gelir.
Dil/ Platform |
Kod örnekleri GitHub'da |
Doğrulama kitaplıklar |
Doğrulama akışı | Hızlı Başlangıç | Eğitim Kılavuzu |
---|---|---|---|---|---|
ASP.NET Core | • ASP.NET Core MVC web uygulaması Microsoft Graph API'sini çağırır • ASP.NET Core MVC web uygulaması, ASP.NET Core web API'sini çağırır |
MSAL.NET | • OpenID bağlantısı • Yetkilendirme kodu |
İlgili içerik
Daha fazla örnek koda daha ayrıntılı bir şekilde göz atmak isterseniz bkz: