问题标签 [client-certificates]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
11707 浏览

java - 如何使用 Java 中的 X.509 证书签署 HTTP 请求?

如何使用 Java 执行 HTTP 请求并使用 X.509 证书对其进行签名?

我通常用 C# 编程。现在,我想做的是类似于以下内容,仅在 Java 中:

在 Java 中,我创建了一个java.security.cert.X509Certificate实例,但我不知道如何将它与 HTTP 请求相关联。我可以使用 java.net.URL 实例创建 HTTP 请求,但我似乎无法将我的证书与该实例相关联(而且我不确定使用 java.net.URL 是否合适)。

0 投票
0 回答
1034 浏览

firefox - 小程序和客户端证书身份验证

我有一个小程序,它使用 SSL + 客户端证书身份验证从服务器加载其 jar 依赖项。

加载小程序的网页已经使用客户端证书进行了身份验证。

但是,当小程序启动时,JVM 进程(与浏览器分开)会弹出一个选择证书的对话框。事实证明,这些证书是从 java 客户端证书密钥库中读取的:

  • %USERPROFILE%\Application Data\Sun\Java\Deployment\security\trusted.clientcerts (Windows XP/2000)

  • %USERPROFILE%\AppData\LocalLow\Sun\Java\Deployment\security\trusted.clientcerts (Windows 7)

我想避免强迫用户将他/她的证书导入这个密钥库。相反,我想让 JVM 在 Firefox 的证书密钥库中搜索证书。

这是可行的吗?现实世界的例子将不胜感激!

0 投票
1 回答
2810 浏览

apache - 在 ReverseProxy 上下文中切换 SSLVerifyClient

这是 Apache 虚拟主机配置的一部分,匹配的传入请求被转发到 Apache Tomcat 服务器。所有客户端都必须为 App1 发送客户端证书以进行身份​​验证,但对于 App2,它应该是可选的。

那么是否有可能将 SSLVerifyClient 指令从 app2 切换为可选?

0 投票
2 回答
8711 浏览

.net - 如何在 .NET 中获取证书的“用途”(客户端身份验证证书)?

我想从X509Store(StoreLocation.CurrentUser)

有没有办法做到这一点?即使通过获取所有然后按某个属性过滤以获取所有客户端身份验证证书?

0 投票
1 回答
150 浏览

.net - 是否可以了解 Windows 证书存储中的证书是否导入为“启用强私钥”保护?

是否可以理解 Windows 证书存储中的证书是否在 .NET 中导入为“启用强私钥”保护?

0 投票
3 回答
11097 浏览

php - 无法使用 PHP SOAP 扩展通过 WS-Security 连接到 SSL Web 服务 - 证书、复杂的 WSDL

使用 PHP5 SOAP 扩展,我无法连接到具有 https 端点、客户端证书和使用 WS-Security 的 Web 服务,尽管我可以使用具有完全相同 wsdl 和客户端证书的soapUI 进行连接,并获得对的正常响应请求。没有 HTTP 身份验证,也没有涉及代理。我收到的消息是“无法连接到主机”。已经能够验证我没有击中主机服务器。(之前我错误地说我正在访问服务器。)

自签名客户端 SSL 证书是由 openssl 从 .p12 密钥库转换的 .pem 文件,而该文件又由 keytool 从 .jks 密钥库转换而来,该密钥库具有由私钥和客户端证书组成的单个条目。

在soapUI 中我不需要提供服务器私有证书,我给它的唯一两个文件是wdsl 和pem。我确实必须提供 pem 及其密码才能连接。我推测尽管有错误消息,但我的问题实际上可能在于 XML 请求的形成,而不是 SSL 连接本身。

我得到的 wsdl 具有嵌套的复杂类型。php 服务器在我的带有 IIS 的 Windows XP 笔记本电脑上。

代码、数据值和 WSDL 提取如下所示。(WSSoapClient 类只是简单地扩展了 SoapClient,添加了一个带有 mustUnderstand = true 的 WS-Security Username Token 标头并包括一个 nonce,soapUI 调用都需要这两者。)

非常感谢任何帮助。我是一个陷入困境的新手,以及如何!在这方面做了很多天的大量谷歌搜索,遵循了许多建议,并阅读了 Kevin McArthur 的 Pro PHP。使用类图代替嵌套数组的尝试也失败了。


编码


$连接如下:

$clientArguments 如下:

$操作如下:

$请求如下:

请注意如何有一个额外的嵌套级别,一个包装请求的数组,它本身就是一个数组。这是在帖子中提出的,虽然我没有看到原因,但它似乎有助于避免其他例外情况。


___soapCall 抛出的异常如下:


以下是一些 WSDL 摘录(TIBCO BusinessWorks):






如果它是相关的,这里是 WSSoapClient 类:

更新:

请求 XML 将如下所示:

这是通过 WSSoapClient 中的以下代码获得的:

0 投票
2 回答
3084 浏览

javascript - Firefox 中使用 xhr、客户端证书的跨域 SSL 握手失败

设置如下:

  • 具有正确设置和工作证书的 Firefox(3.x 和 4b),包括客户端证书。
  • 带有 XMLHttpRequest() 类型的 AJAX 调用不同子域的网页。
  • 所述子域中的自定义 Web 服务器接受请求,以允许的Access-Control-Allow-Origin标头响应并要求客户端验证

问题是 Firefox 突然中止了请求(好吧,无论如何,这就是它在 firebug 中所说的)。相反,运行设置openssl s_server会提示 Firefox 实际上甚至不发送客户端证书:

相同的设置与 Chrome 完美配合,这表明 Firefox 中可能存在错误。但是,使用注入 DOM的元素执行 ajax 调用似乎可以按预期工作......<script>

那么,还有其他人遇到过这种情况吗?它是一个错误吗?任何解决方法?有什么明显的缺失吗?

0 投票
1 回答
1404 浏览

certificate - 如何将证书附加到 ODATA 服务的 C# 客户端?

我们有一个使用证书保护的 ODATA 服务。我们正在使用 AddWebReference 在我们的 C# 代码中获取代理。

有没有办法将我们证书存储中的证书附加到这个生成的代理类?

我们可以使用 来添加证书HTTPClient,但我们希望避免使用HTTPClient来与我们的 ODATA 服务通信,而是更喜欢使用 AddWebReference 方法。

0 投票
3 回答
4151 浏览

ssl - 使用 CherryPy 的 2 路 SSL

从 CherryPy 3.0 起,只需指向服务器证书和私钥即可打开单向 SSL,如下所示:

这使客户端能够验证服务器的真实性。有谁知道 CherryPy 是否支持 2-way ssl,例如,服务器还可以通过验证客户端证书来检查客户端的真实性?

如果是,任何人都可以举一个例子是如何做到的?或发布对示例的引用?

0 投票
1 回答
2880 浏览

authentication - 支持基于客户端证书的身份验证的 Jabber 客户端

这有点奇怪。

我正在改进 Pidgin,尝试为 jabber 添加基于客户端证书的身份验证。我设置了一个 openfire 服务器(它支持基于客户端证书的身份验证),但我想确保我设置它正确 - 使用我知道有效的客户端对其进行测试。为此,我需要一个已经支持基于客户端证书的身份验证的客户端。

我想这就是测试遇到依赖地狱的方式。

任何人都知道我可以用来测试我的 openfire 设置的 jabber 客户端,这样我就可以回到针对 openfire 服务器测试我的代码了吗?