【问题标题】:Delphi - Load PFX Certificates without installing it on Windows using CAPICOMDelphi - 加载 PFX 证书而不使用 CAPICOM 在 Windows 上安装它
【发布时间】:2013-06-07 05:46:59
【问题描述】:

我正在使用 CAPICOM 加载 WebService 客户端所需的证书。

我需要在 Windows 中安装证书,然后从证书文件本身打开它,我认为这“有点愚蠢”。

有没有办法(按优先顺序):

  • 将 PFX 文件内容保存到数据库中的备注字段,然后从那里加载,而不在 Windows 上安装?

  • 从文件本身加载 PFX 文件,而不在 Windows 上安装它

我正在使用 Delphi XE3、LibEay32 和 Capicom 2.0

【问题讨论】:

    标签: windows delphi certificate pfx capicom


    【解决方案1】:

    如果您想在 Windows 中安装证书,您总是会收到一个询问用户许可的弹出窗口,除非证书来自已受信任的根。如果您不希望这样,唯一的选择是每次需要证书时都使用备注字段中的 PFX 内容。

    我没有使用 Capicom 的经验,但据我所知,您使用的是 Microsoft DLL?

    如果您在使用 Capicom 和 LibEay32 时遇到问题,您可能需要查看 Eldos Secure BlackBox components。我在这些方面有很好的经验,他们的支持很棒。

    【讨论】:

    • Capicom 已过时,请参阅 http://msdn.microsoft.com/en-us/library/cc778518.aspx。为了将 WebServices 与 PFX 文件一起使用,我稍微修改了 SoapHTTPTrans.pas 单元以支持 Synapse(和 OpenSSL)
    • 我第二次使用 Eldos Secure BlackBox。不再使用 OpenSSL、capicom 等。它提供了加密所需的一切,然后提供了一些,并且它们的支持非常出色(即使它们在开始时可能看起来有点粗糙!)
    • 感谢您的回复!如果我使用 THTTPReqResp 建立通信,我将如何从 TMemo 加载 PFX?这将是理想的,因为将 pfx 内容保存在我的 SQL 数据库中会很有趣。
    • 我从 THTTPReqResp.ClientCertificate 代码中了解到,它只允许您选择安装在商店中的证书。使用其他方法加载证书似乎是不可能的。我认为你应该考虑放弃 THTTPReqResp。
    • 有什么替代方案? THTTPRIO?
    猜你喜欢
    • 2018-04-19
    • 1970-01-01
    • 2021-01-26
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    • 2014-10-04
    • 1970-01-01
    • 2011-04-22
    相关资源
    最近更新 更多