Aracılığıyla paylaş


Azure kaynakları için yönetilen kimlikler nedir?

Geliştiriciler için yaygın olarak karşılaşılan bir zorluk, hizmetler arasındaki iletişimin güvenliğini sağlamak amacıyla kullanılan gizli dizilerin, kimlik bilgilerinin, sertifikaların ve anahtarların yönetimidir. Gizli bilgiler ve sertifikaların manuel olarak yönetilmesi, bilinen bir güvenlik sorunları ve kesinti kaynağıdır. Yönetilen kimlikler, geliştiricilerin bu kimlik bilgilerini yönetme gereksinimini ortadan kaldırır. Uygulamalar, Microsoft Entra belirteçlerini almak için yönetilen kimlikleri kullandığında kimlik bilgilerini yönetmek zorunda kalmaz.

Yönetilen kimlikler nedir?

Üst düzeyde iki kimlik türü vardır: insan ve makine/insan olmayan kimlikler. Makine/insan olmayan kimlikler, cihaz ve iş yükü kimliklerinden oluşur. Microsoft Entra'da iş yükü kimlikleri uygulamalar, hizmet sorumluları ve yönetilen kimliklerdir. İş yükü kimlikleri hakkında daha fazla bilgi için bkz. iş yükü kimlikleri.

Yönetilen kimlik, Azure işlem kaynağına (Sanal Makine (VM), Sanal Makine Ölçek Kümesine (VMSS), Service Fabric Kümesine, Azure Kubernetes kümesine) veya Azure tarafından desteklenen herhangi bir Uygulama barındırma platformuna atanabilen bir kimliktir. İşlem kaynağında yönetilen kimlik atandıktan sonra depolama hesabı, SQL veritabanı, CosmosDB gibi aşağı akış bağımlılık kaynaklarına erişmek için doğrudan veya dolaylı olarak yetkilendirilebilir. Yönetilen kimlik, erişim anahtarları veya parolalar gibi gizli bilgilerin yerini alır. Ayrıca, yönetilen kimlikler hizmet-hizmet bağımlılıkları için sertifikaların veya diğer kimlik doğrulama biçimlerinin yerini alabilir.

Aşağıdaki videoda yönetilen kimlikleri nasıl kullanabileceğiniz gösterilmektedir:

Yönetilen kimlikleri kullanmanın bazı avantajları şunlardır:

  • Kimlik bilgilerini yönetmeniz gerekmez. Kimlik bilgilerine sizin erişiminiz bile yok.
  • Kendi uygulamalarınız da dahil olmak üzere Microsoft Entra kimlik doğrulamasını destekleyen herhangi bir kaynakta kimlik doğrulaması yapmak için yönetilen kimlikleri kullanabilirsiniz.
  • Yönetilen kimlikler ek ücret ödemeden kullanılabilir.

Yönetilen kimlik türleri

İki tür yönetilen kimlik vardır:

  • Sistem tarafından atanan. Sanal makineler gibi bazı Azure kaynakları, yönetilen kimliği doğrudan kaynak üzerinde etkinleştirmenize olanak tanır. Sistem tarafından atanan yönetilen kimliği etkinleştirdiğinizde:

    • Kimlik için Microsoft Entra ID'de özel türde bir hizmet ilkesi oluşturulur. Hizmet sorumlusu, bu Azure kaynağının yaşam döngüsüne bağlıdır. Azure kaynağı silindiğinde, Azure sizin için hizmet sorumlusunu otomatik olarak siler.
    • Tasarım olarak, yalnızca bu Azure kaynağı Microsoft Entra ID’den token talep etmek için bu kimliği kullanabilir.
    • Yönetilen kimliğe bir veya daha fazla hizmete erişim yetkisi verirsiniz.
    • Sistem tarafından atanan hizmet sorumlusunun adı her zaman oluşturulduğu Azure kaynağının adıyla aynıdır. Bir dağıtım yuvası için ona atanan sistem kimliğinin adı <app-name>/slots/<slot-name>.
  • Kullanıcı tarafından atanan. Yönetilen bir kimliği, tek başına bir Azure Kaynağı olarak da oluşturabilirsiniz. Kullanıcı tarafından atanan bir yönetilen kimlik oluşturabilir ve bunu bir veya daha fazla Azure Kaynağına atayabilirsiniz. Kullanıcı tarafından atanan yönetilen kimliği etkinleştirdiğinizde:

    • Kimlik için Microsoft Entra ID'de özel türde bir hizmet ilkesi oluşturulur. Hizmet sorumlusu, onu kullanan kaynaklardan ayrı olarak yönetilir.
    • Kullanıcı tarafından atanan kimlikler birden çok kaynak tarafından kullanılabilir.
    • Yönetilen kimliğe bir veya daha fazla hizmete erişim yetkisi verirsiniz.

    İşlemden bağımsız olarak sağlanan ve birden çok işlem kaynağına atanabilen kullanıcı tarafından atanan kimlikler, Microsoft hizmetleri için önerilen yönetilen kimlik türüdür.

Sistem tarafından atanan yönetilen kimlikleri destekleyen kaynaklar şunları yapmanızı sağlar:

  • Yönetilen kimlikleri kaynak düzeyinde etkinleştirin veya devre dışı bırakın.
  • İzinleri vermek için rol tabanlı erişim denetimini (RBAC) kullanın.
  • Azure Etkinlik günlüklerinde oluşturma, okuma, güncelleştirme ve silme (CRUD) işlemlerini görüntüleyin.
  • Microsoft Entra Id oturum açma günlüklerinde oturum açma etkinliğini görüntüleyin.

Bunun yerine kullanıcı tarafından atanan yönetilen kimliği seçerseniz:

  • Kimlikleri oluşturabilir, okuyabilir, güncelleştirebilir ve silebilirsiniz .
  • İzinleri vermek için RBAC rol atamalarını kullanabilirsiniz.
  • Kullanıcı tarafından atanan yönetilen kimlikler birden fazla kaynakta kullanılabilir.
  • CRUD işlemleri Azure Etkinlik günlüklerinde gözden geçirilebilir.
  • Microsoft Entra Id oturum açma günlüklerinde oturum açma etkinliğini görüntüleyin.

Yönetilen kimlikler üzerindeki işlemler bir Azure Resource Manager şablonu, Azure portalı, Azure CLI, PowerShell ve REST API'leri kullanılarak gerçekleştirilebilir.

Sistem tarafından atanan ve kullanıcı tarafından atanan yönetilen kimlikler arasındaki farklar

Mülk Sistem tarafından atanan yönetilen kimlik Kullanıcı atamalı yönetilen kimlik
Oluşturma Bir Azure kaynağının parçası olarak oluşturulur (örneğin, Azure Sanal Makineler veya Azure Uygulaması Hizmeti). Azure'da bağımsız bir kaynak olarak oluşturulmuştur.
Yaşam döngüsü Yönetilen kimliğin oluşturulduğu Azure kaynağı ile ortak yaşam döngüsü.
Üst kaynak silindiğinde yönetilen kimlik de silinir.
Bağımsız yaşam döngüsü.
Açıkça silinmelidir.
Azure kaynakları arasında paylaşma Paylaşılamaz.
Yalnızca tek bir Azure kaynağıyla ilişkilendirilebilir.
Paylaşılabilir.
Aynı kullanıcı tarafından atanan yönetilen kimlik birden fazla Azure kaynağıyla ilişkilendirilebilir.
Yaygın kullanım örnekleri Tek bir Azure kaynağında yer alan iş yükleri.
Bağımsız kimliklere ihtiyaç duyan iş yükleri.
Örneğin, tek bir sanal makinede çalışan bir uygulama.
Birden çok kaynakta çalışan ve tek bir kimliği paylaşabilen iş yükleri.
Sağlama akışının bir parçası olarak güvenli bir kaynağa önceden yetkilendirme gerektiren iş yükleri.
Kaynakların sık sık geri dönüştürüldüğü ancak izinlerin tutarlı kalması gereken iş yükleri.
Örneğin, birden çok sanal makinenin aynı kaynağa erişmesi gereken bir iş yükü.

Azure kaynakları için yönetilen kimlikleri nasıl kullanabilirim?

Aşağıdaki adımları izleyerek yönetilen kimlikleri kullanabilirsiniz:

  1. Azure'da yönetilen kimlik oluşturma. Sistem tarafından atanan yönetilen kimlik veya kullanıcı tarafından atanan yönetilen kimlik arasında seçim yapabilirsiniz.
    1. Kullanıcı tarafından atanan yönetilen kimlik kullanırken, yönetilen kimliği Sanal Makine, Azure Mantıksal Uygulaması veya Azure Web Uygulaması gibi "kaynak" Azure Kaynağına atarsınız.
  2. Yönetilen kimliğe "hedef" hizmete erişim yetkisi verin.
  3. Bir kaynağa erişmek için yönetilen kimliği kullanın. Bu adımda Azure SDK'sını Azure.Identity kitaplığıyla kullanabilirsiniz. Bazı "kaynak" kaynaklar, bağlantılar için Yönetilen kimliklerin nasıl kullanılacağını bilen bağlayıcılar sunar. Bu durumda, kimliği bu "kaynağın" bir özelliği olarak kullanırsınız.

Özelliği hangi Azure hizmetleri destekler?

Azure kaynakları için yönetilen kimlikler, Microsoft Entra kimlik doğrulamasını destekleyen hizmetlerde kimlik doğrulaması yapmak için kullanılabilir. Desteklenen Azure hizmetlerinin listesi için bkz . Azure kaynakları için yönetilen kimlikleri destekleyen hizmetler.

Yönetilen kimliklerle çalışma

Yönetilen kimlikler doğrudan veya Microsoft Entra ID uygulamaları için Federasyon Kimliği Kimlik Bilgileri olarak kullanılabilir.

Yönetilen kimlikleri kullanma adımları şunlardır:

  1. Azure'da yönetilen kimlik oluşturma. Sistem tarafından atanan yönetilen kimlik veya kullanıcı tarafından atanan yönetilen kimlik arasında seçim yapabilirsiniz. Kullanıcı tarafından atanan yönetilen kimlik kullanırken yönetilen kimliği Sanal Makine, Azure Logic App veya Azure Web App gibi kaynak Azure Kaynağına atarsınız.
  2. Yönetilen kimliği hedef hizmete erişim için yetkilendirin.
  3. Bir kaynağa erişmek için yönetilen kimliği kullanın. Bu adımda, istemci kitaplıklarından herhangi birini kullanabilirsiniz. Bazı kaynak kaynakları, bağlantılar için Yönetilen kimliklerin nasıl kullanılacağını bilen bağlayıcılar sunar. Bu durumda, kimliği bu kaynak kaynağın bir özelliği olarak kullanırsınız.

Yönetilen kimliği doğrudan kullanma

Azure işlem kaynağınızda çalışan hizmet kodu, yönetilen kimlikle desteklenen Entra Kimliği'nden bir yönetilen kimlik belirtecini almak için Microsoft Kimlik Doğrulama Kitaplığı (MSAL) veya Azure.Identity SDK'sını kullanır. Bu jeton edinimi herhangi bir gizli bilgi gerektirmez ve kodun çalıştığı ortama göre otomatik olarak kimlik doğrulaması yapılır. Yönetilen kimlik yetkilendirildiği sürece hizmet kodu, Entra Id kimlik doğrulamasını destekleyen aşağı akış bağımlılıklarına erişebilir.

Örneğin, Azure İşlem olarak bir Azure Sanal Makinesi (VM) kullanabilirsiniz. Daha sonra kullanıcı tarafından atanan bir yönetilen kimlik oluşturabilir ve vm'ye atayabilirsiniz. Depolama hesabına erişmek için hem Azure.Identity (veya MSAL) hem de Azure Depolama istemci SDK'ları ile VM arabirimlerinde çalışan iş yükü. Kullanıcı tarafından atanan yönetilen kimlik, depolama hesabına erişme yetkisine sahip.

Yönetilen kimliği bir Entra ID uygulamasında Federasyon Kimlik Bilgisi (FIC) olarak kullanma

İş Yükü Kimliği Federasyonu, Entra ID Uygulamalarında, sertifika veya parola gibi bir kimlik bilgisi olarak yönetilen kimlik kullanılmasını sağlar. Bir Entra ID uygulaması gerektiğinde, kimlik bilgisiz olmak için önerilen yöntem budur. Entra ID Uygulamasında yönetilen kimlikleri FIC olarak kullanırken 20 FIC sınırı vardır.

Entra ID uygulamasının kapasitesinde hareket eden bir iş yükü, yönetilen kimliğe sahip herhangi bir Azure işlemde barındırılabilir. İş yükü, yönetilen kimliği kullanarak iş yükü kimliği federasyonu yoluyla Entra ID Uygulama belirteci ile değiştirilecek bir belirteç alır. Bu özellik, yönetilen kimlik olarak FIC (Federasyon Kimlik Bilgileri) olarak da adlandırılır. Daha fazla bilgi için bkz. Yönetilen kimliğe güvenecek bir uygulama yapılandırma.

Sonraki adımlar