Tag: 客户端证书

使用Windows RT客户端证书(Windows 8.1 / Windows Phone 8.1)

我正在尝试Windows 8.1和Windows Phone 8.1的一个新function,即证书存储和可能性使用客户端证书在服务器端的客户端身份validation。 不过,我有这个function的问题。 我有一个基本的testingWCF服务运行IIS快递。 IIS Expressconfiguration为支持SSL和客户端证书。 在IIS的configuration文件(configurationhost.config)中我已经设置了这个: <access sslFlags="SslRequireCert" /> (tried also SslNegotiateCert) <clientCertificateMappingAuthentication enabled="true" /> 我已经在Windows RT应用程序中添加了客户端证书,如下所示: //Install the self signed client cert to the user certificate store string CACertificate = null; try { Uri uri = new Uri("ms-appx:///Assets/AdventureWorksTestClient1.pfx"); var file = await Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(uri); IBuffer buffer = await FileIO.ReadBufferAsync(file); using (DataReader dataReader […]

IIS 7错误“指定的login会话不存在。 它可能已经被终止。“当使用https

我正在尝试为我的asp.net网站创build客户端证书身份validation。 为了创build客户端证书,我需要首先创build一个证书颁发机构: makecert.exe -r -n“CN = My Personal CA”-pe -sv MyPersonalCA.pvk -a sha1 -len 2048 -b 01/01/2013 -e 01/01/2023 -cy authority MyPersonalCA.cer 然后,我必须将其导入到IIS 7,但由于它接受.pfx格式,我首先将其转换 pvk2pfx.exe -pvk MyPersonalCA.pvk -spc MyPersonalCA.cer -pfx MyPersonalCA.pfx 导入MyPersonalCA.pfx后,我尝试添加https站点绑定到我的网站,并select上述作为SSL证书,但我得到以下错误: 有什么build议么?

REST风格的Web服务 – 如何authentication来自其他服务的请求?

我正在devise一个需要被用户访问的REST风格的Web服务,也包括其他Web服务和应用程序。 所有传入的请求都需要进行身份validation。 所有通信都通过HTTPS进行。 用户authentication将基于通过将用户名和密码(通过SSL连接)发布到由服务提供的/会话资源而获取的authentication令牌来工作。 在Web服务客户端的情况下,在客户端服务之后没有最终用户 。 这些请求由计划的任务,事件或一些其他计算机操作启动。 连接服务列表事先已知(显然,我猜)。 我应该如何validation来自其他(networking)服务的这些请求? 我希望validation过程尽可能容易地实现这些服务,但不以安全为代价。 这样的场景的标准和最佳实践是什么? 我可以想到的选项(或者已经向我build议): 让客户端服务使用“假”用户名和密码,并以与用户相同的方式对其进行身份validation。 我不喜欢这个选项 – 只是觉得不对。 为客户端服务分配永久的应用程序ID,也可能是应用程序密钥。 据我了解,这是有相同的用户名+密码。 有了这个ID和密钥,我可以对每个请求进行身份validation,或者创build一个身份validation令牌来validation进一步的请求。 无论哪种方式,我不喜欢这个选项,因为任何能够获得应用程序ID和密钥的人都可以模拟客户端。 我可以添加一个IP地址检查到以前的选项。 这将使得执行虚假请求变得更困难。 客户端证书。 设置我自己的证书颁发机构,创build根证书,并为客户机服务创build客户机证书。 但是,有几个问题想到:a)如何仍然允许用户在没有证书的情况下进行身份validation; b)从客户端服务的angular度来看,这种情况有多复杂? 还有其他的东西 – 那里必须有其他的解决scheme吗? 我的服务将运行在Java上,但是我特意留下了关于它将构build的具体框架的信息,因为我对基本原则更感兴趣,而不是更多地关注实现细节 – 我认为这是最好的解决scheme无论底层框架如何,都可以实现。 不过,我对这个主题有点不熟悉,所以对于实际实现(如有用的第三方库,文章等)的具体提示和例子也将非常感激。

Java HTTPS客户端证书authentication

我对HTTPS / SSL / TLS相当陌生,而且我对使用证书进行身份validation时客户端的performance有些困惑。 我正在写一个Java客户端,需要做一个简单的POST数据到一个特定的URL。 这部分工作正常,唯一的问题是它应该通过HTTPS完成。 HTTPS部分相当容易处理(使用HTTPclient或使用Java的内置HTTPS支持),但我坚持使用客户端证书进行身份validation。 我注意到在这里已经有一个非常类似的问题,我还没有用我的代码尝试过(将尽快这样做)。 我目前的问题是 – 无论我做什么 – Java客户端永远不会发送证书(我可以检查这与PCAP转储)。 我想知道当用证书进行身份validation时,客户端应该向服务器提供什么(专门用于Java–如果这很重要的话)? 这是一个JKS文件,或PKCS#12? 他们应该是什么 只是客户端证书,或一个关键? 如果是这样,哪个键? 关于所有不同types的文件,证书types等都有相当多的混淆。 正如我之前所说,我是HTTPS / SSL / TLS的新手,所以我也希望能够获得一些背景信息(不一定是散文,我会解决链接到好文章)。