Azure CLI를 사용하여 서비스 주체로 로그인

서비스 주체는 특정 사용자에 연결되지 않은 계정으로, 미리 정의된 역할을 통해 할당된 권한을 가질 수 있습니다. 서비스 주체를 사용하여 인증하는 것이 보안 스크립트 또는 프로그램을 작성하는 가장 좋은 방법이므로 권한 제한과 로컬로 저장된 정적 자격 증명 정보를 모두 적용할 수 있습니다. 서비스 주체에 대한 자세한 내용은 Azure CLI를 사용하여 Azure 서비스 주체 작업을 참조하세요.

서비스 주체로 로그인하려면 다음이 필요합니다.

  • 서비스 주체와 연결된 URL 또는 이름
  • 서비스 주체 암호 또는 PEM 형식으로 서비스 주체를 만드는 데 사용되는 X509 인증서
  • 할 일기본 또는 Azure 개체 ID와 같이 .onmicrosoft.com 서비스 주체와 연결된 테넌트

서비스 주체와 Azure CLI를 사용할 때는 다음 두 가지 중요한 사실을 확인합니다.

  • PEM 파일 내의 PRIVATE KEY인증서를 추가해야 합니다. PEM 파일 형식의 예제는 인증서 기반 인증을 참조하세요.

  • 서비스 주체가 Key Vault에 저장된 인증서를 사용하는 경우 Azure에 로그인하지 않고 해당 인증서의 프라이빗 키를 사용할 수 있어야 합니다. 인증서 az login를 검색하려면 Key Vault에서 인증서 검색을 참조 하세요.

az login --service-principal -u <app-id> -p <password-or-cert> --tenant <tenant>

Important

콘솔에 암호를 표시하지 않고 대화형으로 사용 az login 하려는 경우 아래 bash명령을 사용합니다read -s.

read -sp "Azure password: " AZ_PASS && echo && az login --service-principal -u <app-id> -p $AZ_PASS --tenant <tenant>

PowerShell에서 Get-Credential cmdlet을 사용합니다.

$AzCred = Get-Credential -UserName <app-id>
az login --service-principal -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password --tenant <tenant>

참고 항목