Azure kapsayıcı kayıt defterinden yapıtları dışarı aktarmayı devre dışı bırakma
Bir kuruluştaki kayıt defteri kullanıcılarının sanal ağ dışındaki yapıtları kötü amaçlı olarak veya yanlışlıkla sızdırmasını önlemek için, dışarı aktarmaları devre dışı bırakmak için kayıt defterinin dışarı aktarma ilkesini yapılandırabilirsiniz.
Dışarı aktarma ilkesi, Premium kapsayıcı kayıt defterleri için API sürüm 2021-06-01-preview ile sunulan bir özelliktir. exportPolicy
özelliği, durumu olarak disabled
ayarlandığında, kullanıcı şunları yapmaya çalıştığında ağ ile kısıtlanmış bir kayıt defterinden yapıtların dışarı aktarımını engeller:
- Kayıt defterinin yapıtlarını başka bir Azure kapsayıcı kayıt defterine aktarma
- Yapıtları başka bir kapsayıcı kayıt defterine aktarmak için kayıt defteri dışarı aktarma işlem hattı oluşturma
Not
Yapıtların dışarı aktarılmasının devre dışı bırakılması, yetkili kullanıcıların yapıtları çekmek veya diğer veri düzlemi işlemlerini gerçekleştirmek için sanal ağ içindeki kayıt defterine erişimini engellemez. Bu kullanımı denetlemek için, kayıt defteri işlemlerini izlemek için tanılama ayarlarını yapılandırmanızı öneririz.
Önkoşullar
- Özel uç nokta ile yapılandırılmış bir Premium kapsayıcı kayıt defteri.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'de Bash için hızlı başlangıç.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz . Azure CLI ile oturum açma.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma.
Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Dışarı aktarmaları devre dışı bırakmak için diğer gereksinimler
Genel ağ erişimini devre dışı bırakma - Yapıtların dışarı aktarımını devre dışı bırakmak için, kayıt defterine genel erişim de devre dışı bırakılmalıdır (kayıt defterinin
publicNetworkAccess
özelliği olarakdisabled
ayarlanmalıdır). Dışarı aktarmayı devre dışı bırakmadan önce kayıt defterine genel ağ erişimini devre dışı bırakabilir veya aynı anda devre dışı bırakabilirsiniz.Kayıt defterinin genel uç noktasına erişimi devre dışı bırakarak, kayıt defteri işlemlerine yalnızca sanal ağ içinde izin verildiğinden emin olursunuz. Yapıtları çekmek ve diğer işlemleri gerçekleştirmek için kayıt defterine genel erişim yasaktır.
Dışarı aktarma işlem hatlarını kaldırma - Kayıt defterinin durumunu olarak
disabled
ayarlamadan önce, kayıtexportPolicy
defterinde yapılandırılmış olan tüm dışarı aktarma işlem hatlarını silin. İşlem hattı yapılandırıldıysa, durumu değiştiremezsinizexportPolicy
.
Var olan bir kayıt defteri için exportPolicy'yi devre dışı bırakma
Kayıt defteri oluşturduğunuzda, exportPolicy
durum varsayılan olarak olarak ayarlanır enabled
ve bu da yapıtların dışarı aktarılmalarına izin verir. ARM şablonunu veya az resource update
komutunu kullanarak durumu disabled
olarak güncelleştirebilirsiniz.
ARM şablonu
Durumu güncelleştirmek exportPolicy
ve özelliğini olarak ayarlamak için aşağıdaki JSON'yi publicNetworkAccess
disabled
ekleyin. ARM şablonlarıyla kaynakları dağıtma hakkında daha fazla bilgi edinin.
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"publicNetworkAccess": "disabled",
"policies": {
"exportPolicy": {
"status": "disabled"
}
}
}
}
]
[...]
}
Azure CLI
Mevcut bir kayıt defterindeki exportPolicy
durumu olarak disabled
ayarlamak için az resource update komutunu çalıştırın. Kayıt defterinizin ve kaynak grubunuzun adlarını yazın.
Bu örnekte gösterildiği gibi, özelliği devre dışı bırakırken exportPolicy
özelliğini disabled
olarak da ayarlayınpublicNetworkAccess
.
az resource update --resource-group myResourceGroup \
--name myregistry \
--resource-type "Microsoft.ContainerRegistry/registries" \
--api-version "2021-06-01-preview" \
--set "properties.policies.exportPolicy.status=disabled" \
--set "properties.publicNetworkAccess=disabled"
Çıkış, dışarı aktarma ilkesi durumunun devre dışı bırakıldığını gösterir.
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myregistry",
"identity": null,
"kind": null,
"location": "centralus",
"managedBy": null,
"name": "myregistry",
"plan": null,
"properties": {
[...]
"policies": {
"exportPolicy": {
"status": "disabled"
},
"quarantinePolicy": {
"status": "disabled"
},
"retentionPolicy": {
"days": 7,
"lastUpdatedTime": "2021-07-20T23:20:30.9985256+00:00",
"status": "disabled"
},
"trustPolicy": {
"status": "disabled",
"type": "Notary"
},
"privateEndpointConnections": [],
"provisioningState": "Succeeded",
"publicNetworkAccess": "Disabled",
"zoneRedundancy": "Disabled"
[...]
}
exportPolicy'yi etkinleştirme
Kayıt defterindeki exportPolicy
durumu devre dışı bırakdıktan sonra, arm şablonunu veya az resource update
komutunu kullanarak istediğiniz zaman yeniden etkinleştirebilirsiniz.
ARM şablonu
Durumunu olarak güncelleştirmek için aşağıdaki JSON'yi exportPolicy
enabled
ekleyin. ARM şablonlarıyla kaynak dağıtma hakkında daha fazla bilgi edinin
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"policies": {
"exportPolicy": {
"status": "enabled"
}
}
}
}
]
[...]
}
Azure CLI
Durumu enabled
olarak ayarlamak exportPolicy
için az resource update komutunu çalıştırın. Kayıt defterinizin ve kaynak grubunuzun adlarını yazın.
az resource update --resource-group myResourceGroup \
--name myregistry \
--resource-type "Microsoft.ContainerRegistry/registries" \
--api-version "2021-06-01-preview" \
--set "properties.policies.exportPolicy.status=enabled"
Sonraki adımlar
- Azure Container Registry rolleri ve izinleri hakkında bilgi edinin.
- Kayıt defteri yapıtlarının yanlışlıkla silinmesini önlemek istiyorsanız bkz . Kapsayıcı görüntülerini kilitleme.
- Azure kapsayıcı kayıt defterinizin güvenliğini sağlamak için yerleşik Azure ilkeleri hakkında bilgi edinin