Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Azure Blueprints (Önizleme) 31 Ocak 2027'de kullanımdan kaldırılacak ve 31 Temmuz 2026'da aşamalı kullanımdan kaldırılacaktır. Mevcut şema tanımlarınızı ve atamalarınızı Dağıtım Yığınlarına (önerilen) ve Şablon Belirtimlerine geçirin. Şema yapıtları, dağıtım yığınlarını tanımlamak için kullanılan ARM JSON şablonlarına veya Bicep dosyalarına dönüştürülür. Aşamalı zaman çizelgesinin tamamı, etkiler ve SSS için Azure Blueprints'in kullanımdan kaldırılması sayfasına veya https://aka.ms/AzureBlueprintsRetirement bakın. Bir yapıtı ARM kaynağı olarak yazmayı öğrenmek için bkz:
Tutarlı ortamların büyük ölçekte oluşturulması yalnızca bu tutarlılığı korumak için bir mekanizma varsa gerçekten değerlidir. Bu makalede Azure Blueprints'te kaynak kilitlemenin nasıl çalıştığı açıklanmaktadır. Kaynak kilitleme ve reddetme atamalarının uygulanmasına ilişkin bir örnek görmek için yeni kaynakları koruma öğreticisine bakın.
Uyarı
Azure Blueprints tarafından dağıtılan kaynak kilitleri yalnızca şema ataması tarafından dağıtılan uzantı dışı kaynaklara uygulanır. Zaten var olan kaynak gruplarındakiler gibi mevcut kaynaklara kilit eklenmez.
Modları ve durumları kilitleme
Kilitleme Modu, şema ataması için geçerlidir ve üç seçeneği vardır: Kilitleme, Salt Okunur veya Silme. Kilitleme modu, taslak ataması sırasında eser dağıtımı esnasında yapılandırılır. Şema ataması güncelleştirilerek farklı bir kilitleme modu ayarlanabilir. Ancak kilitleme modları Azure Blueprints dışında değiştirilemez.
Plan atamasında nesneler tarafından oluşturulan kaynakların dört durumu vardır: Kilitli Değil, Salt Okunur, Düzenlenemez/Silinemaz veya Silinemaz. Her yapıt türü Kilitli Değil durumunda olabilir. Aşağıdaki tablo bir kaynağın durumunu belirlemek için kullanılabilir:
| Çalışma Modu | Yapıt Kaynak Türü | Devlet | Description |
|---|---|---|---|
| Kilitleme | * | Kilitli Değil | Kaynaklar Azure Blueprints tarafından korunmaz. Bu durum, şema ataması dışından Salt Okunur veya Silinemez kaynak grubu eserine eklenen kaynaklar için de kullanılır. |
| Yalnızca Okuma | Kaynak grubu | Düzenlenemiyor/Silinemiyor | Kaynak grubu salt okunurdur ve etiketler dışındaki tüm özellikleri değiştirilemez. Kilitli olmayan kaynaklar bu kaynak grubundan eklenebilir, taşınabilir, değiştirilebilir veya silinemez. |
| Yalnızca Okuma | Kaynak dışı grup | Yalnızca Okuma | Etiketler dışında kaynak değiştirilemez ve silinemez. |
| Silmeyin | * | Silinemiyor | Kaynaklar değiştirilebilir, ancak silinemez. Kilitli olmayan kaynaklar bu kaynak grubundan eklenebilir, taşınabilir, değiştirilebilir veya silinemez. |
Kilitleme durumlarını geçersiz kılma
Genellikle abonelikte uygun Azure rol tabanlı erişim denetimine (Azure RBAC) sahip birinin ( örneğin, 'Sahip' rolü) herhangi bir kaynağı değiştirmesine veya silmesine izin verilebilir. Azure Blueprints dağıtılan atamanın bir parçası olarak kilitleme uyguladığında bu erişim söz konusu değildir. Eğer atama Yalnızca Okunur veya Silinemez seçeneğiyle ayarlandıysa, abonelik sahibi bile korumalı kaynakta engellenen eylemi gerçekleştiremez.
Bu güvenlik önlemi, tanımlanan şemanın tutarlılığını ve yanlışlıkla veya programlı silme veya değiştirme işleminden oluşturmak üzere tasarlandığı ortamı korur.
Yönetim grubunda atama
Abonelik sahiplerinin şema atamasını kaldırmasını önlemenin tek seçeneği şemayı bir yönetim grubuna atamaktır. Bu senaryoda, şema atamasını kaldırmak için gereken izinlere yalnızca yönetim grubunun sahipleri sahip olur.
Şemayı abonelik yerine bir yönetim grubuna atamak için REST API çağrısı şöyle görünür:
PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/{assignmentMG}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}?api-version=2018-11-01-preview
tarafından {assignmentMG} tanımlanan yönetim grubu, yönetim grubu hiyerarşisinde veya şema tanımının kaydedildiği aynı yönetim grubu olmalıdır.
Şema atamasının (blueprint) istek gövdesi şöyle görünür:
{
"identity": {
"type": "SystemAssigned"
},
"location": "eastus",
"properties": {
"description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.",
"blueprintId": "/providers/Microsoft.Management/managementGroups/{blueprintMG}/providers/Microsoft.Blueprint/blueprints/simpleBlueprint",
"scope": "/subscriptions/{targetSubscriptionId}",
"parameters": {
"storageAccountType": {
"value": "Standard_LRS"
},
"costCenter": {
"value": "Contoso/Online/Shopping/Production"
},
"owners": {
"value": [
"johnDoe@contoso.com",
"johnsteam@contoso.com"
]
}
},
"resourceGroups": {
"storageRG": {
"name": "defaultRG",
"location": "eastus"
}
}
}
}
Bu istek gövdesi ile bir aboneliğe atanmış olan arasındaki temel fark, properties.scope özelliğidir. Bu gerekli özellik şema atamasının uygulandığı aboneliğe ayarlanmalıdır. Abonelik, şema atamasının depolandığı yönetim grubu hiyerarşisinin doğrudan alt öğesi olmalıdır.
Uyarı
Yönetim grubu kapsamına atanmış bir şema, abonelik düzeyi şema ataması olarak çalışmaya devam eder. Tek fark, abonelik sahiplerinin atamayı ve ilişkili kilitleri kaldırmasını önlemek için şema atamasının depolandığı yerdir.
Kilitleme durumları kaldırılıyor
Atamayla korunan bir kaynağın değiştirilmesi veya silinmesi gerekli hale gelirse, bunu yapmanın iki yolu vardır.
- Şema atamasını Kilitlenmemiş moduna güncelleme
- Şema atamasını silme
Atama kaldırıldığında Azure Blueprints tarafından oluşturulan kilitler kaldırılır. Ancak, kaynak geride bırakılır ve normal yollarla silinmesi gerekir.
Şema kilitleri nasıl çalışır?
Atanım Salt Okunur veya Silme seçeneğini belirlediyse, bir şema ataması sırasında yapıt kaynaklarına Azure RBAC reddetme atamaları uygulanır. Reddetme eylemi şema atamasının yönetilen kimliği tarafından eklenir ve yapıt kaynaklarından yalnızca aynı yönetilen kimlik tarafından kaldırılabilir. Bu güvenlik önlemi kilitleme mekanizmasını zorlar ve şema kilidinin Azure Blueprints dışında kaldırılmasını önler.
Her modun reddetme atama özellikleri aşağıdaki gibidir:
| Çalışma Modu | İzinler.Eylemler | İzinler.EylemlerDeğil | Sorumlular[i]. Türü | ExcludePrincipals[i]. Kimliği | Alt Kapsamlara Uygulama |
|---|---|---|---|---|---|
| Yalnızca Okuma | * |
*/read Microsoft.Authorization/locks/delete Microsoft.Network/virtualNetwork/subnets/join/action |
SystemDefined (Herkes) | excludedPrincipals içinde şema ataması ve kullanıcı tanımlı | Kaynak grubu - true; Kaynak - false |
| Silmeyin | */Silmek |
Microsoft.Authorization/locks/delete Microsoft.Network/virtualNetwork/subnets/join/action |
SystemDefined (Herkes) | excludedPrincipals içinde şema ataması ve kullanıcı tanımlı | Kaynak grubu - true; Kaynak - false |
Önemli
Azure Resource Manager rol atama ayrıntılarını 30 dakikaya kadar önbelleğe alır. Sonuç olarak, atamaları reddetme ve plan kaynaklarında eylemleri reddetme hemen tam olarak etkili olmayabilir. Bu süre boyunca, şema kilitleri tarafından korunması amaçlanan bir kaynağı silmek mümkün olabilir.
Bir sorumlusu reddetme atamasından dışlama
Bazı tasarım veya güvenlik senaryolarında, şema atamasının oluşturduğu engelleme atamasından bir prensibi dışlamak gerekebilir. Bu adım, atama oluşturulurkenlocks özelliğindeki excludedPrincipals dizisine beş adede kadar değer eklenerek REST API'de gerçekleştirilir. Aşağıdaki atama tanımı, excludedPrincipals içeren bir istek gövdesi örneğidir.
{
"identity": {
"type": "SystemAssigned"
},
"location": "eastus",
"properties": {
"description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.",
"blueprintId": "/providers/Microsoft.Management/managementGroups/{mgId}/providers/Microsoft.Blueprint/blueprints/simpleBlueprint",
"locks": {
"mode": "AllResourcesDoNotDelete",
"excludedPrincipals": [
"7be2f100-3af5-4c15-bcb7-27ee43784a1f",
"38833b56-194d-420b-90ce-cff578296714"
]
},
"parameters": {
"storageAccountType": {
"value": "Standard_LRS"
},
"costCenter": {
"value": "Contoso/Online/Shopping/Production"
},
"owners": {
"value": [
"johnDoe@contoso.com",
"johnsteam@contoso.com"
]
}
},
"resourceGroups": {
"storageRG": {
"name": "defaultRG",
"location": "eastus"
}
}
}
}
Reddedilme atamasından bir eylemi dışarıda bırakma
Bir şema atamasındaki reddetme atamasında bir sorumluluğu dışlamak gibi, belirli Azure kaynak sağlayıcı işlemlerini dışlayabilirsiniz. properties.locks bloğunun içinde excludedPrincipals ile aynı yerde excludedActions eklenebilir:
"locks": {
"mode": "AllResourcesDoNotDelete",
"excludedPrincipals": [
"7be2f100-3af5-4c15-bcb7-27ee43784a1f",
"38833b56-194d-420b-90ce-cff578296714"
],
"excludedActions": [
"Microsoft.ContainerRegistry/registries/push/write",
"Microsoft.Authorization/*/read"
]
},
excludedPrincipals açık olmalıdır, ancak excludedActions girdileri, kaynak sağlayıcısı işlemlerini joker karakter kullanarak eşleştirmek için *'den yararlanabilir.
Sonraki Adımlar
- Yeni kaynakları koruma öğreticisini izleyin.
- Şema yaşam döngüsü hakkında bilgi edinin.
- Statik ve dinamik parametrelerin nasıl kullanılacağını anlama.
- Şema sıralama sırasını özelleştirmeyi öğrenin.
- Mevcut atamaları nasıl güncelleştireceğinizi öğrenin.
- Genel sorun giderme ile şema ataması sırasındaki sorunları çözün.