ssl - 在Chrome中使用客户端证书发送HTTP请求

原文 标签 ssl ssl-certificate client-certificates mutual-authentication

我在Azure上有一个受mutual authentication保护的API。服务器证书由Azure内部处理:

Server Certificate

我已经创建了一个自签名证书,并将其添加到本地计算机的受信任的根证书颁发机构列表以及我的个人证书中:

Client Certificate

尝试通过Chrome(特别是Chrome App Postman)访问API时,出现403指示我的请求没有与之关联的证书。


我对这应该如何工作有误解吗?
我可能创建了错误的客户端证书。我在网上阅读的所有内容都指向使用OpenSSL来创建这些文件,但是我在使它在Windows机器上运行并遇到各种其他工具时遇到了一些问题:MakeCert,PowerShell的New-SelfSignedCertificateSelf-Signed Certificate Generator。所有人似乎都在创建证书,但是我没有真正的方式知道我是否正确创建了证书。
如果证书创建正确,如何让Chrome随请求一起提交证书?将证书添加到商店后,它不应该只是自动获取证书吗?

最佳答案

事实证明,我必须使用chrome浏览网站的根网址(即https://my_app_name.azurewebsites.net),chrome会显示一个弹出窗口,允许我选择用于请求的证书。

相关文章:

python - pyAMF客户端在哪里(在代码的哪一点)接受SSL证书?

iis - IIS绑定不断被删除

amazon-web-services - 网站已经具有SSL证书,我想将CloudFront CDN与SSL一起使用

python - Python3:通过客户端证书身份验证从https服务器获取资源

ios - 使用客户端SSL证书并生成HTTP 403错误时iOS 9中的错误

python - Python-ldap set_option无法在Yosemite上运行

java - Java HTTPS请求:证书中的主机名不匹配

ssl - OpenSSL命令行工具版本和密码

ssl-certificate - 我可以创建自己的根证书以用于与Go的SSL连接吗?这样安全吗?

tomcat - Tomcat 6.0.37无法从LDAP检索用户名