it-swarm-ja.com

Azure CLIは、ログイン後にストレージサービスにアクセスするための資格情報の欠落を報告します

AzureCLIでログインがどのように機能するかを理解しようとしています。私はすでにログインしています:

az login

すべてが完全に機能しているように見えますが、他のコマンドを実行しようとすると、次のようになります。

az storage blob list --container-name my_container

それは報告します:

ストレージサービスにアクセスするための資格情報がありません。

Azureで資格情報とログインがどのように機能するかについてはかなり混乱しています。アクセストークンはログインによってすでに付与されているので、他のすべてのコマンドは、さらに認証を必要とせずに機能するべきではありませんか?そうでない場合、ログインのポイントは何ですか?

1
peidaqi

君の az storage blob list --container-name my_containerコマンドレットが不完全です。Azureシェルでコマンドを実行すると、以下のエラーメッセージがスローされます。資格情報がないというメッセージは必ずしも必要ではないため、混乱を招く可能性があることは理解していますが、リストの番号3を見ると、特定のコンテナのストレージアカウント名を指定する必要があることがわかります。

ストレージサービスにアクセスするための資格情報がありません。次のバリエーションが受け入れられます。

  1. アカウント名とキー(--account-nameと--account-keyオプション、またはAzure_STORAGE_ACCOUNTとAzure_STORAGE_KEY環境変数を設定します)
  2. アカウント名とSASトークン(--sas-tokenオプションは--account-nameオプションまたはAzure_STORAGE_ACCOUNT環境変数のいずれかで使用されます)
  3. アカウント名(--account-nameオプションまたはAzure_STORAGE_ACCOUNT環境変数。これにより、ログイン資格情報を使用してストレージアカウントキーのクエリが呼び出されます)
  4. 接続文字列(--connection-stringオプションまたはAzure_STORAGE_CONNECTION_STRING環境変数の設定);一部のシェルでは、リテラル文字の解釈を維持するために引用符が必要になります。

適切なコンテナ名とストレージアカウント名を使用して、次のことを試してください。

az storage blob list --container-name CONTAINER_NAME --account-name STORAGE_ACCOUNT_NAME

1
Smeerpijp