Oracle 22未配置钱包调用HTTPS API成功的原因咨询
为什么Oracle 22c未配置钱包仍能通过
apex_web_service.make_rest_request访问可信HTTPS站点? Oracle 22c内置默认信任存储
Oracle Database 21c及后续版本(包括22c)引入了默认信任存储功能,预安装了DigiCert、Let’s Encrypt、GlobalSign等主流可信CA的根证书集合。这个特性默认启用,无需额外配置。apex_web_service.make_rest_request自动适配默认存储
调用apex_web_service.make_rest_request时,若未显式指定p_wallet_path和p_wallet_pwd参数,Oracle 22c会自动使用内置的默认信任存储验证目标HTTPS站点的证书链。你访问的是知名站点,其证书由默认信任存储中的CA签发,因此证书验证顺利通过,请求成功。旧版本与22c的核心差异
在Oracle 11g、12c等旧版本中,数据库没有内置可信CA根证书,必须手动创建钱包并导入对应CA的证书,否则无法验证HTTPS站点的证书合法性,会抛出ORA-29024: Certificate validation failure这类错误。这就是其他人在旧版本环境下必须配置钱包才能正常访问的原因。特殊场景仍需手动配置钱包
若访问的是使用自签名证书、私有CA签发证书的站点,或是默认信任存储未包含对应CA根证书的小众站点,仍然需要手动创建钱包并导入相关证书,否则会出现证书验证失败的问题。
内容的提问来源于stack exchange,提问作者Tien
相关产品推荐
相关产品推荐

