首页 > 其他分享 >【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)

【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)

时间:2023-11-20 21:33:23浏览次数:43  
标签:机密信息 xxxx DefaultAzureCredentialOptions azure Key new Azure Vault

问题描述

使用 .NET Azure.Identity 中的 DefaultAzureCredential 认证并连接到Azure Key Vault中, 在Key Vault 的示例中,并没有介绍如何在代码中设置连接到中国区Azure中。

如果直接运行DefaultAzureCredential,会默认连接到Global Azure,那需要如何修改才能连接到China Azure中呢?

 

问题解答

查看DefaultAzureCredential方法,它可以通过DefaultAzureCredentialOptions来设置 AuthorityHost , 用于指定认证所连接的云环境。 

 所以,正确的代码应该是:

##1: AAD 认证信息配置为系统环境变量

DefaultAzureCredentialOptions options = new DefaultAzureCredentialOptions() { AuthorityHost = AzureAuthorityHosts.AzureChina }; 

//Setting your AZURE_TENANT_ID/AZURE_CLIENT_ID/AZURE_CLIENT_SECRET in system environments

var client = new SecretClient(new Uri(kvUri), new DefaultAzureCredential(options)); ##2:或者是通过代码直接传递AAD信息, 则可以使用 ClientSecretCredential string tenantId = "xxxxxxxx-xxxx-xxxx-xxxx- xxxxxxxxxxxx";

string clientId= " xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"; string clientSecret= "***************"; DefaultAzureCredentialOptions options = new DefaultAzureCredentialOptions() { AuthorityHost = AzureAuthorityHosts.AzureChina };

var client = new SecretClient(new Uri(kvUri), new ClientSecretCredential(tenantId, clientId, clientSecret, options));

 

 

参考资料

适用于 .NET 的 Azure 密钥保管库机密客户端库:https://docs.azure.cn/zh-cn/key-vault/secrets/quick-create-net?tabs=azure-cli

DefaultAzureCredential :https://learn.microsoft.com/en-us/dotnet/api/azure.identity.defaultazurecredential?view=azure-dotnet#definition

DefaultAzureCredentialOptions :https://learn.microsoft.com/en-us/dotnet/api/azure.identity.defaultazurecredentialoptions?view=azure-dotnet

 

标签:机密信息,xxxx,DefaultAzureCredentialOptions,azure,Key,new,Azure,Vault
From: https://www.cnblogs.com/lulight/p/17844919.html

相关文章

  • Redis:Key-Value的NoSQL数据库
    Redis:Key-Value的NoSQL数据库(基础)主要内容:数据库分类Redis入门客户端连接RedisRedis数据类型及操作Springboot整合RedisSpringCache学习目标:知识点要求数据库分类熟悉Redis使用场景熟悉Redis下载与安装了解Redis启动关闭掌握客户端连接Redis......
  • 使用 AutoHotKey 自动点击屏幕位置
    最近想把flomo上的内容迁移到Notion上,迁移完毕后,发现flomo竟然不支持批量删除!虽然几百个memo手点一点也无所谓,想了想还是用脚本吧……通过脚本找到屏幕中的“删除”并自动点击!后续发现,删除标签时,会把标签以及包含此标签的memo全部删除……不过这里的方法仍然可以实......
  • 好用的tampermonkey插件
    AC-baidu-重定向优化百度搜狗谷歌必应搜索_favicon_双列调整搜索页面结果,能显示更多结果百度系网站去广告屏蔽广告知乎增强刷知乎用的......
  • jdk8 Stream流中将集合转成map,重复key处理,统计最大值,获取某个属性集合等10种最常用方
    jdk8Stream流中将集合转成map,重复key处理,统计最大值,获取某个属性集合等10种最常用方法......
  • sign_and_send_pubkey: signing failed: agent refused operation Permission denied
    在你的ternimal下执行该命令ssh-agent-s//或者ssh-agent/bin/bash然后再执行下面的命令ssh-add在重新repoinit......
  • .NET8依赖注入新特性Keyed services
    什么是KeyedserviceKeyedservice是指,为一个需要注入的服务定义一个KeyName,并使用使用KeyName检索依赖项注入(DI)服务的机制。使用方法通过调用AddKeyedSingleton(或AddKeyedScoped或AddKeyedTransient)来注册服务,与KeyName相关联。或使用[FromKeyedServices]属性指......
  • java keytool证书操作
    首先找到jdk证书的存放位置:jdk8:jdk1.8.0_111/jre/lib/securityjdk11:jdk-11/lib/security在对应的目录下使用管理员权限运行添加命令:sudokeytool-import-aliascacertalias-keystorecacerts-file/root.download/**.pem-storepasschangeit查看已经添加的证书列表: k......
  • Python反转字典的key和value
    1.遍历m={'a':1,'b':2,'c':3}n={}fork,vinm.items():n[v]=kprint(n)2.字典推导式m={'a':1,'b':2,'c':3}n={v:kfork,vinm.items()}print(n)3.使用zip函数m={'a'......
  • 视频监控平台SkeyeVSS支持哪些录像形式?
    视频监控平台SkeyeVSS支持哪些录像形式?近年来,随着互联网技术的发展,运用先进的AI、物联网、大数据、云计算等技术手段不断提高化工行业的随着互联网技术的发展。全国各地在视频监控领域进行了大量的建设。但随着摄像头数量的增加,录像设备的多样性,视频监控画面离散、庞杂、关联性差等......
  • CoreFX中Dictionary<TKey, TValue>的源码解读
    无论是实际的项目中,还是在我们学习的过程中,都会重点的应用到Dictionary<TKey,TValue>这个存储类型。每次对Dictionary<TKey,TValue>的添加都包含一个值和与其关联的键,使用键检索值的速度非常快,接近O(1),因为 Dictionary<TKey,TValue>类是作为哈希表实现的。首先我们来......