from azure.keyvault.secrets import SecretClient
from azure.identity import DefaultAzureCredential
vault_url = 'https://<myvaulturl>.vault.azure.net'
az_credential = DefaultAzureCredential()
client = SecretClient(vault_url=vault_url, credential=az_credential)
client.get_secret('<mysecret>')
AZURE_CLIENT_ID
AZURE_CLIENT_SECRET
AZURE_TENANT_ID
尝试使用ClientSecretCredential
执行此操作:
from azure.keyvault.secrets import SecretClient
from azure.identity import ClientSecretCredential
AZURE_TENANT_ID = ''
AZURE_CLIENT_ID = ''
AZURE_CLIENT_SECRET = ''
cred = ClientSecretCredential(
client_id = AZURE_CLIENT_ID,
client_secret = AZURE_CLIENT_SECRET,
tenant_id = AZURE_TENANT_ID
)
keyVaultName = ''
KVUri = f"https://{keyVaultName}.vault.azure.net"
sc = SecretClient(vault_url=KVUri, credential=cred)
print(sc.get_secret('<secret name>').value)
更新:
使用AKV管理存储帐户:https://docs.microsoft.com/en-us/Azure/key-vault/key-vault-overview-storage-keys-powershell#manage-storage-account-keys 使用Azure Automation进行密钥循环:https://docs.microsoft.com/en-us/Azure/key-
我正在尝试将https://docs.microsoft.com/en-us/Azure/key-vault/tutorial-net-create-vault-azure-web-app中的示例代码转换为VB.net,并使用它访问我存储在Azure密钥库中的秘密。我在http://converter.telerik.com/使用了转换器。 转换后的代码出现一个错误:“委托'KeyVaultCli
exception.message=“参数:连接字符串:[没有指定连接字符串],资源:https://vault.azure.net,权限异常消息:尝试了以下3种方法来获取访问令牌,但都不起作用。参数:连接字符串:[未指定连接字符串],资源:https://vault.azure.net,权限:异常消息:试图使用托管服务标识获取令牌。无法连接到托管服务标识(MSI)终结点。请检查您正在运行的Azu
目前,在我看来,有很多方法可以引用秘密: 使用@或 直接,在存储库中为fx一个名为secret的秘密,然后直接引用它 具有Azure函数,或 配置已运行的应用程序,并将密钥存储库添加到堆栈 我很难看出什么时候用什么。
我想知道是否可以通过前缀获得所有Azure密钥库的秘密。 假设我有3个秘密。 我希望得到所有的秘密与前缀pre,并序列化到JSON。在未来,我将有更多的秘密与前缀,所以我不想阅读的秘密手动。因此,当我添加一个带有前缀的新秘密时,我的函数也将返回一个新值的JSON。 问题是:是否可以通过前缀从Azure密钥库获取秘密并动态序列化到JSON? 更新:我想在ASP.NET Core3.1和C#中使用它。
数以千计的秘密在我的蓝色钥匙库里。所以每当我需要在Azure门户检查/查看秘密值时,我将需要在多次加载所有秘密后向上滚动到最后。除了API之外,还有什么捷径可以看到吗?比你提前!!