对于 Azure 服务主体,我们在配置文件中有以下键
<add key="SubscriptionId" value="" />
<add key="ClientId" value="" />
<add key="ClientSecret" value="" />
<add key="TenantId" value="" />
是否有可用的类似 azure key vault 的服务,我们可以安全地保存这些密钥并根据需要使用它?
对于 Azure 服务主体,我们在配置文件中有以下键
<add key="SubscriptionId" value="" />
<add key="ClientId" value="" />
<add key="ClientSecret" value="" />
<add key="TenantId" value="" />
是否有可用的类似 azure key vault 的服务,我们可以安全地保存这些密钥并根据需要使用它?
客户端机密比其他机密更重要,需要安全。不幸的是,即使您将它存储到 KeyVault,它也是调用 KeyVault 的网关。使用客户端密码对 Azure AD 进行身份验证并不是唯一的方法。您可以在创建密钥时使用您的证书,而不是客户端密码。上传该证书将为您提供指纹。然后,您需要在 Azure 中的某个位置上传您的私钥(又名 PEM 或 PFX),通常在应用程序或 Azure 应用服务中(参考https://docs.microsoft.com/en-us/azure/app-service/app-service -web-ssl-cert-load)。您的应用程序代码只需要通读证书(当然您需要为证书设置密码),如果指纹匹配,则您已获得 Azure AD 授权。
存储访问密钥、数据库连接字符串、Redis 缓存密钥、VM 密码或您的公司证书等其他敏感信息可以存储在 KeyVault 中。
如果您不喜欢获取访问令牌的复杂过程,请查看托管服务标识,它可以让 Azure 服务成为服务主体本身。不需要客户端应用程序注册和客户端密码。MSI 目前处于预览阶段,可用于某些服务。