问题标签 [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.

0 投票
4 回答
9974 浏览

certificate - 为什么我们需要 pfx(密钥交换)文件?

如果我们使私钥可导出(使用 makecert 中的 -pe 选项),那么理论上我们同时拥有可导出的私钥和公钥(证书中的公钥)——可以将其传输或导入另一台机器。

所以,我的问题是,为什么我们仍然需要创建 .pfx 文件(密钥交换文件,其中包含私钥和公钥)——让私钥在证书中可导出可以做任何我们想做的事情?任何场景 pfx 文件都可以涵盖哪些使证书中的私钥可导出无法实现?

提前谢谢,乔治

0 投票
1 回答
1562 浏览

internet-explorer - Internet Explorer 和客户端身份验证

我希望 Intenet Explorer 允许我在连接到启用客户端身份验证的 Web 服务器时选择身份。

目前,我已将 Tomcat Web 服务器配置为使用客户端身份验证。我还有一个 ssl 客户端访问密钥库并成功连接到 Web 服务器。但是,当尝试让 IE 7 成功连接到 Web 服务器时,方法失败了。我做了以下事情:

我创建了一个 pkcs12 文件,其中包含一个私钥以及相关的数字证书(它目前是自签名的)。

然后我进入 IE Tools-Internet-Options-Content 并将 pkcs12 文件导入个人证书框。当浏览器尝试与 Web 服务器建立连接时,我收到一条名为“选择数字证书”的弹出消息

然而,查看证书按钮是灰色的。我认为这个按钮应该允许我选择与我导入的密钥对关联的证书。

  1. 为什么会变灰?
  2. 我要一起完成的工作的方法是否不同?

谢谢,迈克

0 投票
0 回答
1845 浏览

ssl - 如何使用 IIS 6 以编程方式将虚拟目录配置为需要 SSL?

如何以编程方式在 IIS 6 上配置虚拟目录以从本地证书存储中已有合适证书的起点开始要求 SSL 和客户端证书,但是当前网站(例如默认网站)尚未设置为使用证书?

我知道如何使用 inetmgr GUI 执行此操作,但是,我希望能够以编程方式执行这些操作,最好是从批处理脚本或 C# 程序。

我从 IIS 6.0 Resource Kit 中发现了 IISCertDeploy.vbs,但是,我认为它不能满足我的需要。如果可以使用它,那么我将欣赏一个比它提供的更有用的示例来说明如何使用它。

更新:我设法找到了一个解决方案,只要默认网站安装了 SSL 证书就可以工作。这是我为遇到类似问题的任何人的解决方案的解释。

我编写了一个使用Microsoft 的 adsutil.vbs的批处理脚本(包括在下面) 。我还没有设法以编程方式针对默认网站安装证书,但是,目前可以接受将其作为手动一次性步骤。

0 投票
1 回答
4461 浏览

windows-server-2003 - 智能卡客户端证书未在 Win 2003 x64 服务器上的个人存储中注册

我正在通过 Windows 证书存储从 c# 访问智能卡。这适用于许多系统。然而,在一个系统上,它没有。智能卡证书不会添加到个人证书中。

我们需要它在证书存储中才能从 C# 访问它,如下所示:

系统详情:

  • 操作系统:Windows Server 2003 R2 x64 SP2
  • 使用的 CSP 是SafeSign Identity Client v3.0.11
  • 该系统通过 Citrix ICA 连接、Citrix Presentation Server 4.5 访问。

什么有效:

  • 通过智能卡读卡器( OMNIKEY 3121)提供的诊断工具访问卡
  • 在 Internet Explorer 7 中查看个人证书(工具 > Internet 选项 > 内容 > 证书
  • 基本上我们用这张卡尝试过的所有其他事情,除了......

什么不起作用:

  • 个人证书不会复制到个人证书存储区(可以使用 certmgr.msc 检查)

我的猜测是通过 Citrix 转发智能卡可以正常工作,因为我们几乎可以通过所有方式访问它,但 CSP 无法正常工作。然而,获得对 CSP 的支持并不容易,因此提出了这个问题。我觉得奇怪的是证书可以通过 IE7 访问,这表明它们在某种 Windows 商店中可用。

欢迎任何关于在哪里进一步研究的想法。是否有像 IE 一样访问智能卡证书的不同方式?

0 投票
1 回答
679 浏览

c# - 为什么我会在 X509CertificateStore 上的 OpenRead 中获得 ExecutionEngineException?

我将 WebServicesClientProtocol 类与安全令牌一起使用,并使用以下代码查找要使用的安全令牌:

时不时地(但并非总是如此,而且我无法确定确切的时间)我得到以下异常:

替代文字 http://www1.ruedenet.is/files/exception.png

0 投票
0 回答
9520 浏览

iphone - iPhone - 使用自签名证书的 HTTPS 连接到服务器

可能重复:
我可以使用 NSURLCredentialStorage 进行 HTTP 基本身份验证吗?

我将如何接受自签名服务器证书?使用下面的代码,我只能在使用 Safari 接受服务器证书后进行连接/身份验证。

0 投票
1 回答
3385 浏览

c# - 为什么我在使用 IIS 时得到 Cryptography_CSP_NoPrivateKey 而在使用 VS 开发服务器时却没有?

我正在做一个利用外部网络服务的网络应用程序。这个外部网络服务要求我签署我的每一个请求。所以我使用WebServicesClientProtocol类和 .NET 2.0,首先使用外部 Web 服务,然后手动编辑Reference.cs文件并将扩展类System.Web.Services.Protocols.SoapHttpClientProtocolMicrosoft.Web.Services2.WebServicesClientProtocol. 然后在Page_Load方法中我有以下代码:

当我使用 Visual Studio 开发服务器运行它时,这工作正常,但是当我更改为 IIS 时,它停止工作并且我得到了丑陋的Cryptography_CSP_NoPrivateKey异常。

1)我已经使用 MMC 将证书正确读入 LocalMachine/MyStore,然后我使用 WSE 2.0 SP3 更改了私钥权限,以便每个人都可以完全访问它。你可以从这里看到:

替代文字 http://www1.ruedenet.is/files/CertError1.png

2)我还设置了属性,以便在调试应用程序时使用 Visual Studio 开发服务器:

替代文字 http://www1.ruedenet.is/files/CertError2.png

3)然后我运行它并得到一个不错的结果:

替代文字 http://www1.ruedenet.is/files/CertError3.png

4)但是,当我将属性更改为使用 IIS(并让 VS 创建虚拟目录)时,如下所示:

替代文字 http://www1.ruedenet.is/files/CertError4.png

5)我还更改了 IIS 中的身份验证方法,以便我登录(真的没有理由):

替代文字 http://www1.ruedenet.is/files/CertError5.png

6)所以我被要求登录Windows:

替代文字 http://www1.ruedenet.is/files/CertError6.png

7)然后我的页面运行并产生错误:

替代文字 http://www1.ruedenet.is/files/CertError7.png

如果你能帮我解决这个问题,我一定会很感激的。我已经花了几个小时在上面,如果我犯了你们可以看到的基本错误,我不想花更多时间。顺便说一句:我正在 Windows Server 2008 上使用 Visual Studio 2008 进行开发,并关闭了 UAC :-)

真的很期待收到你们的来信。谢谢。

0 投票
4 回答
96156 浏览

iphone - 如何为 iPhone 分发证书创建私钥?

在 iPhone Developer Program Portal 中,有一个视频演示如何创建开发证书并分配私钥

现在我已经完成了开发过程并开始分发

我已经创建了一个“分发证书”,但是如何为这个证书分配一个私钥?

编译时出现“CodeSign 错误:代码签名身份'...'与钥匙串中的任何代码签名证书都不匹配”

如果我需要将私钥分配给分发证书以及如何分配,我很高兴现在让我这样做。

请注意,我在这里不是在谈论开发证书,谢谢。

0 投票
2 回答
7224 浏览

sql-server-2008 - 在 SQL Server 镜像方案中设置见证时出现错误

我有三个不属于任何域且不使用 AD 的 Windows 服务器(data1、data2 和 datawitness)。我正在尝试根据http://alan328.com/SQL2005_Database_Mirroring_Tutorial.aspx上的说明设置镜像。在我告诉 data1 使用 datawitness 作为见证服务器的最后一组指令之前,我已经取得了成功。该步骤失败并显示以下消息:

更改数据库 MyDatabase 设置见证 = 'TCP://datawitness.somedomain.com:7024'

ALTER DATABASE 命令无法发送到远程服务器实例“TCP://datawitness.somedomain.com:7024”。数据库镜像配置未更改。验证服务器是否已连接,然后重试。

我已经使用 telnet 测试了端口 7024 和 1433,并且两台服务器确实可以相互连接。我还可以从主服务器上的 SQL Server 管理器添加到见证服务器的连接。我已经在两台服务器上使用配置管理器来启用命名管道并验证 IP 流量是否已启用并默认使用端口 1433。

还能是什么?我是否需要打开任何其他端口才能使其正常工作?(防火墙规则非常严格,但我知道前面提到的端口上的流量是明确允许的)

这里值得一提的注意事项:

  • 每台服务器在不同的网段

  • 服务器不使用 AD 并且不是域的一部分

  • 没有为这些服务器配置 DNS 服务器,因此我使用 HOSTS 文件将域名映射到 IP 地址(使用 telnet、ping 等验证)。

  • 防火墙规则非常严格,我无法直接调整它们,但如果需要我可以调用更改

  • Data1 和 Data2 使用 SQL Server 2008,Datawitness 使用 SQL Express 2005。它们都使用默认实例(即它们都不是命名实例)

0 投票
2 回答
1312 浏览

iis - 如何在 XP 和 C# 上使用 IIS5.1 调试客户端证书

奥拉,

我需要开发一个需要客户端证书的网站(在 C# 中,asp.net 3.5)。我想使用 Visual Studio 对此进行调试。我已经使用出色的工具SelfSSL设置 IIS 以使用自签名证书我还设置了默认站点以要求 SSL 并要求客户端证书。但我不知道如何创建 IIS 接受的客户端证书。浏览到测试站点时,我收到(预期的)错误:

如何创建客户端证书?

[更新] 按照 sipwiz 的建议,我使用 makecert 创建了一个证书。但是,IIS 似乎并未将此证书识别为有效的客户端证书。我已导出服务器证书并添加了 -ic (servercert) 开关。这仍然不能解决问题。