Azure Chaos Studio'da izinler ve güvenlik

Azure Chaos Studio, Azure kaynaklarınıza sistematik olarak hatalar ekleyerek hizmet dayanıklılığını geliştirmenizi sağlar. Hata ekleme, hizmet dayanıklılığını geliştirmenin güçlü bir yoludur, ancak tehlikeli de olabilir. Uygulamanızda hatalara neden olmak, kötü amaçlı aktörlerin uygulamalarınıza sızması için başlangıçta amaçlanandan ve açık fırsatlardan daha fazla etkiye sahip olabilir.

Chaos Studio, hataların istemeden veya kötü bir aktör tarafından çalıştırılmasını engelleyen sağlam bir izin modeline sahiptir. Bu makalede, Chaos Studio kullanarak hata ekleme için hedeflenen kaynakların güvenliğini nasıl sağlayacağınızı öğreneceksiniz.

Chaos Studio ile hata ekleme özelliğini nasıl kısıtlayabilirim?

Chaos Studio, bir kaynağa hata eklemenin nasıl ve ne zaman gerçekleşebileceğini denetlemenize yardımcı olmak için üç güvenlik düzeyine sahiptir:

  • İlk olarak, kaos denemesi bir bölgeye, kaynak grubuna ve aboneliğe dağıtılan bir Azure kaynağıdır. Kullanıcıların deneme oluşturmak, güncelleştirmek, başlatmak, iptal etmek, silmek veya görüntülemek için uygun Azure Resource Manager izinlerine sahip olması gerekir.

    Her izin, bir kimliğe ayrıntılı olarak atanabilen veya joker karakter izinlerine sahip bir rolün parçası olarak atanabilen bir Resource Manager işlemidir. Örneğin, Azure'daki Katkıda Bulunan rolünün atanan kapsamda izni vardır */write ve buna izin de dahildir Microsoft.Chaos/experiments/write .

    Bir kaynağa hata ekleme özelliğini denetlemeye çalıştığınızda, kısıtlamak için en önemli işlem olacaktır Microsoft.Chaos/experiments/start/action. Bu işlem, hataların eklenmiş olduğu bir kaos denemesi başlatır.

  • İkinci olarak, bir kaos denemesinde sistem tarafından atanan yönetilen kimlik veya kaynakta hataları yürüten kullanıcı tarafından atanan yönetilen kimlik bulunur. Denemeniz için sistem tarafından atanan bir yönetilen kimlik kullanmayı seçerseniz, kimlik Microsoft Entra kiracınızda deneme oluşturma zamanında oluşturulur. Kullanıcı tarafından atanan yönetilen kimlikler herhangi bir sayıda denemede kullanılabilir.

    Bir kaos denemesinde, sistem tarafından atanan veya kullanıcı tarafından atanan yönetilen kimlik seçiminizde özel rol atamasını etkinleştirmeyi seçebilirsiniz. Bu işlevselliğin etkinleştirilmesi Chaos Studio'nun denemenizin kimliğine (kimlik seçiminizde henüz mevcut olmayan) gerekli deneme eylemi özelliklerini içeren özel bir rol oluşturmasına ve atamasına olanak tanır. Bir kaos denemesi kullanıcı tarafından atanan yönetilen kimlik kullanıyorsa, Deneme silme işleminden sonra Chaos Studio tarafından deneme kimliğine atanan tüm özel roller kalıcı olur.

    Deneme izinlerinizi el ile vermeyi seçerseniz, kimliğine tüm hedef kaynaklar için uygun izinleri vermelisiniz. Deneme kimliği bir kaynak üzerinde uygun izne sahip değilse, bu kaynak üzerinde bir hata yürütemez.

  • Üçüncüsü, her kaynağın Chaos Studio'ya karşılık gelen özelliklerin etkinleştirildiği bir hedef olarak eklenmelidir. Yürütülen hata için bir hedef veya yetenek yoksa, deneme kaynağı etkilemeden başarısız olur.

Kullanıcı Tarafından Atanan Yönetilen Kimlik

Bir kaos denemesi, denemenin hedef kaynaklarına hata eklemek için yeterli izinler elde etmek için kullanıcı tarafından atanan yönetilen kimliği kullanabilir. Ayrıca, kullanıcı tarafından atanan yönetilen kimlikler Chaos Studio'daki herhangi bir sayıda denemede kullanılabilir. Bu işlevi kullanmak için şunları kullanmanız gerekir:

  • İlk olarak, Yönetilen Kimlikler hizmetinde kullanıcı tarafından atanan bir yönetilen kimlik oluşturun. Bu noktada kaos denemelerinizi çalıştırmak için kullanıcı tarafından atanan yönetilen kimliğinize gerekli izinleri atayabilirsiniz.
  • İkinci olarak, kaos denemenizi oluştururken Aboneliğinizden kullanıcı tarafından atanan yönetilen kimliği seçin. Bu adımda özel rol atamasını etkinleştirmeyi seçebilirsiniz. Bu işlevin etkinleştirilmesi, denemenizde yer alan hatalara bağlı olarak kimlik seçiminize ihtiyaç duyabileceği tüm gerekli izinleri verir.
  • Üçüncüsü, tüm hatalarınızı kaos denemenize ekledikten sonra, kimlik yapılandırmanızın kaos denemenizin başarıyla çalışması için gerekli tüm eylemleri içerip içermediğini gözden geçirin. Aksi takdirde, denemenizin hata seçimlerine erişmek veya bunları düzenlemek için sistem yöneticinize başvurun.

Aracı kimlik doğrulaması

Aracı tabanlı hataları çalıştırdığınızda, Chaos Studio aracısını sanal makinenize (VM) veya sanal makine ölçek kümenize yüklemeniz gerekir. Aracı, Chaos Studio'da kimlik doğrulaması yapmak için kullanıcı tarafından atanan yönetilen kimliği ve belirli bir VM kaynağıyla ilişki kurmak için aracı profilini kullanır.

Aracı tabanlı hatalar için bir VM veya sanal makine ölçek kümesi eklediğinizde, önce bir aracı hedefi oluşturursunuz. Aracı hedefinin, kimlik doğrulaması için kullanılan kullanıcı tarafından atanan yönetilen kimliğe bir başvurusu olmalıdır. Aracı hedefi, aracıyı yüklediğinizde yapılandırma olarak sağlanan bir aracı profili kimliği içerir. Aracı profilleri her hedef için benzersizdir ve hedefler kaynak başına benzersizdir.

Azure Resource Manager işlemleri ve rolleri

Chaos Studio aşağıdaki işlemlere sahiptir:

Operasyon Açıklama
Microsoft.Chaos/targets/[Read,Write,Delete] Hedefi alın, oluşturun, güncelleştirin veya silin.
Microsoft.Chaos/targets/capabilities/[Read,Write,Delete] Bir özelliği alma, oluşturma, güncelleştirme veya silme.
Microsoft.Chaos/locations/targetTypes/Read Tüm hedef türlerini alın.
Microsoft.Chaos/locations/targetTypes/capabilityTypes/Read Tüm yetenek türlerini alın.
Microsoft.Chaos/experiments/[Read,Write,Delete] Bir kaos denemesini alın, oluşturun, güncelleştirin veya silin.
Microsoft.Chaos/experiments/start/action Bir kaos denemesi başlatın.
Microsoft.Chaos/experiments/cancel/action Kaos denemelerini durdurun.
Microsoft.Chaos/denemeler/yürütmeler/Okuma Bir kaos denemesinin yürütme durumunu alın.
Microsoft.Chaos/experiments/executions/getExecutionDetails/action Bir kaos denemesi çalıştırması için yürütme ayrıntılarını (her eylem için durum ve hatalar) alın.

Bu izinleri ayrıntılı olarak atamak için özel bir rol oluşturabilirsiniz.

Ağ güvenliği

Chaos Studio ile tüm kullanıcı etkileşimleri Azure Resource Manager aracılığıyla gerçekleşir. Kullanıcı bir deneme başlatırsa, hataya bağlı olarak, deneme Resource Manager dışındaki uç noktalarla etkileşimde olabilir:

  • Hizmet doğrudan hataları: Hizmet doğrudan hatalarının çoğu Azure Resource Manager aracılığıyla yürütülür ve izin verilenler listesine alınmış ağ uç noktaları gerektirmez.
  • Hizmet doğrudan AKS Chaos Mesh hataları: Chaos Mesh kullanan Azure Kubernetes Service için hizmet doğrudan hataları, AKS kümesinin Kubernetes API sunucusuna erişim gerektirir.
  • Aracı tabanlı hatalar: Aracı tabanlı hataları kullanmak için aracının Chaos Studio aracı hizmetine erişmesi gerekir. Bir VM veya sanal makine ölçek kümesinin, aracının başarıyla bağlanması için aracı hizmet uç noktasına giden erişimi olmalıdır. Aracı hizmet uç noktası şeklindedir https://acs-prod-<region>.chaosagent.trafficmanager.net. Yer tutucuyu <region> VM'nizin dağıtıldığı bölgeyle değiştirmeniz gerekir. Doğu ABD'deki bir VM'ye örnek olarak verilmiştir https://acs-prod-eastus.chaosagent.trafficmanager.net .
  • Aracı tabanlı özel ağ: Chaos Studio aracısı artık özel ağı destekliyor. Lütfen bkz . Chaos Agent için özel ağ.

Hizmet etiketleri

Hizmet etiketi, ağ güvenlik grupları için gelen ve giden kurallara atanabilen bir IP adresi ön eki grubudur. Herhangi bir müdahale olmadan IP adresi ön ekleri grubuna yönelik güncelleştirmeleri otomatik olarak işler. Hizmet etiketleri öncelikli olarak IP adresi filtrelemeyi etkinleştirdiğinden, yalnızca hizmet etiketleri trafiğin güvenliğini sağlamak için yeterli değildir.

Platform ip adreslerini bilmenize gerek kalmadan Chaos Studio'dan gelen trafiğe açıkça izin vermek için hizmet etiketlerini kullanabilirsiniz. Chaos Studio'nun hizmet etiketi şeklindedir ChaosStudio.

Hizmet etiketlerinin bir sınırlaması, bunların yalnızca genel IP adresine sahip uygulamalarla kullanılabilmesidir. Bir kaynağın yalnızca özel IP adresi varsa, hizmet etiketleri trafiği bu adrese yönlendiremez.

Kullanım örnekleri

Chaos Studio, çeşitli kullanım örnekleri için Hizmet Etiketlerini kullanır.

  • Aracı tabanlı hataları kullanmak için müşteri sanal makinelerinde çalışan Chaos Studio aracısının Chaos Studio arka uç hizmetiyle iletişim kurması gerekir. Hizmet Etiketi, müşterilerin sanal makineden Chaos Studio hizmetine giden trafiği listelemesine izin verir.
  • Azure Kubernetes Service için Chaos Mesh hataları gibi ad alanı dışında management.azure.com iletişim gerektiren belirli hataları kullanmak için, trafik Chaos Studio hizmetinden müşteri kaynağına gelir. Hizmet Etiketi, müşterilerin Chaos Studio hizmetinden hedeflenen kaynağa giden trafiğe izin vermelerini sağlar.
  • Müşteriler, belirli Azure hizmetlerine gelen/gelen trafiği etkilemek için Ağ Güvenlik Grubu Kuralları hatasının bir parçası olarak diğer Hizmet Etiketlerini kullanabilir.

Güvenlik kurallarında Hizmet Etiketi belirtildiğinde ChaosStudio , tek tek IP adresleri belirtmeye gerek kalmadan Chaos Studio hizmeti için trafiğe izin verilebilir veya trafik reddedilebilir.

Güvenlik konuları

Hizmet etiketlerini değerlendirirken ve kullanırken, tek tek IP adresleri üzerinde ayrıntılı denetim sağlamadıklarını ve ağın güvenliğini sağlamak için tek yöntem olarak güvenilmemeleri gerektiğini unutmayın. Bunlar, uygun ağ güvenlik önlemlerinin yerine geçemez.

Veri şifrelemesi

Chaos Studio tüm verileri varsayılan olarak şifreler. Chaos Studio yalnızca yönetilen kimlik nesnesi kimlikleri, deneme/adım/dal adları ve hata parametreleri gibi sistem özellikleri için girişi kabul eder. Bir ağ bağlantısı kesme hatasında engellenmesi gereken ağ bağlantı noktası aralığı buna örnek olarak verilmiştir.

Bu özellikler, ödeme bilgileri veya parolalar gibi hassas verileri depolamak için kullanılmamalıdır. Chaos Studio'un verilerinizi nasıl koruduğu hakkında daha fazla bilgi için bkz . Azure müşteri verilerini koruma.

Müşteri Kasası

Kilit kutusu, bir destek isteği sırasında deneme verilerinize erişmeye ilişkin Microsoft mühendisi isteğini onaylama veya reddetme denetimi sağlar.

Kasa, kaos denemesi bilgileri için etkinleştirilebilir ve müşteri tarafından kasa etkinse abonelik düzeyinde verilere erişim izni verilir.

Microsoft Azure için Müşteri Kasası hakkında daha fazla bilgi edinin

Sonraki adımlar

Artık kaos denemenizin güvenliğini nasıl sağlayabileceğinizi anladığınıza göre şunları yapmaya hazırsınız: