gpt4 book ai didi

oracle - 确定使用 Oracle utl_http 执行 https post 需要哪个证书

转载 作者:行者123 更新时间:2023-12-02 11:58:59 28 4
gpt4 key购买 nike

短篇故事
我正在尝试使用 Oracle 中的 utl_http 实用程序从 PL/SQL 脚本发送 POST 请求。我已经能够使用 http 发送请求,但不能使用 https 发送请求。我已将我认为必要的证书添加到 Oracle 钱包中,并且我相信它们正在被导入和使用(但老实说,这有点难以验证)。我当前的假设是,来 self 们的数据库服务器的调用正在通过代理服务器传递,这在某种程度上扰乱了 https/证书功能的某些部分。

支持证据(可能?):我尝试向 webhook.site 的虚拟服务调用电话(POST 请求) 。同样,我使用 http 进行此操作,但不使用 https - 后者会导致证书验证错误。

然后我尝试使用 postman 复制该行为,这基本上会产生相同的结果,除非我摆弄设置:

初始 postman 结果:

Could not get any response

There was an error connecting to https://webhook.site/950...

禁用 SSL 验证
在 postman 设置下,我关闭了SSL证书验证,然后重试。这次,我收到了 200 OK 响应,并确认 webhook 正常收到了 post 请求。

很明显,该错误是由于缺少证书造成的,但我无法弄清楚是哪个证书或如何配置它。我的假设是,如果我可以让它在 Postman 的 webhook-url 上工作(不禁用证书验证),那么我以后也应该能够在 PL/SQL 上让它工作。

当我在浏览器中查看 webhook 站点并检查证书时,webhook 证书是最低的证书(叶节点?)。在它上面有一个与我工作的公司相关的中间证书,然后是一个也与该公司相关的根证书。根节点的名称类似于“Company Proxy Server CA” - 因此我假设代理以某种方式操纵我的请求并在此处插入它自己的证书。

我尝试下载所有这些证书并将它们导入到我的证书存储中,以及在 Postman 设置(在证书下)下以各种组合导入它们,但似乎没有任何区别;所有使用 HTTPS 发布的尝试都会在我的 Postman 控制台中产生以下错误:

POST https://webhook.site/9505...

Error: unable to verify the first certificate

任何有关如何解决此问题的想法,或者至少获得有关如何操作的更多信息,我们将不胜感激。

最佳答案

关闭 Postman 中的“SSL 证书验证”仅意味着(即 Postman)在发出请求时不会检查 SSL 证书的有效性。这意味着它只会按原样发送证书。因为如果设置为 ON,您的连接会失败,这意味着 Postman 无法验证您的证书的有效性。

您尝试发布到的实际服务很可能就是这种情况,他们无法验证证书。该服务位于您公司网络之外吗?它是公共(public)的还是贵公司拥有的?该服务托管在哪里?他们需要什么证书?

顺便说一句,TLS 客户端证书是作为建立 SSL 连接的一部分发送的,而不是作为 HTTP 请求的一部分。 TLS 握手(以及客户端和服务器证书的交换/验证)发生在发送任何 HTTP 消息之前。

我认为这可能是端口阻塞问题。

关于oracle - 确定使用 Oracle utl_http 执行 https post 需要哪个证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59579902/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com