Azure / Azure/azure-storage-python

QueueServiceClient.get_queue_client does not inherit credentials

未关闭
#689 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Python
星标
343
派生
243
PR 合并指标
30 天内没有已合并 PR

描述

### Which service(blob, file, queue) does this issue concern?
**queue**

### Which version of the SDK was used? Please provide the output of `pip freeze`.
**azure-storage-queue==12.1.6**

### What problem was encountered?
queue client created from get_queue_client does not inherit credential chain

```
from azure.identity import AzureCliCredential, ChainedTokenCredential, ManagedIdentityCredential
from azure.identity.aio import DefaultAzureCredential
from azure.keyvault.secrets.aio import SecretClient
import os

from azure.storage.queue import (
QueueClient,
QueueServiceClient,
BinaryBase64EncodePolicy,
BinaryBase64DecodePolicy
)

managed_identity = ManagedIdentityCredential()
azure_cli = AzureCliCredential()
credential_chain = ChainedTokenCredential(managed_identity, azure_cli)
# client = SecretClient("https://my-vault.vault.azure.net", credential_chain)

q_name="test-q"
print("Creating queue: " + q_name)

queue_service = QueueServiceClient("https://XXXXXX.queue.core.windows.net", credential=credential_chain)

# Create the queue
queue_client = queue_service.get_queue_client(q_name)

queue_client.send_message('foo bar')
```

### Have you found a mitigation/solution?

Call Queue client after get_queue_client

```
queue_service = QueueServiceClient("https://tozara.queue.core.windows.net", credential=credential_chain)

# Create the queue
queue_client = queue_service.get_queue_client(q_name)

queue_client = QueueClient("https://xxxxxx.queue.core.windows.net", queue_name = q_name, credential=credential_chain)
```

贡献指南

打开贡献指南

调研方向

从 QueueServiceClient.get_queue_client 开始,使用 issue 中显示的 ChainedTokenCredential,通过 azure-storage-queue==12.1.6 重现该示例。验证返回的队列客户端在调用 send_message 时如何处理该 credential。当通过 get_queue_client 创建的客户端能够使用继承的 credential 链发送消息时,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
api, cloud
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
描述清楚
新手友好度
38/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。