繁体   English   中英

对于 Azure Key Vault,我应该将tenantId、clientId 和clientSecret 存储在哪里?

[英]For Azure Key Vault, where should I store the tenantId, clientId and clientSecret?

我正在使用 Azure Key Vault 来存储我的连接字符串。 需要它们的应用程序只是一个将在 Azure VM 中运行的 C# 控制台应用程序。 问题是,我不确定存储tenantId、clientId 和clientSecret 的最佳实践是什么。 它们应该在代码中编译吗? 它们应该放在 app.config 文件中吗? 它们应该放在环境变量中吗? 他们应该加密吗? 或者这些纯文本很好吗?

如果您想将属性存储在您的 VM 上,您可以使用已部署的服务身份验证(例如环境变量、托管身份)。 请参阅此处

在此处输入图片说明

托管标识是在 Azure 中进行身份验证的最安全和推荐的选项,请参阅此处 您可以使用托管身份访问 App Configuration

服务主体是一种用于标识应用程序或服务的安全主体,也就是说,是一段代码,而不是用户或组。 服务主体的对象 ID 称为其客户端 ID,其作用类似于其用户名。 服务主体的客户端机密或证书的作用类似于其密码。 许多 Azure 服务支持通过自动管理客户端 ID 和证书来分配托管标识。 托管标识是用于在 Azure 中进行身份验证的最安全和推荐的选项。

将托管标识分配给 Azure 中的虚拟机后,您只需要 Azure KeyVault URL,无需客户端 ID 和客户端机密。

请记住,您需要授权 VM 的身份才能从 Key Vault 读取。

参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM