Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunun için geçerlidir:
Dış kiracılar (daha fazla bilgi edinin)
Bu hızlı başlangıçta, ASP.NET Core web API'sini çağırmak için örnek bir Android mobil uygulamasını yapılandırmayı öğreneceksiniz.
Önkoşullar
- Yerel kimlik doğrulamasıkullanarak örnek Android (Kotlin) mobil uygulamasında kullanıcıları oturum açın.
-
Microsoft Entra yönetim merkezinde, aşağıdaki yapılandırmayla web API'niz için yeni bir uygulama kaydedin. Ayrıntılı adımlar için bkz . Uygulama kaydetme. Daha sonra kullanmak üzere Uygulama (istemci) kimliğini ve Dizin (kiracı) kimliğini kaydedin.
- Ad: ciam-ToDoList-api.
- Desteklenen hesap türleri: Yalnızca bu kuruluş dizinindeki hesaplar (Tek kiracı)
API kapsamlarını yapılandırma
İstemci uygulamalarının kullanıcı için erişim belirtecini başarıyla alabilmesi için api'nin Temsilci İzinolarak da adlandırılan en az bir kapsam yayımlaması gerekir. Kapsamı yayınlamak için şu adımları izleyin:
Uygulama kayıtları sayfasında, oluşturduğunuz API uygulamasını (ciam-ToDoList-api) seçerek Genel Bakış sayfasını açın.
Yönetaltında Bir API'yi kullanıma sunseçin.
Sayfanın üst kısmında, Uygulama Kimliği URI'siyanındaki Ekle bağlantısını seçerek bu uygulama için benzersiz bir URI oluşturun.
api://{clientId}gibi önerilen Uygulama Kimliği URI'sini kabul edin ve Kaydetöğesini seçin. Web uygulamanız web API'si için bir erişim belirteci istediğinde, API için tanımladığınız her kapsam için ön ek olarak URI'yi ekler.Bu API tarafından tanımlananKapsamlar altında Kapsam ekle seçeneğiniseçin.
API'ye okuma erişimi tanımlayan aşağıdaki değerleri girin, ardından değişikliklerinizi kaydetmek için Kapsam ekle seçin:
Mülk Değer Kapsam adı ToDoList.Read Kim onay verebilir? Yalnızca Yöneticiler Yönetici onayı için görünen ad 'TodoListApi' kullanarak kullanıcıların ToDo listesini okuma Yönetici onayı açıklaması 'TodoListApi'kullanarak uygulamanın kullanıcının ToDo listesini okumasına izin verin. Devlet Aktif Kapsam Ekle'yi tekrar seçin ve API için okuma ve yazma erişim kapsamını tanımlayan aşağıdaki değerleri girin. Değişikliklerinizi kaydetmek için Kapsam ekle seçin.
Mülk Değer Kapsam adı ToDoList.ReadWrite Kim onay verebilir? Yalnızca Yöneticiler Yönetici onayı için görünen ad Kullanıcıların ToDo listesini 'ToDoListApi' kullanarak okuma ve yazma Yönetici onayı açıklaması 'ToDoListApi' kullanarak uygulamanın kullanıcının ToDo listesini okumasına ve yazmasına izin ver Devlet Aktif
Web API'sine yönelik izinler yayımlarken en az ayrıcalık ilkesi hakkında daha fazla bilgi edinin.
Uygulama rollerini yapılandırma
bir API'nin, istemci uygulamalarının kendileri gibi bir erişim belirteci elde etmesi için uygulamalar için uygulama izni olarak da adlandırılan en az bir uygulama rolü yayımlaması gerekir. Uygulama izinleri, istemci uygulamaların kendi kimlikleriyle doğrulama yapabilmesini ve kullanıcıların oturum açmasına gerek kalmamasını sağlamak için API'lerin yayımlaması gereken izin türleridir. Uygulama izni yayımlamak için şu adımları izleyin:
Uygulama kayıtları sayfasında, oluşturduğunuz uygulamayı (ciam-ToDoList-api) seçerek Genel Bakış sayfasını açın.
Yönetaltında Uygulama rolleriseçin.
uygulama rolü oluşturseçin, ardından aşağıdaki değerleri girin ve değişikliklerinizi kaydetmek için uygula seçin:
Mülk Değer Görünen ad YapılacaklarListesi.Okuma.Tümü İzin verilen üye türleri Uygulamaları Değer YapılacaklarListesi.Okuma.Tümü Açıklama Uygulamanın 'TodoListApi' kullanarak her kullanıcının ToDo listesini okumasına izin ver Bu uygulama rolünü etkinleştirmek istiyor musunuz? İşaretli tutun Uygulama rolü oluştur yeniden seçin, ardından ikinci uygulama rolü için aşağıdaki değerleri girin ve ardından değişikliklerinizi kaydetmek için uygula seçin:
Mülk Değer Görünen ad ToDoList.ReadWrite.All İzin verilen üye türleri Uygulamaları Değer ToDoList.ReadWrite.All Açıklama 'ToDoListApi' kullanarak uygulamanın her kullanıcının ToDo listesini okumasına ve yazmasına izin ver Bu uygulama rolünü etkinleştirmek istiyor musunuz? İşaretli tutun
İsteğe bağlı talepleri yapılandırma
Web API'sinin bir uygulama belirteci mi yoksa uygulama + kullanıcı belirteci mi olduğunu belirlemesine yardımcı olmak için idtyp isteğe bağlı talebi ekleyebilirsiniz. Aynı amaçla scp ve rolleri taleplerin birleşimini kullanabilirsiniz ancak idtyp talebi, uygulama belirteci ile uygulama + kullanıcı belirtecini birbirinden ayırt etmenin en kolay yoludur. Örneğin, belirteç yalnızca uygulama belirteci olduğunda bu talebin değeri , uygulama olur.
Android örnek uygulamasına API izinleri verme
Hem istemci uygulamanızı hem de web API'nizi kaydettikten ve kapsamlar oluşturarak API'yi kullanıma sunduğunuzda, aşağıdaki adımları izleyerek istemcinin API izinlerini yapılandırabilirsiniz:
Uygulama kayıtları sayfasında, oluşturduğunuz uygulamayı (ciam-client-app) seçerek Genel Bakış sayfasını açın.
Yönetaltında API izinleriniseçin.
Yapılandırılmış izinler altındaBir izin ekleseçin.
Kuruluşumun kullandığı API'lerini sekmesini seçin.
API'ler listesinde ciam-ToDoList-apigibi API'yi seçin.
Temsilci izinleri seçeneğini seçin.
İzinler listesinden ToDoList.Read, ToDoList.ReadWrite seçin (gerekirse arama kutusunu kullanın).
İzin ekle düğmesini seçin.
Bu noktada izinleri doğru atamış olursunuz. Ancak, kiracı bir müşterinin kiracısı olduğundan, tüketici kullanıcıları bu izinlere onay veremez. Bu sorunu çözmek için, yönetici olarak kiracıdaki tüm kullanıcılar adına bu izinleri onaylamanız gerekir:
kiracı adınız<>için yönetici onayı ver, ardından Evet seçeneğini seçin.
Yenile'yiseçin, ardından kiracı adınızın <için Verildi> her iki izin için Durum altında göründüğünü doğrulayın.
Yapılandırılmış izinler listesinden ToDoList.Read ve ToDoList.ReadWrite izinlerini birer birer seçin ve ardından iznin tam URI'sini daha sonra kullanmak üzere kopyalayın. Tam izin URI'si,
api://{clientId}/{ToDoList.Read}veyaapi://{clientId}/{ToDoList.ReadWrite}benzer bir görünüme sahiptir.
Örnek web API'sini kopyalama veya indirme
Örnek uygulamayı edinmek için GitHub'dan kopyalayabilir veya .zip dosyası olarak indirebilirsiniz.
Örneği kopyalamak için bir komut istemi açın ve projeyi oluşturmak istediğiniz yere gidin ve aşağıdaki komutu girin:
git clone https://github.com/Azure-Samples/ms-identity-ciam-dotnet-tutorial.git.zip dosyasınıindirin. Adın uzunluğu 260 karakterden az olan bir dosya yoluna ayıklayın.
Örnek web API'lerini yapılandırma ve çalıştırma
Kod düzenleyicinizde
2-Authorization/1-call-own-api-aspnet-core-mvc/ToDoListAPI/appsettings.jsondosyasını açın.Yer tutucuyu bulun:
-
Enter_the_Application_Id_Hereve daha önce kopyaladığınız web API'sinin Uygulama (istemci) kimliği değiştirin. -
Enter_the_Tenant_Id_Here'ı daha önce kopyaladığınız Dizin (kiracı) kimliği ile değiştirin. -
Enter_the_Tenant_Subdomain_Here'ı dizin (tenant) alt etki alanıyla değiştirin. Örneğin, kiracı birincil alan adınızcontoso.onmicrosoft.comise,contosokullanın. Kiracı adınız yoksa, kiracı ayrıntılarınızı nasıl okuyacağınızıöğrenin.
-
Android örnek uygulamasını çağırmak için web API'nizi barındırmanız gerekir. Hızlı Başlangıcı izleyin: Web API'nizi dağıtmak için ASP.NET bir web uygulaması dağıtma.
Web API'sini çağırmak için örnek Android mobil uygulamasını yapılandırma
Örnek, birden çok Web API'si URL uç noktası ve kapsam kümesi yapılandırmanıza olanak tanır. Bu durumda, yalnızca bir Web API'si URL uç noktasını ve ilişkili kapsamlarını yapılandırabilirsiniz.
Android Studio'nuzda
/app/src/main/java/com/azuresamples/msalnativeauthandroidkotlinsampleapp/AccessApiFragment.ktdosyasını açın.WEB_API_URL_1adlı özelliği bulun ve URL'yi web API'nize ayarlayın.private const val WEB_API_URL_1 = "" // Developers should set the respective URL of their web API herescopesForAPI1adlı özelliği bulun ve kaydedilen kapsamlarıAndroid örnek uygulamasına API izinleri vererek ayarlayın.private val scopesForAPI1 = listOf<String>() // Developers should set the respective scopes of their web API here. For example, private val scopes = listOf<String>("api://{clientId}/{ToDoList.Read}", "api://{clientId}/{ToDoList.ReadWrite}")
Android örnek uygulamasını çalıştırma ve web API'sini çağırma
Uygulamanızı derlemek ve çalıştırmak için şu adımları izleyin:
Araç çubuğunda, çalıştırma yapılandırmaları menüsünden uygulamanızı seçin.
Hedef cihaz menüsünde, uygulamanızı çalıştırmak istediğiniz cihazı seçin.
Yapılandırılmış cihaz yoksa, Android Öykünücüsü'ni kullanmak için bir Android Sanal Cihaz oluşturmanız veya fiziksel bir cihaz bağlamanız gerekir.
Çalıştır düğmesini seçin. Uygulama e-posta ve tek seferlik geçiş kodu ekranında açılır.
API çağrısını test etmek için API sekmesini seçin. Web API'sine yapılan başarılı bir çağrı HTTP
200döndürürken, HTTP403yetkisiz erişimi bildirir.
Sonraki adımlar
Eğitim: Android uygulamanızı yerel kimlik doğrulamaiçin hazırlayın.