Senaryo: Web API'lerini çağıran Daemon uygulaması

Bu senaryo, web API'lerini çağıran bir daemon uygulaması oluşturmanız için size yol gösterir.

Genel bakış

Uygulamanız, bir web API'sini kendisi adına çağırmak için bir belirteç alabilir (kullanıcı adına değil). Bu senaryo, daemon uygulamaları için kullanışlıdır. Standart OAuth 2.0 istemci kimlik bilgileri verme işlevini kullanır.

Daemon apps

Daemon uygulamaları için bazı kullanım örnekleri şunlardır:

  • Kullanıcıları sağlamak veya yönetmek ya da bir dizinde toplu işlemler yapmak için kullanılan web uygulamaları
  • Toplu işler gerçekleştiren masaüstü uygulamaları (Windows'daki Windows hizmetleri veya Linux'taki daemon işlemleri gibi) veya arka planda çalışan bir işletim sistemi hizmeti
  • Belirli kullanıcıları değil dizinleri işlemesi gereken Web API'leri

Daemon olmayan uygulamaların, kullanıcılar adına işlem yaptıklarında bile istemci kimlik bilgilerini kullandığı başka bir yaygın durum vardır. Bu durum, teknik nedenlerle bir web API'sine veya kendi kimlikleri altındaki bir kaynağa erişmeleri gerektiğinde oluşur. Azure Key Vault'taki gizli dizilere erişim veya önbellek için Azure SQL Veritabanı örnek olarak verilmiştir.

Bir daemon uygulamasını normal bir kullanıcının cihazına dağıtamazsınız ve normal bir kullanıcı daemon uygulamasına erişemez. Yalnızca sınırlı bir BT yöneticileri kümesi, daemon uygulamalarının çalıştığı cihazlara erişebilir. Bu, kötü bir aktörün cihaz trafiğinden bir istemci gizli dizisine veya belirtecine erişememesini ve daemon uygulaması adına işlem yapmaması için kullanılır. Daemon uygulama senaryosu cihaz kimlik doğrulamasının yerini almaz.

Daemon olmayan uygulamalara örnekler:

  • Bir web hizmetine bir uygulama adına erişen ancak kullanıcı adına erişen bir mobil uygulama.
  • Bir cihaz adına bir web hizmetine erişen ancak kullanıcı adına erişen bir IoT cihazı.

Kendi kimlikleri için belirteç alan uygulamalar:

  • Kullanıcılardan bağımsız olarak kaynaklara erişen gizli istemci uygulamalarının kimliklerini kanıtlamaları gerekir. Microsoft Entra kiracı yöneticilerinin bu hassas uygulamalara onay vermesi gerekir.
  • Microsoft Entra Id ile bir gizli dizi (uygulama parolası veya sertifika) kaydettiniz. Bu gizli dizi, belirteç almak için Microsoft Entra Id çağrısı sırasında geçirilir.

Özellikleri

Kullanıcılar kendi kimliğini gerektirdiğinden bir daemon uygulamasıyla etkileşim kuramaz. Bu uygulama türü, uygulama kimliğini kullanarak ve uygulama kimliğini, kimlik bilgilerini (parola veya sertifika) ve uygulama kimliği URI'sini Microsoft Entra Id'ye sunarak erişim belirteci ister. Kimlik doğrulaması başarılı olduktan sonra, daemon Microsoft kimlik platformu bir erişim belirteci (ve yenileme belirteci) alır. Bu belirteç daha sonra web API'sini çağırmak için kullanılır (ve gerektiğinde yenilenir).

Kullanıcılar daemon uygulamalarıyla etkileşim kuramadığından artımlı onay mümkün değildir. Tüm gerekli API izinlerinin uygulama kaydında yapılandırılması gerekir. Uygulamanın kodu yalnızca statik olarak tanımlanmış izinler istemektedir. Bu, daemon uygulamalarının artımlı onayı desteklemeymeyeceği anlamına da gelir.

Geliştiriciler için bu senaryonun uçtan uca deneyimi aşağıdaki yönlere sahiptir:

  • Daemon uygulamaları yalnızca Microsoft Entra kiracılarında çalışabilir. Microsoft kişisel hesaplarını işlemeye çalışan bir daemon uygulaması oluşturmak mantıklı olmaz. İş kolu (LOB) uygulama geliştiricisiyseniz kiracınızda daemon uygulamanızı oluşturursunuz. ISV'yseniz çok kiracılı bir daemon uygulaması oluşturmak isteyebilirsiniz. Her kiracı yöneticisinin onay vermesi gerekir.
  • Uygulama kaydı sırasında yanıt URI'sine gerek yoktur. Gizli dizileri, sertifikaları veya imzalı onayları Microsoft Entra Kimliği ile paylaşın. Ayrıca uygulama izinleri istemeniz ve bu uygulama izinlerini kullanmak için yönetici onayı vermeniz gerekir.
  • Uygulama yapılandırmasının, uygulama kaydı sırasında Microsoft Entra Id ile paylaşılan istemci kimlik bilgilerini sağlaması gerekir.
  • İstemci kimlik bilgileri akışıyla belirteç almak için kullanılan kapsamın statik bir kapsam olması gerekir.

OAuth 2.0 ve OpenID Bağlan ile kimlik ve erişim yönetimi (IAM) konusunda yeniyseniz veya Microsoft kimlik platformu IAM'de yeniyseniz, aşağıdaki makale kümesi okuma listenizde yüksek olmalıdır.

İlk hızlı başlangıcınızı veya öğreticinizi tamamlamadan önce okumanız gerekmese de, platform için ayrılmaz konuları kapsar ve siz daha karmaşık senaryolar oluştururken bunlara aşina olmanız, yolunuz üzerinde size yardımcı olur.

Sonraki adımlar

Bu senaryoda bir sonraki makale olan Uygulama kaydı'na geçin.