问题标签 [ssl-certificate]
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.
performance - SSL 客户端证书验证优化
我们目前有一组 Web 服务,将接口暴露给各种不同的客户端类型和角色。
背景:
- 身份验证通过 SSL 客户端证书验证处理。目前这是在 Web 服务代码中完成的(不是由 HTTP 服务器)。我们不想使用任何比这更安全的方案。这篇文章不是在谈论授权,而是在谈论身份验证。
- Web 服务同时讨论 SOAP 和 REST(JSON),我绝对没有兴趣开始讨论这两种方法的优点。
- 通过 Web 服务公开的所有操作都是无状态的。
我的问题是在每个请求上验证客户端证书是非常重量级的,并且很容易支配应用服务器上的 CPU 时间。我已经尝试将身份验证和应用程序部分分离到不同的物理服务器上以减少负载,但这并不能提高整体调度速度——无论在哪里完成,请求仍然需要恒定的时间来进行身份验证。
我想尝试通过在客户端证书验证成功后生成一个 HTTP cookie(带有关联的服务器端会话)来限制身份验证的数量,当客户端提供该 cookie 时,将导致客户端证书验证被跳过(尽管仍在讨论SSL)。我还想对会话进行时间限制,并从客户的角度使流程尽可能透明。
我的问题:
- 这仍然安全吗?(以及我们如何优化安全性和实用性?)
- 这个方案有免费的实现吗?(我知道 CA 的 SiteMinder 产品)
- 鉴于上述情况,我们应该继续在应用程序内进行身份验证,还是转移到服务器内?
java - 找不到受信任的证书
问题:
我从 javax.net.ssl.SSLHandshakeException 得到一个抛出的错误(见附图)
Java 是否有可能存在损坏或丢失的 CA 证书?如果是这样,我该如何修复或解决此问题/错误?
我尝试过的事情:
- 我已经从 PC 中删除了所有版本的 JRE,并安装了最新版本的 JRE (1.6.14)。
- 从证书的用户部分清理并删除了所有不必要的受信任证书。
- 尝试运行 keytool 以获取 CA 的指纹
尝试运行 keytool 时,我得到以下信息:
keytool 错误:java.security.cert.CertificateParsingException:java.io.IOException:主题密钥,java.security.spec.InvalidKeySpecException:未知密钥规范。
android - Android 上的自签名 SSL 接受
如何在 Android 上接受 Java 中的自签名证书?
代码示例将是完美的。
我在 Internet 上到处查看,虽然有些人声称找到了解决方案,但它要么不起作用,要么没有示例代码来支持它。
java - 如何使用 Java 客户端通过带有 SSL 的 SMTP 发送电子邮件?
我需要使用 java 客户端通过 ssl 通过 smtp 发送电子邮件。我不知道该怎么做。
- 如果我在我的 Windows 机器上安装了服务器证书,我该如何使用它?
- 如果我希望它在非 Windows 机器上工作,我是否需要以不同的方式获取证书?
顺便说一句:如果我使用的 SMTP 服务器使用 SSL,我可以确定它会使用 SSL 将邮件发送给收件人吗?
c# - 如何使用 c# 2.0 WebClient 忽略证书错误 - 没有证书
使用 Visual Studio 2005 - C# 2.0、System.Net.WebClient.UploadData(Uri address, byte[] data)
Windows Server 2003
所以这是代码的精简版本:
这是我得到的错误:
基础连接已关闭:无法为 SSL/TLS 安全通道建立信任关系。
当请求发出时,我没有太多控制权来查看发生了什么。我被告知它正在到达正确的目的地并且存在“证书错误”。这可能是因为我的请求中的 IP 地址与其解析到的 URL 之间存在文字不匹配。我有多个 IP 我应该轮询,因此指定 URL 将不起作用。我没有附上证书——我也不应该根据端点所有者的说法。对于“他们”来说,证书错误是“正常的”,我应该忽略它。
有问题的证书据说是我们服务器上“就在那里”的众多威瑞信证书之一。我看到的忽略证书错误的示例似乎都暗示请求者正在附加特定的 x509 证书(我不是)。
我查看了.net WebService,绕过 ssl 验证!which kinda-sorta 描述了我的问题 - 除了它也有点不,因为我不知道我应该参考哪个证书(如果有的话)。
有没有办法让我在不知道/关心导致问题的证书的情况下忽略错误?
并且拜托-孩子手套,小词和“傻瓜”代码,因为我不是一个重量级的击球手。
此流量通过专用线路 - 所以我的理解是,忽略证书错误并不像它是开放的互联网流量那么重要。
java - 我可以在 Java 中创建 Web 浏览器自动信任的自签名证书吗?
我使用 keytool 为我的 Java 应用程序生成了一个自签名证书。但是,当我在浏览器中访问该站点时,它总是会弹出一条警告-说该站点不拥有该证书-有没有办法自行签署/修改证书,所以我不会在a中收到这些警告浏览器?服务器和浏览器都位于同一主机上,我使用“ http://localhost/ ”导航到该站点。我不想向浏览器添加异常,因为我有在大型构建农场上运行的测试,因此向所有构建机器上的所有浏览器添加异常是过度的。
iphone - iPhone 应用程序中的“服务器证书不受信任”错误
我在我的 iPhone 3G OS 3.0.1 上使用我的 iPhone 应用程序没有任何问题。应用程序连接到位于https://api.serverdensity.com/1.0/的 API URL,所有请求都通过它。
该应用程序的用户报告说他们现在突然收到错误“不受信任的服务器证书”。没有其他用户遇到这个问题(我知道),我无法重现它。
SSL 证书是 *.serverdensity.com 上的通配符证书。它是从 GoDaddy 购买的,有效期至 2010 年 5 月。
此外,用户正在运行 OS 3.0.1,设备上的时间/日期设置正确,如果他在 Safari 中访问 API URL,它会正确加载。
对此原因有什么建议吗?
ssl - CA(证书颁发机构)从 CSR 提供什么?
我需要一个用于 Web 服务器的 SSL 证书。我可以使用以下 OpenSSL 命令生成自签名 SSL 证书:
如果我想要一个 CA 签名的证书,我可以生成一个 CSR(证书签名请求):
并将其发送给一个 CA。进而 ?我想知道 CA 发回的是什么:只有证书,还是证书和DH 参数,因为它们用于浏览器和服务器之间的协商?
openssl - 错误的 OpenSSL 证书
我正在尝试制作一个假 CA 并用它签署一个证书以与 stunnel 一起使用(这似乎只是在调用 OpenSSL 例程,所以您可能不需要知道该程序来提供帮助:)。但是,stunnel 一直拒绝我的证书,说它没有使用正确的密钥签名!
这就是我使用 OpenSSL 生成密钥和证书的方式:
然后我的 stunnel.conf 有这些条目:
当我尝试启动 stunnel 时,我收到了通用的 OpenSSL“密钥与证书不匹配”错误:
我在生成文件时做错了吗?
iis-7 - 有没有办法在 IIS 7 上将 https 重定向到 http?
我们没有购买 SSL 证书,因此我们网站的用户每次使用时都必须点击“批准”该网站。现在在 IIS 7 中是否有一种快速的方法可以将所有 https:// 流量重定向到 http://?这样所有内容都在 http:// 下提供
顺便说一句,我没有在 SSL 设置下勾选“需要 SSL”。
另外,如果我购买了 SSL 证书,我将如何指向它以便我的服务器上的 IIS 7 可以使用它并允许用户输入而不每次都警告他们?
谢谢!