Azure 컨테이너 레지스트리의 리소스 잠금 점검

레지스트리의 우발적인 삭제나 관리 설정 변경을 방지하도록 필요한 리소스 잠금을 적용하세요.

설명

Azure 리소스 잠금은 레지스트리의 관리 작업을 제한합니다. CanNotDelete는 삭제를, ReadOnly는 삭제와 수정을 제한합니다. 상위 리소스 그룹이나 구독의 잠금도 상속됩니다.

레지스트리 리소스 잠금은 이미지 생성·덮어쓰기·삭제를 막지 않습니다. 이미지 보호에는 별도의 이미지 특성과 접근 권한을 사용하세요.

잠재적 영향

필요한 잠금이 없다면 관리 권한을 가진 사용자의 실수로 레지스트리가 삭제되거나 설정이 변경되어 이미지 가져오기와 배포가 중단될 수 있습니다.

해결 방법

실제 레지스트리와 상위 범위의 잠금을 확인한 뒤 운영에 필요한 수준을 선택하세요. Ansible의 can_not_delete는 삭제 방지, read_only는 읽기 전용 잠금입니다. 그룹 전체의 읽기 전용 잠금은 다른 리소스의 업데이트도 제한하므로 적용 범위를 확인하세요.

예시

기존 myResourceGroup에 레지스트리를 만들고 그룹 수준 잠금을 추가하는 예시입니다. 레지스트리 이름은 전역에서 고유해야 합니다.

변경 전

yaml
- name: Create an azure container registry
  azure_rm_containerregistry:
    name: myRegistry
    location: eastus
    resource_group: myResourceGroup
    admin_user_enabled: true
    sku: Premium

레지스트리를 생성하는 설정에 리소스 잠금은 포함되어 있지 않습니다.

변경 후

yaml
- name: Create an azure container registry
  azure_rm_containerregistry:
    name: myRegistry
    location: eastus
    resource_group: myResourceGroup
    admin_user_enabled: true
    sku: Premium

- name: Create a lock for a resource group
  azure_rm_lock:
    resource_group: myResourceGroup
    name: myLock
    level: read_only

리소스 그룹에 읽기 전용 잠금을 추가합니다. 레지스트리와 그룹 내 다른 리소스의 관리 변경이 제한되며, 이미지 작업은 별도의 권한으로 관리합니다.

참조