问题描述
我的本地脚本在 Azure 中部署资源。 该脚本使用自签名证书进行 Azure 服务主体身份验证。
我在没有证书颁发机构的情况下在 keyvault 中创建了证书。 然后我在脚本服务器上安装了证书。
在这种情况下,使用自签名证书而不是使用证书颁发机构的证书有什么风险?
解决方法
Microsoft 建议仅将自签名证书用于测试目的,仅作为 Azure 服务主体的身份验证方法。
签署证书的正确方法是使用知名的可信第三方,即证书颁发机构 (CA)。 自签名证书有几个关键限制/缺点:
- 无法撤销自签名证书。
- 自签名证书永不过期。
- 需要公钥基础设施 (PKI)。与公钥身份验证相比,这可能会增加某些环境中初始部署的成本。
- 必须将自签名证书放入使用 Azure 服务主体身份验证的每台计算机的 Trusted Store 中。
- 自签名证书是凭证,而不是依赖证书颁发机构的信任。
https://www.mcafee.com/blogs/other-blogs/mcafee-labs/self-signed-certificates-secure-so-why-ban/