설명
관리 ID를 사용하면 배포 슬롯이 앱 코드나 설정에 장기 자격 증명을 저장하지 않고 지원되는 Azure 리소스에 접근할 수 있습니다. 관리 ID는 슬롯별로 구성하므로 운영 앱과 스테이징 슬롯에 필요한 권한을 각각 검토해야 합니다.
잠재적 영향
별도 비밀정보나 액세스 키를 사용하면 유출과 교체 누락 위험, 자격 증명 관리 부담이 늘어날 수 있습니다.
해결 방법
관리 ID를 지원하는 리소스에 접근하는 슬롯에는 identity를 구성하세요. 운영 방식에 맞춰 SystemAssigned 또는 UserAssigned를 선택하고, 대상 리소스에 필요한 최소 권한만 부여하세요. 앱이 해당 ID로 토큰을 얻도록 변경한 뒤 기존 비밀정보를 제거하세요.
예시
Windows Web App 슬롯의 ID 설정만 비교합니다. 부모 앱과 대상 리소스의 권한 설정은 별도입니다.
변경 전
hcl
resource "azurerm_windows_web_app_slot" "example" {
name = "staging"
app_service_id = azurerm_windows_web_app.example.id
site_config {}
}
변경 후
hcl
resource "azurerm_windows_web_app_slot" "example" {
name = "staging"
app_service_id = azurerm_windows_web_app.example.id
site_config {}
identity {
type = "SystemAssigned"
}
}
변경 후에는 슬롯의 시스템 할당 관리 ID를 활성화합니다. ID 생성만으로 대상 데이터에 대한 접근 권한이 부여되거나 기존 코드의 인증 방식이 바뀌지는 않습니다.