
Azure CLI에서 로그인이 작동하는 방식을 알아내려고 합니다. 나는 이미 다음 계정으로 로그인했습니다:
az login
모든 것이 완벽하게 작동하는 것 같지만 다른 명령을 실행하려고 하면 다음과 같습니다.
az storage blob list --container-name my_container
보고서는 다음과 같습니다.
스토리지 서비스에 액세스하기 위한 자격 증명이 누락되었습니다.
Azure에서 자격 증명과 로그인이 작동하는 방식이 상당히 혼란스럽습니다. 액세스 토큰은 이미 로그인을 통해 부여되었으므로 다른 모든 명령은 추가 인증 없이도 작동하면 안 되나요? 그렇지 않다면 로그인의 요점은 무엇입니까?
답변1
cmdlet 이 az storage blob list --container-name my_container
불완전합니다. Azure Shell에서 명령을 실행하면 아래 오류 메시지가 표시됩니다. 자격 증명 누락 메시지가 반드시 필요한 것은 아니기 때문에 혼란을 야기할 수 있다는 점을 이해합니다. 하지만 목록의 숫자 3을 보면 지정된 컨테이너에 대한 스토리지 계정 이름을 제공해야 함을 알 수 있습니다.
스토리지 서비스에 액세스하기 위한 자격 증명이 누락되었습니다. 다음 변형이 허용됩니다.
- 계정 이름 및 키(--account-name 및 --account-key 옵션 또는 AZURE_STORAGE_ACCOUNT 및 AZURE_STORAGE_KEY 환경 변수 설정)
- 계정 이름 및 SAS 토큰(--account-name 옵션 또는 AZURE_STORAGE_ACCOUNT 환경 변수와 함께 사용되는 --sas-token 옵션)
- 계정 이름(--account-name 옵션 또는 AZURE_STORAGE_ACCOUNT 환경 변수. 이는 로그인 자격 증명을 사용하여 스토리지 계정 키에 대한 쿼리를 호출합니다.)
- 연결 문자열(--connection-string 옵션 또는 AZURE_STORAGE_CONNECTION_STRING 환경 변수 설정) 일부 쉘에서는 문자 그대로의 문자 해석을 유지하기 위해 인용이 필요합니다.
적절한 컨테이너 이름과 스토리지 계정 이름을 사용하여 다음을 시도해 보세요.
az storage blob list --container-name CONTAINER_NAME --account-name STORAGE_ACCOUNT_NAME