尝试从安全站点生成 Web 服务客户端时出现奇怪的证书错误

2024-01-05

当尝试使用 AXIS1.4 Wsdl2Java 工具为安装在安全 IIS 站点上的 Web 服务生成客户端代码时,我收到一个奇怪的错误。当我运行该工具时,出现以下 SSL 异常:

javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No
 name matching XXXXXXX.net found
        at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1
591)
        at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:187)
        at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:181)
        at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(Clien
tHandshaker.java:975)
        at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHa
ndshaker.java:123)
        at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:5
16)
        at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.jav
a:454)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.j
ava:884)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SS
LSocketImpl.java:1096)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketIm
pl.java:1123)

奇怪的是,这个错误仅在我运行 WSDL2Java 时发生,并且仅针对此特定服务器。我有另一个具有相同设置的网络服务器,并且一切正常。我三次检查了所有密钥库,看起来所有 CA 证书都已正确加载。我尝试使用具有相同设置的另一台服务器,并且能够毫无问题地生成客户端代理代码。奇怪的是,如果我使用从其他服务器生成的代码来对抗奇怪的服务器,一切都会正常工作。只有 Wsdl2Java 给我带来了问题。


主机的 DNS 名称(例如 machine1.mydomain.tld)和CommonName证书中的值,因此CertificateException。由此博客文章 http://www.jroller.com/hasant/entry/no_subject_alternative_names_matching:

  • 如果您想通过使用 IP 作为主机名进行连接;
    您的证书应包含该 ip 值作为主题备用名称值(类型为 IPAddress : key=7)。
  • 如果您想通过使用 DNS 作为主机名进行连接;
    您的证书应包含该 DNS 名称作为主题备用名称值(类型为 DNS : key=2)或 CommonName(CN) 值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试从安全站点生成 Web 服务客户端时出现奇怪的证书错误 的相关文章

随机推荐

  • SwiftUI TabBar:点击当前选定选项卡的 TabItem 来重置视图的操作

    我正在开发的应用程序基于 TabBar 当我在选项卡上时 我希望能够再次单击 tabItem 来重置视图 类似于 Twitter 在其 tabBar 中的做法 但我不知道如何识别该操作 向 TabItem 添加按钮不起作用 添加 ontap
  • MATLAB 图形在插入 LaTeX 时不具有相同的大小(尽管使用相同的代码生成)

    我正在 MATLAB 中生成一些图形 并尝试将它们插入到 LaTeX 中 然而 当我这样做时 它们通常没有相同的大小 尽管我使用相同的设置来生成它们 例如 我当前使用的 MATLAB 代码是这个 lsize 16 Label fontsiz
  • 如何使用“kubectl patch --type='json'”更新秘密

    我创建了一个这样的秘密 kubectl create secret generic test from literal username testuser from literal password 12345 我想将用户名更新为testu
  • 如何为 msbuild.exe 指定其他包含目录

    我正在尝试安装 nodejs 模块 ibm db 我遇到的问题是 为了安装此模块 node gyp 需要使用 msbuild 构建它 但它不会检测我已安装的一些头文件 如何将附加头文件的目录添加到某个路径 以便 msbuild exe 在尝
  • 识别字符串中的特殊非字母数字字符

    我正在研究密码验证 该验证应该只允许 a z 0 9 和这些字符 lt gt 我尝试使用正则表达式 但我不太擅长使用它们 而且我不确定这是否可能 或者我是否没有转义正确的字符 var allowedCharacters A Za Z0 9
  • VTKCamera焦点和位置的差异

    我正在使用 vtkCamera 并尝试移动它并使其看起来在某个点 例如 如果我想把相机放在 x y z 并让它看看 0 0 0 例如 使用 openGL 中的 gluLookAt 我们会将眼睛坐标设置为 x y z 和中心坐标 0 0 0
  • Angular 6服务注入Interceptor后未定义

    我找不到任何方法来注入我的认证服务 inside 错误处理拦截器 它返回给我一个 不明确的 注入后的对象 否则会抛出错误 这是我的错误处理拦截器 import Injectable from angular core import Auth
  • 为列表列表中的每个列表创建单独的 Counter() 对象和 Pandas DataFrame

    我能找到的所有其他答案都专门提到了在列表列表中聚合所有嵌套列表 而我希望为每个列表单独聚合 我目前有一个列表列表 master list a a b b b c c c d d d a a a c c c c c c a a f f f 我
  • Netbeans 中的 Arduino(处理)库和控制

    我正在尝试控制 4 个 LED 并从 4 个触点获取模拟输入 该程序是用java编写的 因此要访问arduino的功能 例如AnalogRead 和将LED设置为高或低 导入处理库可以让程序使用这些功能吗 我还想知道 如果程序会自行传输到a
  • Durandal 登录页面重定向模式

    TL DR要求用户登录才能查看 Durandal 单页面应用程序 SPA 中的某些页面的好模式是什么 我需要一个系统 如果用户尝试导航到需要登录的 页面 他们会被重定向到登录页面 在此登录页面上成功进行身份验证后 我希望应用程序将它们重定向
  • XSLT 默认模板混淆

    我对 XSLT 处理器节点的方式感到困惑 假设我有一个像这样的 XML 文档
  • 将大数据写入套接字时最小化副本

    我正在编写一个处理图像 大数据 的应用程序服务器 在将图像数据发送回客户端时 我试图尽量减少副本 我需要发送给客户端的处理后的图像位于从 jemalloc 获得的缓冲区中 我想到的将数据发送回客户端的方式是 1 简单的写调用 Allocat
  • 由于表已存在而无法插入表中?

    我有一个用户表 我想将数据插入到我的用户表中 我有一个声明 SELECT columna columnb INTO my table FROM my other table WHERE conditions 我收到以下错误 SQL Serv
  • 在 Ruby 中,我可以在不使用正则表达式的情况下检查字符串是否包含字母吗?

    我正在使用 Rails 5 我想知道一个变量 您可以假设它是一个字符串 是否至少包含一个字母 大写或小写 但是 我不想使用正则表达式 我注意到如果编码不是 UTF 8 正则表达式往往会崩溃 所以我想知道如何检查字符串是否至少有一个字母 这不
  • 从 Eclipse 3.3 升级到 3.4(或未来版本)的最佳方法是什么

    过去 我在从 Eclipse 版本升级到另一个版本时遇到过问题 我想知道 StackOverflow 上的 Eclipse 用户如何处理 Eclipse 版本之间的升级 使用发行版是解决方案吗 停留在过去的释放点直到被迫前进 这是一个好主意
  • 捕获 OutOfMemoryException 使调试变得困难

    当我调试程序并尝试在立即窗口中执行某些操作时 有时会在立即窗口中显示一条错误消息 由于内存不足 函数评估被禁用 例外 它还显示 当通过将鼠标悬停在对象上来查看对象的属性时 在尝试找到问题的原因后 我将其范围缩小到这个小代码示例 using
  • 32 小时前 不包括周末 php

    所以我有一个脚本可以对 32 48 和 72 小时前进行多次检查 基本上我会检查数据库中至少 x 小时前的条目 现在效果很好 如下所示 date date Y m d H i s strtotime 32 hours q SELECT FR
  • 如何将MySQL表中的数据获取到Java JTable中?

    我正在开发 Java 项目 我需要将一组特定的数据加载到JTable 有人可以向我解释如何做到这一点吗 这些是我在名为 order processing 的数据库中的 mrnform 表中的字段 Date varchar 10 NOT NU
  • 如何设置 Windows 计划任务在后台运行? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 有谁知道如何使用 Windows 任务计划程序设置计划任务在后台运行 似乎没有任何选择可以做到这一点 As noted https stackover
  • 尝试从安全站点生成 Web 服务客户端时出现奇怪的证书错误

    当尝试使用 AXIS1 4 Wsdl2Java 工具为安装在安全 IIS 站点上的 Web 服务生成客户端代码时 我收到一个奇怪的错误 当我运行该工具时 出现以下 SSL 异常 javax net ssl SSLHandshakeExcep