0

是否可以在 Azure 存储中使用 cli 身份验证?

cli_auth = AzureCliAuthentication()
blob_service_client = BlobServiceClient(account_url="https://mystorage.blob.core.windows.net", credential=cli_auth)
container_client = blob_service_client.get_container_client("mycontainer")

blobs=container_client.list_blobs()

for blob in blobs:
    print(blob)

现在我得到:

发生异常:ClientAuthenticationError 服务器未能对请求进行身份验证。请参阅 www-authenticate 标头中的信息。ErrorCode:InvalidAuthenticationInfo authenticationerrordetail:观众验证失败。观众不匹配。

4

1 回答 1

1

您将不得不使用AzureCLICredentials而不是使用AzureCLIAuthentication.

执行以下操作后,您可以使用以下内容az login

from azure.identity import AzureCliCredential
from azure.storage.blob import BlobServiceClient
cli_auth = AzureCliCredential()
blob_service_client = BlobServiceClient(account_url="https://<Storageaccountname>.blob.core.windows.net", credential=cli_auth)
container_client = blob_service_client.get_container_client("<ContainerName>")

blobs=container_client.list_blobs()

for blob in blobs:
    print(blob.name)

输出:

在此处输入图像描述

在此处输入图像描述

于 2022-02-15T08:48:43.390 回答