Service Fabric ile Azure için Yönetilen Kimlikleri Kullanma

Bulut uygulamaları oluştururken karşılaşılan yaygın zorluklardan biri, çeşitli hizmetlerin yerel olarak bir geliştirici iş istasyonuna veya kaynak denetimine kaydedilmeden kimlik doğrulaması için kodunuzdaki kimlik bilgilerini güvenli bir şekilde yönetmedir. Azure için yönetilen kimlikler, Microsoft Entra Id içindeki tüm kaynaklarınıza Microsoft Entra Id içinde otomatik olarak yönetilen kimlikler sağlayarak bu sorunu çözer. Kodunuzda depolanan kimlik bilgileri olmadan Key Vault dahil olmak üzere Microsoft Entra kimlik doğrulamasını destekleyen herhangi bir hizmette kimlik doğrulaması yapmak için bir hizmetin kimliğini kullanabilirsiniz.

Azure kaynakları için yönetilen kimlikler, Azure abonelikleri için Microsoft Entra Id ile ücretsizdir. Ek ücret alınmaz.

Dekont

Azure için yönetilen kimlikler, daha önce Yönetilen Hizmet Kimliği (MSI) olarak bilinen hizmetin yeni adıdır.

Kavramlar

Azure için yönetilen kimlikler çeşitli temel kavramları temel alır:

  • İstemci Kimliği - Microsoft Entra Kimliği tarafından oluşturulan ve ilk sağlama sırasında bir uygulamaya ve hizmet sorumlusuna bağlı benzersiz bir tanımlayıcıdır (ayrıca bkz . Uygulama (istemci) kimliği.)

  • Asıl Kimlik - Yönetilen kimliğiniz için bir Azure kaynağına rol tabanlı erişim vermek için kullanılan hizmet sorumlusu nesnesinin nesne kimliği.

  • Hizmet Sorumlusu - Belirli bir kiracıdaki bir Microsoft Entra uygulamasının projeksiyonunu temsil eden bir Microsoft Entra nesnesi (ayrıca bkz . hizmet sorumlusu.)

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

  • Sistem tarafından atanan yönetilen kimlik doğrudan bir Azure hizmet örneğinde etkinleştirilir. Sistem tarafından atanan kimliğin yaşam döngüsü, etkinleştirildiği Azure hizmet örneğine özgüdür.
  • Kullanıcı tarafından atanan yönetilen kimlik, tek başına bir Azure kaynağı olarak oluşturulur. Kimlik bir veya daha fazla Azure hizmet örneğine atanabilir ve bu örneklerin yaşam döngülerinden ayrı olarak yönetilir.

Yönetilen kimlik türleri arasındaki farkı daha fazla anlamak için bkz . Azure kaynakları için yönetilen kimlikler nasıl çalışır?.

Service Fabric uygulamaları için desteklenen senaryolar

Service Fabric için yönetilen kimlikler yalnızca Azure tarafından dağıtılan Service Fabric kümelerinde ve yalnızca Azure kaynakları olarak dağıtılan uygulamalar için desteklenir. Azure kaynağı olarak dağıtılmayan bir uygulamaya kimlik atanamaz. Kavramsal olarak bakıldığında, Azure Service Fabric kümesindeki yönetilen kimlikler için destek iki aşamadan oluşur:

  1. Uygulama kaynağına bir veya daha fazla yönetilen kimlik atama; Bir uygulamaya sırasıyla sistem tarafından atanan tek bir kimlik ve/veya en fazla 32 kullanıcı tarafından atanan kimlik atanabilir.

  2. Uygulamanın tanımında, uygulamaya atanan kimliklerden birini uygulamayı oluşturan tek tek hizmetlere eşleyin.

Bir uygulamanın sistem tarafından atanan kimliği bu uygulamaya özgüdür; kullanıcı tarafından atanan kimlik, birden çok uygulamaya atanabilen tek başına bir kaynaktır. Bir uygulama içinde, tek bir kimlik (sistem tarafından atanan veya kullanıcı tarafından atanan) uygulamanın birden çok hizmetine atanabilir, ancak her hizmete yalnızca bir kimlik atanabilir. Son olarak, bu özelliğe erişebilmek için bir hizmete açıkça bir kimlik atanması gerekir. Aslında, bir uygulamanın kimliklerinin kendi kurucu hizmetlerine eşlenmesi uygulama içi yalıtıma olanak tanır; bir hizmet yalnızca buna eşlenen kimliği kullanabilir.

Bu özellik için aşağıdaki senaryolar desteklenir:

  • Bir veya daha fazla hizmet ve bir veya daha fazla atanmış kimlikle yeni bir uygulama dağıtma

  • Azure kaynaklarına erişmek için mevcut (Azure tarafından dağıtılan) bir uygulamaya bir veya daha fazla yönetilen kimlik atama

Aşağıdaki senaryolar desteklenmiyor veya önerilmez. Bu eylemler engellenemez, ancak uygulamalarınızda kesintilere yol açabilir:

  • Bir uygulamaya atanan kimlikleri kaldırma veya değiştirme. Değişiklik yapmanız gerekiyorsa, önce yeni bir kimlik ataması eklemek ve ardından daha önce atanmış bir atamayı kaldırmak için ayrı dağıtımlar gönderin. Mevcut bir uygulamadan bir kimliğin kaldırılması, uygulamanızı yükseltilemez durumda bırakmak da dahil olmak üzere istenmeyen etkilere neden olabilir. Bir kimliğin kaldırılması gerekiyorsa uygulamayı tamamen silmek güvenlidir. Uygulamanın silinmesi, uygulamayla ilişkili sistem tarafından atanan tüm kimlikleri siler ve uygulamaya atanan kullanıcı tarafından atanan kimliklerle tüm ilişkilendirmeleri kaldırır.

  • Service Fabric, kullanım dışı bırakılan AzureServiceTokenProvider'da yönetilen kimlikleri desteklemez. Bunun yerine, Azure Kimlik SDK'sını kullanarak Service Fabric'te yönetilen kimlikleri kullanın

Sonraki adımlar