고객 관리형 키 회전 및 철회
이 문서는 4부로 구성된 자습서 시리즈의 3부입니다. 1부에서는 레지스트리에서 키를 사용하도록 설정하기 전에 고객 관리형 키, 기능 및 고려 사항에 대한 개요를 제공합니다. 2부에서는 Azure CLI, Azure Portal 또는 Azure Resource Manager 템플릿을 사용하여 고객 관리형 키를 사용하도록 설정하는 방법을 알아봅니다. 이 문서에서는 고객 관리형 키를 순환, 업데이트 및 해지하는 작업을 안내합니다.
고객 관리형 키 회전
키를 회전하려면 Azure Key Vault에서 키 버전을 업데이트하거나 새 키를 만들 수 있습니다. 키를 순환하는 동안 레지스트리를 만드는 데 사용한 것과 동일한 ID를 지정할 수 있습니다.
필요에 따라 다음을 수행할 수 있습니다.
- 키에 액세스하도록 새 사용자 할당 ID를 구성합니다.
- 레지스트리의 시스템이 할당한 ID를 사용하도록 설정하고 지정합니다.
참고 항목
포털에서 레지스트리의 시스템이 할당한 ID를 사용하도록 설정하려면 설정>ID를 선택하고 시스템이 할당한 ID의 상태를 켜기로 설정합니다.
필요한 Key Vault 액세스가 키 액세스를 위해 구성하는 ID에 설정되어 있는지 확인하세요.
Azure CLI를 사용하여 키 버전 만들기 또는 업데이트
새 키 버전을 생성하려면 az keyvault key create 명령을 실행합니다.
# Create new version of existing key
az keyvault key create \
--name <key-name> \
--vault-name <key-vault-name>
키 버전 업데이트를 검색하도록 레지스트리를 구성하면 고객 관리형 키가 1시간 이내에 자동으로 업데이트됩니다.
새 키 버전을 수동으로 업데이트하도록 레지스트리를 구성하는 경우 az-acr-encryption-rotate-key 명령을 실행합니다. 새 키 ID 및 구성하려는 ID를 전달합니다.
팁
az-acr-encryption-rotate-key
를 실행할 때 버전이 지정된 키 ID 또는 버전이 지정되지 않은 키 ID를 전달할 수 있습니다. 버전이 지정되지 않은 키 ID를 사용하는 경우 레지스트리는 나중에 키 버전 업데이트를 자동으로 검색하도록 구성됩니다.
고객 관리형 키 버전을 수동으로 업데이트하는 방법에는 다음 세 가지가 있습니다.
- 키를 순환하고 관리 ID의 클라이언트 ID를 사용합니다.
다른 키 자격 증명 모음의 키를 사용하는 경우 identity
에 해당 키 자격 증명 모음에 대한 get
, wrap
및 unwrap
권한이 있는지 확인합니다.
az acr encryption rotate-key \
--name <registry-name> \
--key-encryption-key <new-key-id> \
--identity <client ID of a managed identity>
- 키를 순환하고 사용자 할당 ID를 사용합니다.
사용자가 할당한 ID를 사용하기 전에 해당 ID에 할당된 get
, wrap
, unwrap
권한을 확인합니다.
az acr encryption rotate-key \
--name <registry-name> \
--key-encryption-key <new-key-id> \
--identity <id of user assigned identity>
- 키를 순환하고 시스템 할당 ID를 사용합니다.
시스템이 할당한 ID를 사용하기 전에 해당 ID에 할당된 get
, wrap
및 unwrap
권한을 확인합니다.
az acr encryption rotate-key \
--name <registry-name> \
--key-encryption-key <new-key-id> \
--identity [system]
Azure Portal을 사용하여 키 버전을 만들거나 업데이트합니다.
레지스트리의 암호화 설정을 사용하여 고객 관리형 키에 대한 Key Vault, 키 또는 ID 설정을 업데이트합니다.
예를 들어 새 키를 구성하려면 다음을 수행합니다.
포털에서 레지스트리로 이동합니다.
설정 아래에서 암호화>키 변경을 차례로 선택합니다.
암호화에서 다음 옵션 중 하나를 선택합니다.
- Key Vault에서 선택을 선택하고 기존 Key Vault 및 키 또는 새로 만들기를 선택합니다. 선택한 키는 버전이 지정되지 않으며 자동 키 순환을 사용하도록 설정합니다.
- 키 URI 입력을 선택하고 키 식별자를 직접 제공합니다. 버전이 지정된 키 URI(수동으로 순환해야 하는 키의 경우) 또는 버전이 지정되지 않은 키 URI(자동 키 순환을 사용하는 경우)를 제공할 수 있습니다.
키 선택을 완료하고, 저장을 선택합니다.
고객 관리형 키 철회
고객 관리형 암호화 키는 액세스 정책을 변경하거나 Key Vault에 대한 권한을 변경하거나 키를 삭제하여 해지할 수 있습니다.
레지스트리에서 사용하는 관리 ID의 액세스 정책을 변경하려면 az-keyvault-delete-policy 명령을 실행합니다.
az keyvault delete-policy \
--resource-group <resource-group-name> \
--name <key-vault-name> \
--object-id <key-vault-key-id>
키의 개별 버전을 삭제하려면 az-keyvault-key-delete 명령을 실행합니다. 이 작업에는 ‘키/삭제’ 권한이 필요합니다.
az keyvault key delete \
--name <key-vault-name> \
--
--object-id $identityPrincipalID \
참고 항목
고객 관리형 키를 철회하면 모든 레지스트리 데이터에 대한 액세스가 차단됩니다. 키에 대한 액세스를 사용하도록 설정하거나 삭제된 키를 복원하면 레지스트리에서 키를 선택하고 사용자는 암호화된 레지스트리 데이터에 대한 액세스를 다시 제어할 수 있습니다.
다음 단계
관리 ID를 제거할 때 발생하는 오류, 403 오류, 실수로 인한 키 삭제와 같은 가장 일반적인 문제를 해결하려면 다음 자습서로 계속 진행하세요.