Kja*_*tan 5 security oracle plsql ssl-certificate postman
短篇小说
我正在尝试使用 Oracle 中的 utl_http 实用程序从 PL/SQL 脚本发送 POST 请求。我已经能够使用 http 发送请求,但不能使用 https。我已经将我认为必要的证书添加到 Oracle 钱包中,并且我相信它们正在被导入和使用(但老实说,这有点难以验证)。我目前的假设是来自我们的数据库服务器的调用是通过代理服务器传递的,这以某种方式扰乱了 https / 证书功能的某些部分。
支持证据(可能?):我试图调用(POST 请求)到webhook.site上的一个虚拟服务。同样,我使用http而不是https - 后者导致证书验证错误。
然后我尝试使用postman复制行为,这基本上产生相同的结果,除非我摆弄设置:
初始邮递员结果:
无法得到任何回应
连接到https://webhook.site/950 时出错...
禁用 SSL 验证
在 Post man 设置下,我关闭了SSL Certificate Verification,然后再试一次。这一次,我得到了200 OK回应,并确认 webhook 收到了 post 请求。
很明显错误是由于缺少证书,但我无法弄清楚是哪个,或如何配置它。我的假设是,如果我可以让它在 Postman 的 webhook-url 上工作(不禁用证书验证),那么我以后也应该能够让它从 PL/SQL 工作。
当我在浏览器中查看 webhook 站点并检查证书时,webhook 证书是最低的证书(叶节点?)。在它上面有一个与我工作的公司相关的中间证书,然后是一个也与该公司相关的根证书。根节点的名称类似于“公司代理服务器 CA ” - 所以我假设代理以某种方式操纵我的请求并在此处插入它自己的证书。
我已经尝试下载所有这些证书并将它们导入我的证书存储中,以及在 Postman 设置下(在证书下)以各种组合导入它们,但似乎没有任何区别;所有使用 HTTPS 发布的尝试都会在我的 Postman Console 中产生以下错误:
发布https://webhook.site/9505 ...
错误:无法验证第一个证书
任何有关如何解决此问题的想法,或至少获得有关该做什么的更多信息,将不胜感激。
在Postman中关闭“SSL证书验证”仅意味着它(即Postman)在发出请求时不会检查SSL证书的有效性。这意味着它只会按原样发送证书。因为如果设置为 ON,您的连接会失败,这意味着 Postman 无法验证您的证书的有效性。
您尝试发布到的实际服务很可能就是这种情况,他们无法验证证书。该服务位于您公司网络之外吗?它是公共的还是贵公司拥有的?该服务托管在哪里?他们需要什么证书?
顺便说一句,TLS 客户端证书是作为建立 SSL 连接的一部分发送的,而不是作为 HTTP 请求的一部分。TLS 握手(以及客户端和服务器证书的交换/验证)发生在发送任何 HTTP 消息之前。
我认为这可能是端口被阻塞的问题。
| 归档时间: |
|
| 查看次数: |
971 次 |
| 最近记录: |