İlke temelli korumaları benimseme

İlkeleri kullanmadan önce, Bunların Azure giriş bölgesi başvuru uygulamalarında nerede ve neden kullanıldığını anlamanız gerekir. Bu makale DeployIfNotExists (DINE) veya Değiştirme ilkelerinin Azure ortamınızda değişiklik yapmasını engellemek isteyip istemediğinizi anlamanıza yardımcı olur.

DINE ve Modify ilkelerini neden kullanmalısınız?

DINE ve Değiştirme ilkeleri, Azure giriş bölgesi başvuru uygulamalarının bir parçasıdır. Sizin ve kuruluşunuzun abonelik olarak da bilinen giriş bölgelerinizin ve bunların içindeki kaynakların uyumlu olduğundan emin olmanıza yardımcı olur. Bu ilkeler, Azure ortamınız ölçeklendirildikçe platform ve giriş bölgesi ekiplerinin operasyonel yükünü de ortadan kaldırır.

Örneğin, yeni bir giriş bölgesi aboneliğinin sağlandığı ve "corp" yönetim grubuna yerleştirildiği bir senaryoyu düşünün. DINE ve Değiştirme ilkeleri daha sonra giriş bölgesi aboneliği için aşağıdaki eylemleri gerçekleştirin:

  • Bulut için Microsoft Defender etkinleştirin. Bulut için Defender dışarı aktarmalarını yönetim aboneliğindeki merkezi Log Analytics çalışma alanına yapılandırın.
  • İlke ataması üzerinde yapılandırılan ilke parametrelerine göre desteklenen farklı teklifler için Bulut için Defender'ı etkinleştirin.
  • Yönetim aboneliğindeki merkezi Log Analytics çalışma alanına gönderilecek Azure Etkinlik günlüklerini yapılandırın.
  • Yönetim aboneliğindeki merkezi Log Analytics çalışma alanına gönderilecek tüm kaynakların tanılama ayarlarını yapılandırın.
  • Azure Arc bağlantılı sunucular da dahil olmak üzere sanal makineler ve Azure Sanal Makine Ölçek Kümeleri için gerekli Azure İzleyici aracılarını dağıtın. Bunları yönetim aboneliğindeki merkezi Log Analytics çalışma alanına bağlayın.

Not

Yukarıdaki seçenekleri istediğiniz zaman veya Azure giriş bölgesi başvuru uygulamalarının dağıtımı sırasında devre dışı bırakabilirsiniz.

Yukarıdaki listede, Azure giriş bölgesi hızlandırıcısının bir parçası olarak atanan tüm ilkelerin bir alt kümesi gösterilir. Azure giriş bölgesi başvuru uygulaması tarafından atanabilecek ilkelerin tam listesi için bkz. Azure giriş bölgeleri başvuru uygulamalarına dahil edilen ilkeler.

Azure giriş bölgeleri bicep deposu modülerdir. Yukarıdaki varsayılan ilkeler ALZ Varsayılan İlke Atamaları modülüyle dağıtılabilir.

Atanan tüm ilkeler sizin ve giriş bölgesi sahiplerinin uyumlu kalmasına yardımcı olur. DINE veya Değiştirme ilkeleri aracılığıyla gerçek iş yükü kaynağı dağıtılmaz. Bunu da önermiyoruz. Daha fazla bilgi için bkz. İş yüklerini dağıtmak için Azure İlkesi kullanmalı mıydık?. Yalnızca yardımcı veya destekleyici kaynaklar veya ayarlar bu DINE ilkeleri tarafından dağıtılır veya yapılandırılır.

Azure giriş bölgeleri başvuru uygulamaları, Azure ortamınızda ilke temelli idare elde etmeye yardımcı olmak için DINE Azure ilkelerini kullanır. Ancak, DINE veya Değiştirme ilkelerini kullanamazsınız veya aşağıdaki nedenlerden dolayı bu tür Azure ilke etkisini etkinleştirmeye hazır değilsinizdir:

  • Mevzuat uyumluluğu ilkeleri, standartları veya yasa kısıtlamaları.
  • Azure ortamınızdaki her eylem için insan onayı gerektiren katı değişiklik denetimi işlemleri.
  • DINE ilkelerini yönetme ve kullanma konusunda uzmanlık, deneyim ve anlayış eksikliği.
  • Yardımcı kaynaklar, destekleyici kaynaklar ve ayarlar da dahil olmak üzere tüm iş yükü kaynak yapılandırmasının, iş yükü uygulama ekipleri tarafından Kod Olarak Altyapı (IaC) bölümünde tanımlandığı kurumsal gereksinimler.

Önceki örneklere veya benzer senaryolara uyuyorsanız, bu makale Azure giriş bölgesi kavramsal mimarisini benimsemeyi ve tasarım ilkelerine uymayı anlamanıza yardımcı olur. Başlangıçta belirli ilkeleri kullanmasanız da, gelecekte bunları aşamalı olarak etkinleştirmeyi seçebilirsiniz. Amaç, ilke temelli idareye ulaşmanıza yardımcı olmaktır.

Önemli

Bu makale boyunca, zorlama modu terimleri için kullanılan iki olası değer göreceksiniz:

  • Devre dışı veya DoNotEnforce
  • Etkin veya Varsayılan

Azure portal zorlama modu için Devre Dışı ve Etkin'i kullanır. Azure Resource Manager (ARM) şablonları ve diğer API arabirimleri aynı seçenekler için DoNotEnforce ve Default kullanır.

Daha fazla bilgi için bkz . Zorlama modu.

Kuruluşunuzun DINE veya Değiştirme ilkelerini kullanamadığını hala düşünüyorsanız, bu makalede ilkelerin Azure ortamınızda otomatik değişiklikler yapmasını nasıl önleyebileceğiniz (devre dışı bırakma olarak da bilinir) açıklanmaktadır.

Not

Bu işlem kalıcı değil. Daha sonra DINE veya Değiştirme ilkelerini kullanmaya karar verirseniz, ilkeler platform ekibinizin bir üyesi tarafından herhangi bir zamanda yeniden etkinleştirilebilir.

Daha fazla bilgi için bkz . 2 . aşama ve 3. aşama.

Yaklaşıma genel bakış

Aşağıdaki diyagramda önerilen aşamalı yaklaşım özetlemektedir:

DINE aşamalarına genel bakış gösteren grafik.

  1. İlke atamalarında zorlama modunu olarak DoNotEnforce ayarlayın:
    • Bu özelliği kullanarak, atamaların davranışını değiştirerek temel ilke tanımını değiştirmeden yalnızca denetim ilkesi haline gelebilirsiniz.
    • Bu yaklaşım, isterseniz düzeltme görevlerini kullanarak uyumsuz kaynaklarda el ile düzeltme görevleri gerçekleştirmenize de olanak tanır.
  2. DINE ilke atamalarının otomatik düzeltmesini azaltılmış bir kapsamda yeniden etkinleştirmek için ilke atamalarında zorlama modunuDefault olarak ayarlayın:
    • Korumalı alan yönetim grubu gibi bir ortamın tamamını kullanmayı seçebilirsiniz.
    • Öte yandan kritik olmayan bir iş yükü aboneliği de kullanabilirsiniz.
  3. Azure ortamının tamamında kalan DINE ilkelerinde ilke atamalarında zorlama modunuDefault olarak ayarlayın.

Mevzuat uyumluluğu kısıtlamaları nedeniyle bazı müşteriler asla 1. aşamayı geçemez. Bu bir sorun değildir ve gerekirse bu durumda kalması desteklenir. Diğer müşteriler, Azure ortamlarında ilke temelli idareye yardımcı olmak üzere DINE ve Değiştirme ilkelerini tam olarak benimsemek için 2. ve 3. aşamalara ilerleyebilir.

Not

Bu makalede açıklanan senaryo ve yaklaşım, müşterilerin çoğuna yönelik değildir veya bunlar için önerilmez. Bu ilkelerin ortamınız için uygun ve gerekli olup olmadığına karar vermeden önce Neden DINE ve Modify ilkelerini kullanmalısınız? bölümünü gözden geçirin.

1. Aşama: DINE'yi devre dışı bırakma ve İlkeleri değiştirme otomatik eylemleri

Bir ilke atadığınızda, varsayılan olarak ilke tanımında tanımlanan etki uygulanır. İlke tanımını olduğu gibi bırakmanızı öneririz. Örneğin, ilke atama efektini olarak DeployIfNotExistsbırakın.

İlke tanımını veya etkisini değiştirmek yerine, ilke atamalarında özelliğini kullanarak bu davranışı en az çabayla etkileyebilirsiniz.

Zorlama modunu Devre Dışı olarak ayarlamak için Azure portal kullanın

Bu ekran görüntüsünde, ilke ataması üzerinde zorlama modunu Devre Dışı olarak ayarlamak için Azure portal nasıl kullanılacağı gösterilmektedir. Disabled, DoNotEnforce olarak da bilinir.

Azure portal zorlama modunu Devre Dışı olarak ayarlayın.

Zorlama modunu DoNotEnforce olarak ayarlamak için ARM şablonunu kullanma

Bu kod örneği, ilke ataması üzerinde olarak ayarlamak enforcementModeDoNotEnforce için ARM şablonunun nasıl kullanılacağını gösterir. DoNotEnforce olarak Disabledda bilinir.

{
  "type": "Microsoft.Authorization/policyAssignments",
  "apiVersion": "2019-09-01",
  "name": "PolicyAssignmentName",
  "location": "[deployment().location]",
  "properties": {
    "description": "PolicyAssignmentDescription",
    "policyDefinitionId": "[parameters('policyDefinitionId')]",
    "enforcementMode": "DoNotEnforce"
    … // other properties removed for display purposes
  }
}

Zorlama modunu kullanarak, ilkeyi başlatmadan veya Azure Etkinlik günlüğünde girdileri tetiklemeden ilkenin mevcut kaynaklar üzerindeki etkisini görebilirsiniz. Bu senaryo genellikle "What If" olarak adlandırılır ve güvenli dağıtım uygulamalarıyla uyumlu hale gelir.

Zorlama modu olarak DoNotEnforceayarlandığında bile düzeltme görevleri el ile tetiklenebilir. Uyumlu olmayan belirli kaynakları düzeltebilirsiniz. Zorlama modu olarak ayarlandığında DefaultDINE veya Modify ilkesinin ne yapacağını da görebilirsiniz.

Önemli

Zorlama modu olarak ayarlandığında DoNotEnforce, Azure Etkinlik günlüğündeki girdiler oluşturulmaz. Uyumsuz bir kaynak oluşturulduğunda bildirim almak istiyorsanız bu faktörü göz önünde bulundurun.

1. aşama durumunda kalıcı olarak kalma

Yaklaşıma genel bakış bölümünde belirtildiği gibi, bazı müşterilerin gereksinimleri nedeniyle 1. aşamada uzun bir süre hatta kalıcı olarak kalması gerekebilir. Bu durum geçerlidir ve müşteriler bu durumda herhangi bir süre kalabilir.

Belki de bu durumda kalıcı olarak veya uzun bir süre, örneğin yıllar boyunca kalmanız gerekir. Öyleyse, (AINE) ilke etkisini ve ilişkili tanımları benimsemeniz AuditIfNotExists ve zorlama modunu yeniden olarak Defaultayarlamanız daha iyi olabilir.

Not

AINE ilkesini kullanmaya geçerek ve zorlama modunu olarak Defaultayarlayarak DINE'yi devre dışı bırakmak için de aynı hedefe ulaşırsınız.

DINE'den AINE'ye Default geçtiğinizde ve zorlama modunu 1. aşama için uzun vadeli veya kalıcı bir yaklaşım olarak ayarladığınızda, ilke uyumluluk durumları için Azure Etkinlik günlüğü girişlerini geri alırsınız. Genel platform yönetimi işlemlerinizde bu günlük girdilerinden otomasyon iş akışları oluşturabilirsiniz.

El ile düzeltme görevlerini yapma yeteneğinizi kaybedersiniz. DINE ilkelerinin aksine, AINE ilkeleri otomatik veya el ile herhangi bir dağıtım gerçekleştirmez.

İlke tanımını ilke atama etkisini kabul edip izin verecek AuditIfNotExists şekilde güncelleştirmeyi unutmayın.

Aşağıdaki tabloda, farklı türlerdeki ilke etkileri ve zorlama modu bileşimleri için seçenekler ve etkileri özetlenmiştir:

İlke etkisi Zorlama modu Etkinlik günlüğü girdisi Düzeltme işlemi
Yemek yiye Etkin veya Varsayılan Yes Oluşturma veya kaynak güncelleştirme sonrasında büyük ölçekte platform tarafından tetiklenen düzeltme. İlke ataması öncesinde bağımlı kaynak değiştirildiyse veya önceden var olduğunda düzeltme görevinin el ile oluşturulması gerekir.
Yemek yiye Devre dışı veya DoNotEnforce Hayır Düzeltme görevinin el ile oluşturulması gerekir.
Değiştir Etkin veya Varsayılan Yes Oluşturma veya güncelleştirme sırasında otomatik düzeltme.
Değiştir Devre dışı veya DoNotEnforce Hayır Düzeltme görevinin el ile oluşturulması gerekir.
Reddet Etkin veya Varsayılan Yes Oluşturma veya güncelleştirme reddedildi.
Reddet Devre dışı veya DoNotEnforce Hayır Oluşturma veya güncelleştirmeye izin verilir. El ile düzeltme gereklidir.
Denetim/AINE Etkin veya Varsayılan Yes El ile düzeltme gereklidir.
Denetim/AINE Devre dışı veya DoNotEnforce Hayır El ile düzeltme gereklidir.

Not

İlke durumu olaylarını temel alarak kendi otomasyonunuzu oluşturmayı planlıyorsanız Azure İlkesi ile Azure Event Grid tümleştirmesinin uygun bir yaklaşım sağlayıp sağlamadiğini anlamak için Azure İlkesi durum değişikliği olaylarına tepki verme bölümündeki kılavuzu gözden geçirin.

2. Aşama: Belirli bir ilkede veya azaltılmış kapsamda DINE ve Değiştirme ilkelerini etkinleştirme

Bu aşamada, ilke atamalarında zorlama modunu olarak ayarlamayı Default öğreneceksiniz.

1. aşamayı tamamladıktan sonra, DINE ve Değiştirme ilkelerinin tam otomasyon özelliklerini belirli bir ilkede veya azaltılmış bir kapsamda test etmek ve denemek istediğinize karar verirsiniz. Korumalı alan yönetim grubunu veya üretim dışı iş yükü aboneliğini kullanmak istiyorsunuz.

Bu yordamı gerçekleştirmek için öncelikle DINE ve Modify ilkelerinin tam otomasyon özelliklerini test etmek ve denemek için kullanılacak ilkeyi veya azaltılmış kapsamı tanımlamanız gerekir.

Not

Kurumsal ölçekli bir platform için bir test yaklaşımını gözden geçirmek ve uygulamak isteyebilirsiniz. Bu şekilde, ilkeleri ve diğer platform değişikliklerini aynı kiracı içindeki ayrılmış bir yönetim grubu hiyerarşisinde test edebilirsiniz.

Bu yaklaşım "kanarya" dağıtımı olarak da bilinir.

Bazı önerilen kapsam ve ilke örnekleri aşağıdaki tabloda gösterilmiştir:

İstediğiniz zaman... ... bu kapsamlardan birini seçin Kullanılacak örnek ilkeler
- DINE'yi test edin/Otomatik düzeltme özelliklerini değiştirin.
- Tüm dağıtım işlemlerinizin ve testler de dahil olmak üzere CI/CD işlem hatlarınızın nasıl etkilenebileceğini doğrulayın.
- İş yükünüzün nasıl etkilenebileceğini doğrulayın.
- Korumalı alan aboneliği
- Korumalı alan yönetim grubu
- Üretim dışı iş yükü giriş bölgesi aboneliği
- Kurumsal ölçekli "kanarya" ortamı
- Azure Etkinlik günlüklerini belirtilen Log Analytics çalışma alanına akışla aktaracak şekilde yapılandırın.
- Bulut için Defender yapılandırmasını dağıtma.
- VM'ler için Azure İzleyici veya Sanal Makine Ölçek Kümeleri etkinleştirin.
- Tanılama ayarlarını Azure hizmetlerine dağıtın.
- Potansiyel olarak yalnızca girişim içindeki belirli hizmetler için etkinleştirebilirsiniz.

Ayrıca, bu ilkelerin ortamınızı nasıl etkileyeceğini test etmek için sınırlı bir kapsamda veya kaynak kümesinde el ile düzeltme görevi kullanmaya karar verebilirsiniz. Düzeltme görevi oluşturma hakkında daha fazla bilgi için düzeltme görevi oluşturma Azure İlkesi belgelerine bakın.

Bir ilkeyi veya ilkeleri belirledikten ve bunları atamak için kapsamı azalttığınızda, sonraki adım ilkeyi atamak ve zorlama modunu olarak ayarlamaktır Default. İlke efektini ( örneğin, DeployIfNotExists veya Modify) seçtiğiniz azaltılmış kapsamda olduğu gibi bırakın.

Zorlama modunu Etkin olarak ayarlamak için Azure portal kullanın

Bu ekran görüntüsünde, zorlama modunu ilke ataması üzerinde Etkin olarak ayarlamak için Azure portal nasıl kullanılacağı gösterilmektedir. Etkin, Varsayılan olarak da bilinir.

Azure portal zorlama modunu Etkin olarak ayarlamayı gösteren ekran görüntüsü.

Zorlama modunu Varsayılan olarak ayarlamak için ARM şablonu kullanma

Bu kod örneği, ilke ataması üzerinde olarak ayarlamak enforcementModeDefault için ARM şablonunun nasıl kullanılacağını gösterir. Default olarak Enabledda bilinir.

{
  "type": "Microsoft.Authorization/policyAssignments",
  "apiVersion": "2019-09-01",
  "name": "PolicyAssignmentName",
  "location": "[deployment().location]",
  "properties": {
    "description": "PolicyAssignmentDescription",
    "policyDefinitionId": "[parameters('policyDefinitionId')]",
    "enforcementMode": "Default"
    … // other properties removed for display purposes
  }
}

Test Etme

Bu aşamadaki son adım, gerekli testi yapmaktır. DINE veya Modify ilkelerinin iş yüklerinizi, kodunuzu, araçlarınızı ve işlemlerinizi etkileyip etkilemediğini ve değişiklik yapıp yapmadığını doğrulamak istiyorsunuz.

İş yükünüzün yaşam döngüsünün tamamını yakalamak için birden çok test gerçekleştirin. DINE veya Değiştirme ilkelerinin değişiklik yapıp yapmamasını ve nasıl yaptığını tam olarak anladığınızdan emin olmak istiyorsunuz.

Bazı test örnekleri şunlardır:

  • İş yükünün ilk dağıtımı.
  • İş yüküne kod/uygulama dağıtımı.
  • İş yükünün 2. gün işlemleri ve yönetimi.
  • İş yükünün yetkisini alma.

3. Aşama: DINE'yi etkinleştirme ve ilkeleri her yerde değiştirme

Bu aşamada, ilke atamalarında zorlama modunu olarak ayarlamayı Default öğreneceksiniz.

2. aşamanın sonundaki testinizin başarıyla geçtiğini varsayıyoruz. Öte yandan, DINE veya Değiştirme ilkelerinin iş yükünüzle nasıl etkileşim kurduğunu artık anladığınıza memnun olabilirsiniz. Artık DINE ve Değiştirme ilkelerinin kullanımını Azure ortamınızın geri kalanında genişletebilirsiniz.

Devam etmek için, 2. aşamadaki adımlara benzer adımları izleyin. Bu kez, tüm Azure ortamınızda tüm DINE ve Değiştirme ilke atamalarında zorlama modunu Default olarak ayarlarsınız.

Bu aşamada gerçekleştirdiğiniz adımlara üst düzey bir genel bakış aşağıdadır:

  • 2. aşama sırasında özellikle test için kullanılan atamaları kaldırın.
  • Azure ortamınızdaki her DINE ve Değiştirme ilkesi atamasını gözden geçirin ve zorlama modunu olarak Defaultayarlayın. Bu işlem 2. aşamadaki örneklerde gösterilmiştir.
  • Düzeltme görevi oluşturma bölümündeki yönergeleri izleyerek uyumsuz olan mevcut kaynaklar için düzeltme görevleri oluşturun. İlke kuralları ve varoluş koşullarıyla eşleşiyorsa yeni kaynaklar otomatik olarak düzeltilecektir.

3. aşamada, Azure ortamınızdaki tüm DINE ve Değiştirme ilkeleri için zorlama modunu Default olarak ayarlamanızı öneririz, ancak bu seçenek yine de isteğe bağlıdır. Bu seçimi ihtiyaçlarınıza ve gereksinimlerinize uygun olarak ilke temelinde yapabilirsiniz.