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 bir 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 durumu olarak ayarlandığında disabledözelliği, kullanıcı şunları yapmaya çalıştığında yapıtların ağ ile kısıtlanmış bir kayıt defterinden dışarı aktarılması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ı devre dışı bırakıldığında, 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şimi engellenmez. 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.

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ılması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 olarak disabledayarlanmalı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 disabledayarlamadan önce, kayıt exportPolicy 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ştiremezsiniz exportPolicy .

Mevcut 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ılmasına izin verir. ARM şablonu veya az resource update komutu kullanarak durumu disabled olarak güncelleştirebilirsiniz.

ARM şablonu

Durumu güncelleştirmek exportPolicy ve özelliğini disabledolarak ayarlamak için aşağıdaki JSON kodunu publicNetworkAccess 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 disabledayarlamak 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 disabledolarak 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 defterinde durumu devre dışı bırakdıktan exportPolicy sonra arm şablonu veya az resource update komutu kullanarak istediğiniz zaman yeniden etkinleştirebilirsiniz.

ARM şablonu

Durumunu enabledolarak güncelleştirmek için aşağıdaki JSON kodunu exportPolicy 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": {
     "policies": {
        "exportPolicy": {
          "status": "enabled"
         }
      }
      }
    }
]
[...]
}

Azure CLI

Durumu enabledolarak 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