Aracılığıyla paylaş


Örnek Android (Kotlin) uygulamasında kullanıcılarla oturum açma

Bu kılavuzda, kullanıcıları oturum açmak için örnek bir Android mobil uygulamasının nasıl yapılandırılır gösterilmektedir.

Bu makalede aşağıdaki görevleri yerine getirin:

  • Microsoft Entra yönetim merkezine bir uygulama kaydedin.
  • Platform yeniden yönlendirme URL'si ekleyin.
  • Genel istemci akışlarını etkinleştirin.
  • Android yapılandırma kodu örnek dosyasını, müşteri kiracı ayrıntıları için kendi Microsoft Entra Dış Kimlik kullanacak şekilde güncelleştirin.
  • Örnek Android mobil uygulamasını çalıştırın ve test edin.

Önkoşullar

Bir uygulamayı kaydetme

Uygulamanızın Microsoft Entra ile kullanıcılarla oturum açmasını sağlamak için Microsoft Entra Dış Kimlik oluşturduğunuz uygulama hakkında bilgi edinilmesi gerekir. Uygulama kaydı, uygulama ile Microsoft Entra arasında bir güven ilişkisi kurar. Bir uygulamayı kaydettiğinizde, Dış Kimlik, kimlik doğrulama istekleri oluştururken uygulamanızı tanımlamak için kullanılan bir değer olan Uygulama (istemci) kimliği olarak bilinen benzersiz bir tanımlayıcı oluşturur.

Aşağıdaki adımlar, uygulamanızı Microsoft Entra yönetim merkezine nasıl kaydedeceğini gösterir:

  1. Microsoft Entra yönetim merkezinde en azından Uygulama Geliştiricisi olarak oturum açın.

  2. Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden dış kiracınıza geçmek için üst menüdeki Ayarlar simgesini kullanın.

  3. Kimlik>Uygulamaları'na> göz atın Uygulama kayıtları.

  4. + Yeni kayıt'ı seçin.

  5. Görüntülenen Uygulamayı kaydet sayfasında;

    1. Uygulamanın kullanıcılarına gösterilen anlamlı bir uygulama Adı girin, örneğin ciam-client-app.
    2. Desteklenen hesap türleri'nin altında Yalnızca bu kuruluş dizinindeki Hesaplar'ı seçin.
  6. Kaydet'i seçin.

  7. Başarılı bir kayıtta uygulamanın Genel Bakış bölmesi görüntülenir. Uygulama kaynak kodunuzda kullanılacak Uygulama (istemci) kimliğini kaydedin.

Platform yeniden yönlendirme URL'si ekleme

Uygulama kaydınıza uygulama türünüzü belirtmek için şu adımları izleyin:

  1. Yönet'in altında Kimlik Doğrulama'yı seçin.
  2. Platform yapılandırmaları sayfasında Platform ekle'yi ve ardından Android seçeneğini belirleyin.
  3. Projenizin Paket Adını girin. Örnek kodu indirdiyseniz, bu değer olurcom.azuresamples.msaldelegatedandroidkotlinsampleapp.
  4. Android uygulamanızı yapılandırın bölmesinin İmza karması bölümünde Geliştirme İmza Karması Oluşturma'yı seçin. Bu, her geliştirme ortamı için değişir. Terminalinizde işletim sisteminiz için KeyTool komutunu kopyalayın ve çalıştırın.
  5. KeyTool tarafından oluşturulan İmza karması girin.
  6. Yapılandır'yı seçin.
  7. Android yapılandırma bölmesinden MSAL Yapılandırmasını kopyalayın ve daha sonraki uygulama yapılandırması için kaydedin.
  8. Bitti'yi seçin.

Genel istemci akışını etkinleştirme

Uygulamanızı genel istemci olarak tanımlamak için şu adımları izleyin:

  1. Yönet'in altında Kimlik Doğrulama'yı seçin.

  2. Gelişmiş ayarlar'ın altında Genel istemci akışlarına izin ver için Evet'i seçin.

  3. Yaptığınız değişiklikleri kaydetmek için Kaydet'i seçin.

Uygulamanızı kaydettikten sonra user.read izni atanır. Ancak, kiracı bir dış kiracı olduğundan, müşteri kullanıcıları bu izni onaylayamaz. Yönetici olarak kiracıdaki tüm kullanıcılar adına bu izni onaylamanız gerekir:

  1. Uygulama kayıtları sayfasında, oluşturduğunuz uygulamayı (ciam-client-app gibi) seçerek Genel Bakış sayfasını açın.

  2. Yönet'in altında API izinleri'ne tıklayın.

    1. Kiracı adınız> için <Yönetici onayı ver'i ve ardından Evet'i seçin.
    2. Yenile'yi seçin, ardından izin için Durum altında Kiracı adınız> için <Verildi seçeneğinin gösterildiğini doğrulayın.

Örnek Android mobil uygulamasını kopyalama

Ö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-browser-delegated-android-sample
    

Örnek Android mobil uygulamasını yapılandırma

Kimlik doğrulamasını ve Microsoft Graph kaynaklarına erişimi etkinleştirmek için aşağıdaki adımları izleyerek örneği yapılandırın:

  1. Android Studio'da kopyaladığınız projeyi açın.

  2. /app/src/main/res/raw/auth_config_ciam.json dosyasını açın.

  3. Yer tutucuyu bulun:

    • Enter_the_Application_Id_Hereve daha önce kaydettiğiniz uygulamanın Uygulama (istemci) kimliğiyle değiştirin.
    • Enter_the_Redirect_Uri_Here ve daha önce platform yeniden yönlendirme URL'sini eklediğinizde indirdiğiniz Microsoft Authentication Library (MSAL) yapılandırma dosyasındaki redirect_uri değeriyle değiştirin.
    • Enter_the_Tenant_Subdomain_Here ve bunu Dizin (kiracı) alt etki alanıyla değiştirin. Örneğin, kiracı birincil etki alanınız ise contoso.onmicrosoft.comkullanın contoso. Kiracı alt etki alanınızı bilmiyorsanız kiracınızın ayrıntılarını okumayı öğrenin.
  4. /app/src/main/AndroidManifest.xml dosyasını açın.

  5. Yer tutucuyu bulun:

    • ENTER_YOUR_SIGNATURE_HASH_HEREve daha önce platform yeniden yönlendirme URL'sini eklediğinizde oluşturduğunuz İmza Karması ile değiştirin.
  6. /app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt dosyasını açın.

  7. adlı scopes özelliği bulun ve Yönetici onayı verme bölümünde kaydedilen kapsamları ayarlayın. Herhangi bir kapsam kaydetmediyseniz, bu kapsam listesini boş bırakabilirsiniz.

    private const val scopes = "" // Developers should set the respective scopes of their Microsoft Graph resources here. For example, private const val scopes = "api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}"
    

Uygulamayı yapılandırdığınız için çalışmaya hazır.

Örnek Android mobil uygulamasını çalıştırma ve test edin

Uygulamanızı derlemek ve çalıştırmak için şu adımları izleyin:

  1. Araç çubuğunda, çalıştırma yapılandırmaları menüsünden uygulamanızı seçin.

  2. 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 Android cihazı bağlamanız gerekir.

  3. Çalıştır düğmesini seçin.

  4. Erişim belirteci istemek için Belirteci Etkileşimli Olarak Alma'ya tıklayın.

  5. KORUMALı ASP.NET Core web API'sini çağırmak için API - GET gerçekleştir'i seçerseniz bir hata alırsınız.

Korumalı web API'sini çağırma hakkında daha fazla bilgi için sonraki adımlarımıza bakın

Sonraki adımlar