问题标签 [ssl-client-authentication]
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.
c# - 为什么 HttpWebRequest.ClientCertificates 是一个集合
我很想知道为什么HttpWebRequest.ClientCertificates
是集合?
据我所知,在客户端身份验证中只能使用一个客户端证书(这仅仅是真的吗?)。
一个应用程序的示例使用多个客户端证书,好吗?
api - K8S(1.9)如何使用客户端证书访问API服务器
问题
如何使用客户端证书访问 API 服务器 API?在下面尝试但没有成功。
通过将 --client-ca-file=SOMEFILE 选项传递给 API 服务器来启用客户端证书身份验证。
在 /etc/kubernetes/manifests/kube-apiserver.yaml 中,指定了--client-ca-file=/etc/kubernetes/pki/ca.crt。
node.js - Google Cloud Functions 可以使用 HTTPS 客户端身份验证吗?
我可以将 HTTPS 客户端证书身份验证与 HTTPS 触发的Google Cloud Functions一起使用吗?
我是独立的node.js
,我会尝试这样的事情:
但由于谷歌云功能(大概)控制node.js
服务器的创建,我目前不清楚如何传递所需的选项。
Google 提供了有关如何使用 (OAuth 2.0) 服务帐户和访问令牌进行身份验证的文档,但我对 HTTPS 客户端证书感兴趣,例如也可以提供 Web 浏览器。
ssl - Spring Cloud Gateway 转发客户端证书
我正在尝试将 spring-cloud-gateway 用于基于 spring-boot 的服务,该服务使用 ssl 和 client-auth。
问题是,通过 api-gateway 从客户端调用服务总是以“certificate_unknown”失败(没有网关也可以正常工作)。
似乎 spring-cloud-gateway 没有将客户端证书转发到后端服务。
任何想法如何实现这一目标?这是缺少的功能吗?
谢谢
authentication - 客户端身份验证中应需要密钥用法和扩展密钥用法证书扩展值
任何人都知道在客户端身份验证中,我们应该验证的密钥使用和扩展密钥使用目的是什么?
根据 [1] 中的规范:
- “扩展密钥使用”不是必需的,它被配置为补充或代替密钥使用扩展中指示的基本目的。
- 可以配置为“扩展密钥使用”的“clientAuth”,以及可能与之一致的密钥使用位是“digitalSignature”和/或“keyAgreement”
但是在验证时,应该允许和禁止客户端身份验证的密钥使用目的是什么?
ssl - 我什么时候需要将“协商客户端证书”设置为启用?
我可以选择支持客户端证书。这就是我设置Client certificates
在Accept
IIS 上的原因。这适用于大多数机器。但是,在某些机器上,IIS 返回 500。这可以通过设置Client certificates
为Ignore
(这不是我的选择)或设置Negotiate Client Certificate
为Enabled
(这可以通过netsh http add ...
或更改DefaultFlags
为 2 in来完成HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\SslBindingInfo\0.0.0.0:443\
;这也可以在 IIS 管理器中更改?)。虽然(启用)此设置听起来很合理,但仅从名称来看,我不明白为什么在某些机器上需要它,而在其他机器上不需要它......
c# - WCF 客户端证书
WCF 服务配置为客户端证书X509CertificateValidationMode.Custom
和自定义X509CertificateValidator
.
绑定是WebHttpBinding
和WebHttpSecurityMode.Transport
。HttpClientCredentialType.Certificate
此设置强制客户端提供附加到请求的证书,并且它与具有证书的请求一起正常工作。
现在,我需要处理没有附加证书的请求,并让它们根据其他一些条件进行处理。但正如我所指出的,它403
在点击我的 custom 之前会做出响应X509CertificateValidator
。
如何在没有证书的情况下挂钩 WCF 请求?
apache - Apache 客户端身份验证 OCSP 响应程序问题
我在 Windows 上设置 Apache 2.4.29 以使用有效的 OCSP 响应程序进行客户端身份验证时遇到问题。关闭 OCSP 响应程序时,客户端身份验证工作正常。当我手动使用 OpenSSL 向 OCSP 响应程序发出请求时,我还能够验证我的客户端证书状态是否为“良好”。这只是在 Apache 中使用它时的一个问题......
证书颁发机构(我充当自己的 CA):
根 CA > 中间 CA
中间 CA > 客户端证书 1
中间 CA > OCSP 签名证书
证书文件
ca-chain.cert.pem(根 CA 和中间 CA 证书)
middle.cert.pem(中间 CA 证书)
ocsp.mydomain.com.cert.pem(OCSP 签名证书)
client1.cert.pem(客户端证书)
Windows 安装程序
- 根 CA 和中间 CA 证书连同其私钥(导入为 .pfx)分别导入“受信任的根证书颁发机构”和“中间证书颁发机构”存储中
- 客户端证书连同其私钥(导入为 .pfx)一起导入“个人”证书存储
OCSP 响应服务器
手动 OCSP 请求(只是为了确认所有设置都在 Apache 之外)
要求
/li>响应(...代表一些排除的详细输出,实际上不在响应中)
/li>上面的“颁发者密钥哈希”与我的“个人”证书存储中的客户端证书“授权密钥标识符”匹配,看起来都不错
阿帕奇设置
阿帕奇错误
库错误:OCSP_basic_verify:root ca 不受信任(下面的日志信息)
Apache 命中时的 OCSP 响应程序服务器错误响应
响应(...代表一些排除的详细输出,实际上不在响应中)
/li>上面的“颁发者密钥哈希”与我的“受信任的根证书颁发机构”证书存储中的根 CA证书“授权密钥标识符”匹配,WTF?为什么?
任何人都可以看到我所做的事情有什么问题,或者知道为什么这不起作用吗?
spring - RestTemplate HTTS & 选择客户端证书
有人可以帮助我了解如何使用 HTTPS 相互身份验证,以便我可以在身份验证期间以编程方式选择要使用的客户端证书吗?
这是问题的上下文。我在用:
- 包含多个客户端证书的 JKS
- Apache SSLContextBuilder 创建 SslContext
- Apache HttpClients 创建 CloseableHttpClient
- Spring HttpComponentsClientHttpRequestFactory 创建 RestTemplate
我采用的方法类似于具有不同用户证书 和Spring Boot SSL Client的 Java Rest 调用。在这两个示例中,我都看不到 KeyStore 中的特定别名是在哪里指定的。
如何让应用程序使用每个连接的不同客户端证书启动多个相互 HTTPS 连接?
scala - 为什么我的服务器没有在 Play 2.6.x 中请求客户端证书?
我正在尝试按照play-tls-example启用客户端身份验证。由于这只是一个实验,我正在生成自签名证书。
我有以下 SSL 引擎提供程序:
并且clientca.jks
是根据以下脚本配置的:
我localhost.jks
的由以下脚本生成:
当我使用以下相关配置在生产中运行时:
当我发出不安全的 curl: 时,我发现我的服务器没有请求客户端证书curl -k https://localhost:9443
:
尽管我的服务器需要客户端身份验证,但从不提示客户端输入证书并成功启动不安全的连接。为什么会这样?