草庐IT

CA证书

全部标签

c# - 在哪里存储 Windows 服务的 X509 证书?

我有一个通常使用本地系统帐户运行的Windows服务(尽管在某些安装中它可能作为特定用户帐户运行)。该服务使用WCF,并使用X509证书保护通信。我的问题是,存储证书(和私钥)的最佳位置在哪里?如果使用证书存储是最好的方法,我应该使用哪种方法来确保只有管理员和服务才能访问私钥?或者,一个简单的选择是将两者作为PFX文件简单地存储在磁盘上,并使用ACL确保只有管理员和服务可以访问它。与使用证书存储相比,这种方法的优缺点是什么?编辑澄清一下,我将C#与.NETFramework3.5结合使用 最佳答案 首先,我建议您将证书保存在证书存储

windows - makecert 给出 "Fail to acquire a security provider from the issuer' 的证书”——为什么?

尊敬的女士们,先生们。观察这个简单的批处理文件:makecert-n"CN=MyCA"-srlocalmachine-ssroot-asha1-cyauthority-r-svMyCA.pvkMyCA.cerdelMyCA.pvkdelMyCA.cermakecert-n"CN=il-mark-lt"-srlocalmachine-ssmy-cyend-pe-skyexchange-asha1-isroot-irlocalmachine-inMyCA但是,最后一个makecert失败并显示以下错误消息:Error:Failtoacquireasecurityproviderfromth

windows - Windows证书存储中的私钥安全

当我将公共(public)/私有(private)对导入Windows证书存储区时,Windows不需要任何类型的密码来加密key。由此我得出结论,如果它是用户的商店,它会使用用户的密码(或者可能是用户的散列密码)来加密私钥,如果是本地机器商店,它可能是某种用于加密私钥的基于硬件的key。我做对了吗???如果我这样做了,如果我可以解密key,那么不可导出key的意义何在???最后一个问题-如果我到此为止,还有哪些选择? 最佳答案 正如“SLanks”链接所解释的那样,私钥是用用户密码或机器密码加密的(取决于key在商店中的位置)。因

flask配置SSL证书,实现https服务 & Nginx实战(推荐使用Nginx配置)

flask配置SSL证书,实现https服务&Nginx实战文章目录flask配置SSL证书,实现https服务&Nginx实战一、什么是数字签名二、windows+flask配置SSL证书,实现https服务方法1:通过flask的ssl_context或gunicorn命令,实现https服务方法2:Nginx配置httpsserver,实现https服务方法3:域名注册+证书申请,实现安全的https服务补充1:在https服务中,配置http服务补充2:配置静态资源,实现前端服务一、什么是数字签名参考加密,签名,token解释及场景分析摘要算法和加密算法区别数字证书及CA详解某电子商务

.net - .NET 4.6.2 中的 WCF 是否支持 CNG KSP 中带有 PK 的服务器证书?

在Windows上,TLS服务器证书(位于证书存储区中)带有私钥(PK),私钥位于CSPkeystore或CNGkeystore中。PK结束的位置,可以在导入证书时指定(即,在最近的Windows版本上),例如使用-sp(主题的提供者)参数到makecert.现在,如果未指定提供者,则默认设置不友好。PK最终出现在CNGKSP中,WCF将无法使用。微软says“.NETFramework4.6.1和更早版本不支持这些证书,因为它们使用旧版CryptoAPI来处理CNG/KSP证书。将这些证书与.NETFramework4.6.1和更早版本一起使用将导致异常。”但是,我看到安装在连接服务

c++ - 在编译时为 libcurl 定义 CA 信息

我已经使用OpenSSL为Windowsx64构建了libcurl。如果我使用libcurl命令指定CA信息,如下所示,我可以通过https发布我的数据。curl_easy_setopt(curl_handle,CURLOPT_CAINFO,"C:\\cacert.pem");我的问题是关于此处“证书验证”标题下的选项3:https://curl.haxx.se/docs/sslcerts.html3)AddtheCAcertforyourservertotheexistingdefaultCAcertificatestore.ThedefaultCAcertificatestorec

windows - 使用 PowerShell 重置 'Friendly Name' 证书属性

我需要一个证书的FriendlyName在证书控制台中设置为空值FriendlyName列将显示.使用此代码我所能得到的只是列中的空值,而不是我需要。gci"Cert:\LocalMachine\My"|?{$_.Subject-like"CN=mycer*"}|%{$_.FriendlyName=''}我也试过$_.FriendlyName=$null这没有什么区别。奇怪的事情-当我清除FriendlyName使用控制台,然后从Powershell的角度来看,该值为''因为以下语句会产生True:write-host($_.FriendlyName-eq'').然而,'''反之亦然应

windows - 新 Microsoft Windows 安装的默认受信任根证书颁发机构

我的理解是全新安装的MicrosoftWindows[10]带有一组默认的证书根授权机构。我在哪里可以查看该列表?例如在苹果的情况下是这样的:ListofavailabletrustedrootcertificatesinmacOSHighSierra或者对于浏览器,我们有以下内容:http://www.mozilla.org/projects/security/certs/included/我们在哪里可以获得Windows10的默认列表?此列表是否适用于其他版本的Windows(例如服务器版本)? 最佳答案 我不确定您是否找到了列

windows - 为什么 signtool.exe 仅在以管理员身份运行时才能找到证书?

我正在设置一台新的开发笔记本电脑,并安装了一个自行颁发的代码签名证书。我可以在当前用户的个人证书下的certmgr中看到它。当我尝试从VisualStudio2017的开发人员命令提示构建时,我得到:错误:SignTool错误:找不到满足所有给定条件的证书。这在我的旧笔记本电脑上一直运行良好。我发现如果我在以管理员身份启动后从命令提示符运行相同的构建,那么signtool会成功并且可以找到证书。当我们安装新笔记本电脑时,3/4的同事都遇到过这种情况。一个人没问题,可以在不以管理员身份运行的情况下签名。在我们的旧笔记本电脑上,我们从来不需要以管理员身份运行。我尝试使用谷歌搜索来查找可能的

.net - MMC 证书管理单元在哪里导入 "Service account"的证书?

WindowsMMC证书管理单元允许管理员使用“服务帐户”,但服务如何访问这些证书?如果我使用“服务帐户”以管理员身份导入到个人,并且以标准用户身份运行的服务使用System.Security.Cryptography.X509Certificates.X509Store在StoreLocation.CurrentUser(或StoreLocation.LocalMachine)中查找,它不会找到证书。如果我改为以服务帐户登录并从该标准用户帐户将证书导入个人,则服务会找到该证书。管理单元将“服务帐户”的证书放在哪里,服务如何使用.NET类找到它? 最佳答案