Öğretici: Bir .NET daemon uygulamasını yetkilendirmek için dış kiracınızı hazırlama
Bu öğretici serisinde, Microsoft Entra Dış Kimlik kullanarak kendi özel korumalı web API'nizi çağıran bir .NET daemon uygulaması oluşturmayı öğreneceksiniz. Bir uygulamayı Microsoft Entra Id'ye kaydedip dış kiracınızla uygulamanızın kimliğini doğrulayacaksınız. Son olarak uygulamayı çalıştıracak ve oturum açma ve oturum kapatma deneyimlerini test edin.
- Bir web API'sini kaydedin ve Microsoft Entra yönetim merkezinde uygulama izinlerini yapılandırın.
- Microsoft Entra yönetim merkezinde bir istemci daemon uygulaması kaydetme ve uygulama izinleri verme
- Microsoft Entra yönetim merkezinde daemon uygulamanız için bir gizli dizi oluşturun.
Önkoşullar
- Dış kiracı için Microsoft Entra Kimliği. Aboneliğiniz yoksa başlamadan önce bir deneme kiracısı veya aboneliği olan bir kiracı oluşturun.
- Bu Azure hesabının uygulamaları yönetme izinleri olmalıdır. Aşağıdaki Microsoft Entra rollerinden herhangi biri gerekli izinleri içerir:
- Uygulama Yöneticisi
- Uygulama Geliştirici
- Bulut Uygulaması Yöneticisi
Web API'si uygulaması kaydetme
Microsoft Entra yönetim merkezinde en azından Uygulama Geliştiricisi olarak oturum açın.
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.
Kimlik>Uygulamaları'na> göz atın Uygulama kayıtları.
+ Yeni kayıt'ı seçin.
Görüntülenen Uygulamayı kaydet sayfasında, uygulamanızın kayıt bilgilerini girin:
Ad bölümünde, uygulamanın kullanıcılarına görüntülenecek anlamlı bir uygulama adı girin, örneğin ciam-ToDoList-api.
Desteklenen hesap türleri'nin altında Yalnızca bu kuruluş dizinindeki Hesaplar'ı seçin.
Uygulamayı kaydetmek için Kaydet'i seçin.
Kayıt tamamlandığında uygulamanın Genel Bakış bölmesi görüntülenir. Uygulama kaynak kodunuzda kullanılacak Dizin (kiracı) kimliğini ve Uygulama (istemci) kimliğini kaydedin.
Uygulama rollerini yapılandırma
bir API'nin, istemci uygulamalarının kendileri gibi bir erişim belirteci alabilmesi için uygulamalar için Uygulama İzni olarak da adlandırılan en az bir uygulama rolü yayımlaması gerekir. Uygulama izinleri, istemci uygulamalarının kendi kimliklerini başarıyla doğrulayıp oturum açması gerekmediğinde API'lerin yayımlaması gereken izin türüdür. Uygulama izni yayımlamak için şu adımları izleyin:
Uygulama kayıtları sayfasında, oluşturduğunuz uygulamayı (ciam-ToDoList-api gibi) seçerek Genel Bakış sayfasını açın.
Yönet'in altında Uygulama rolleri'ne tıklayın.
Uygulama rolü oluştur'u seçin, ardından aşağıdaki değerleri girin ve ardından Uygula'yı seçerek değişikliklerinizi kaydedin:
Özellik Değer Görünen ad ToDoList.Read.All İzin verilen üye türleri Uygulamalar Değer ToDoList.Read.All Açıklama Uygulamanın 'TodoListApi' kullanarak her kullanıcının ToDo listesini okumasına izin ver Uygulama rolü oluştur'u 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'yı seçin:
Özellik Değer Görünen ad ToDoList.ReadWrite.All İzin verilen üye türleri Uygulamalar Değer ToDoList.ReadWrite.All Açıklama Uygulamanın 'ToDoListApi' kullanarak her kullanıcının ToDo listesini okumasına ve yazmasına izin ver
Idtyp belirteci talebi yapılandırma
Web API'sinin belirtecin bir uygulama belirteci mi yoksa uygulama + kullanıcı belirteci mi olduğunu belirlemesine yardımcı olmak için isteğe bağlı talep oluşturabilirsiniz. Aynı amaçla scp ve rol taleplerinin bir birleşimini kullanabilirsiniz ancak idtyp talebi, uygulama belirtecini ve uygulama + kullanıcı belirtecini birbirinden ayırt etmenin en kolay yoludur. Örneğin, belirteç yalnızca uygulama belirteci olduğunda bu talebin değeri uygulamadır.
Daemon uygulamasını 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:
Microsoft Entra yönetim merkezinde en azından Uygulama Geliştiricisi olarak oturum açın.
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.
Kimlik>Uygulamaları'na> göz atın Uygulama kayıtları.
+ Yeni kayıt'ı seçin.
Görüntülenen Uygulamayı kaydet sayfasında;
- Uygulamanın kullanıcılarına gösterilen anlamlı bir uygulama Adı girin, örneğin ciam-client-app.
- Desteklenen hesap türleri'nin altında Yalnızca bu kuruluş dizinindeki Hesaplar'ı seçin.
Kaydet'i seçin.
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.
İstemci gizli dizisi oluşturma
Kayıtlı uygulama için bir istemci gizli dizisi oluşturun. Uygulama, belirteç istediğinde kimliğini kanıtlamak için istemci gizli dizisini kullanır.
- Uygulama kayıtları sayfasında, oluşturduğunuz uygulamayı (ciam-client-app gibi) seçerek Genel Bakış sayfasını açın.
- Yönet'in altında Sertifikalar ve gizli diziler'i seçin.
- Yeni gizli anahtar'ı seçin.
- Açıklama kutusuna istemci gizli dizisi için bir açıklama girin (örneğin, ciam uygulama istemci gizli dizisi).
- Süre Sonu'nun altında gizli dizinin geçerli olduğu bir süre seçin (kuruluşunuzun güvenlik kurallarına göre) ve ardından Ekle'yi seçin.
- Gizli dizinin Değerini kaydedin. Bu değeri sonraki bir adımda yapılandırma için kullanacaksınız. Gizli dizi değeri yeniden görüntülenmez ve Sertifikalar ve gizli dizilerden uzaklaştıktan sonra herhangi bir yolla alınamaz. Kaydettiğinizden emin olun.
Daemon uygulamasına API izinleri verme
Uygulama kayıtları sayfasında, oluşturduğunuz uygulamayı (ciam-client-app gibi) seçin.
Yönet'in altında API izinleri'ne tıklayın.
Yapılandırılan izinler'in altında İzin ekle'yi seçin.
Kuruluşumun kullandığı API'ler sekmesini seçin.
API'ler listesinde ciam-ToDoList-api gibi API'yi seçin.
Uygulama izinleri seçeneğini belirleyin. Uygulama kendi adıyla oturum açtığında ancak kullanıcı adına oturum açmadığı için bu seçeneği seçeriz.
İzinler listesinden TodoList.Read.All, ToDoList.ReadWrite.All öğesini seçin (gerekirse arama kutusunu kullanın).
İzin ekle düğmesini seçin.
Bu noktada izinleri doğru atamış olursunuz. Ancak, daemon uygulaması kullanıcıların bu uygulamayla etkileşim kurmasına izin vermediğinden, 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'i ve ardından Evet'i seçin.
- Yenile'yi seçin, ardından Kiracı adınız> için <Verildi seçeneğinin her iki izin için de Durum altında göründüğünü doğrulayın.
Uygulama kayıt ayrıntılarınızı kaydetme
Bu öğreticiden sonraki adım, web API'nizi çağıran bir daemon uygulaması oluşturmaktır. Aşağıdaki ayrıntılara sahip olduğunuzdan emin olun:
- Kaydettiğiniz istemci daemon uygulamasının Uygulama (istemci) kimliği.
- Daemon uygulamanızı kaydettiğiniz Dizin (kiracı) alt etki alanı. Kiracı adınız yoksa kiracınızın ayrıntılarını nasıl okuyacağınızı öğrenin.
- Oluşturduğunuz daemon uygulamasının uygulama gizli dizisi değeri.
- Kaydettiğiniz web API'si uygulamasının Uygulama (istemci) kimliği.