Chrome DevTools 是不是显示在给定的 GET 或 POST 请求中使用了啥证书
Posted
技术标签:
【中文标题】Chrome DevTools 是不是显示在给定的 GET 或 POST 请求中使用了啥证书【英文标题】:Does Chrome DevTools show what cert was used on a given GET or POST requestChrome DevTools 是否显示在给定的 GET 或 POST 请求中使用了什么证书 【发布时间】:2022-01-24 01:06:32 【问题描述】:问题描述
我正在尝试访问需要来自浏览器和 Postman 的证书的 REST 端点。
我已经为 Chrome 和 Postman 配置了客户端证书。该证书在 Swagger 页面上使用 Chrome 时有效(使用浏览器弹出窗口选择的 客户端证书),但在使用 Postman 时无效。
所以我的猜测是 Postman 没有使用我配置的证书。我尝试检查 Chrome DevTools Networking 选项卡以查看它是否显示证书正在通过,但它没有。
这就是我的问题。 Chrome(或 Postman)是否能够显示用于给定请求的客户端证书?
我正在寻找类似于将curl --verbose
与客户端证书一起使用的东西。将--verbose
与 curl 一起使用时,客户端和服务器端的证书信息都会转储到控制台以供查看。
Chrome DevTools(或 Postman)是否支持这样的功能?
正在寻找我的问题的答案
在 SO 中搜索 [certificate and debugging] 和 [certificate and google-chrome] 和 [certificate and postman] 我发现:
Testing API's with certificates - 这很有帮助,但没有回答我的问题
How to determine if server has ssl certificate - 没有帮助
need help Debugging SSL handshake in tomcat - 有用但不适用于我的问题
Created self signed Certificate working with curl but not with chrome - 没有帮助
许多其他证书问题,所以也许答案就在那里。如果有,请告诉我。
【问题讨论】:
【参考方案1】:我发现 Postman 在使用证书时,会在 Postman 控制台输出中包含一个网络部分。
例如,
GET https://example.com//api/my/restEndpoint
401
11 ms
Warning: Unable to verify the first certificate
Network
addresses: …
local: …
remote: …
tls: …
reused: false
authorized: false
authorizationError: "UNABLE_TO_VERIFY_LEAF_SIGNATURE"
cipher: …
protocol: "TLSv1.3"
ephemeralKeyInfo:
peerCertificate: …
这表明证书不受信任(例如,证书颁发机构未知)。
【讨论】:
以上是关于Chrome DevTools 是不是显示在给定的 GET 或 POST 请求中使用了啥证书的主要内容,如果未能解决你的问题,请参考以下文章
Chrome DevTools 显示一个空的传出二进制 Web 套接字框架,当它不是真的为空时
为啥vue-devtools chrome插件安装完成了,但是控制台没有显示出来