Show Menu
主题×

Windows证书存储区

Windows证书存储区允许您将客户端的证书和私钥存储在Windows证书存储区中,以便与服务器进行SSL通信。
适用于客户端的 Windows 证书存储区是一个全新功能,它允许您将 SSL 通信证书和私钥存储在 Windows 证书存储区中,而不是 Insight/Certificates/<CertName>.pem 文件中。如果您将证书存储区用于其他应用程序并希望在一个位置进行证书管理,或者将证书存储区用于希望享用 Windows 证书存储区提供的其他 Windows 审核日志服务的用户,则使用 Windows 证书存储区会是更好的选择。
Licensing with the license server is still maintained using the existing <Common Name>.pem file, and that the certificate obtained from the certificate store will only be used for communication to the servers that you specify.

先决条件

  1. 您必须具有 certmgr.msc 文件的访问权限,并且能够将证书和密钥导入 Personal 存储区。(对于大部分 Windows 用户而言,默认情况下应当将其设置为 True。)
  2. 执行配置的用户必须具有 OpenSSL 命令行工具的副本。
  3. 必须将服务器和客户端配置为使用自定义 SSL 证书,如 使用自定义证书 中所述,它指明了应当将客户端证书存储在 Windows 证书存储区中,而不是存储在 Certificates 目录中。

配置 Windows 证书存储区

可通过以下步骤启用适用于客户端的 Windows 证书存储区:
步骤 1:将用户的 SSL 证书和私钥导入 Windows 证书存储区。
使用自定义证书 中,为您提供了如何将 SSL 证书和密钥放入以下目录的指导说明:
< 
<filepath>
  DWB Install folder 
</filepath>>\Certificates\

证书的名称 <Common Name>.pem 为(如 Analytics Server 1.pem (不是文 trust_ca_cert.pem 件)。
在可以导入证书和私钥之前,必须先将它们从 pem 格式 .pfx 化,如 pkcs12.pfx )。
  1. 打开命令提示符或终端,然后导航至目录:
    <CommonName>.pem c: cd \<DWB Install folder \Certificates
    
    
  2. Run openssl with the following arguments (with the actual .pem file name):
    openssl pkcs12 -in "<Common Name>.pem" -export -out "<Common Name>.pfx"
    
    
    如有提示,请按 Enter 以跳过输入导出密码的步骤。
  3. 从运行提示符、开始菜单或命令行中运行 certmgr.msc。
  4. 打开当前用户的 Personal 证书存储区。
  5. 右键单击 Certificates ,然后单击​ 所有任务 > 导入
    请确保已选中​ 当前用户 ​选项,然后单击​ 下一步
  6. Click Browse and select the <CommonName>.pfx file you created previously. 为了进行查看,您需要将 X.509 证书的文件扩展下拉框更改为​ 个人信息交换 ​或​ 所有文件
    选择文件并单击​ 打开 ,然后单击​ 下一步
  7. 请不要输入密码,并确保只选中了​ 标志此密钥为可导出的密钥 ​和​ 包括所有扩展属性 ​选项。
    单击​ 下一步
  8. 确保选中​ 将所有的证书都放入下列存储 ,并且所列出的证书存储区为 Personal 。(如果您是高级用户,可在此时选择其他存储区,但是您需要在以后更改配置。)
  9. 单击​ 下一步 ,然后单击​ 完成 。您应该会看到一个已成功导入的对话框,并且会在存储区的 Certificate 文件夹中发现您的证书。
    Pay particular attention to the Issued To and Issued By fields. 下面的步骤将需要使用这些字段。
步骤 2:编辑 Insight.cfg 文件。
必须编辑 Insight.cfg 文件,以便指示 Data Workbench 使用 Windows 证书存储区功能。此文件中的每一个服务器条目都必须指定一些额外的参数。如果忽略这些参数,工作站将默认使用现有的证书配置。如果指定了参数但具有不正确的值,工作站则会进入错误状态,您必须参考日志文件以了解错误信息。
  1. 打开 Insight.cfg 文件(位于 Insight 安装目录中)。
  2. 向下滚动到您要配置的服务器条目。如果您要将 Windows 证书存储区应用于每个服务器,则必须对 serverInfo 对象矢量中的每个条目进行此类修改。
  3. 将这些参数添加到他们的 Insight.cfg 文件。您可以在工作站中执行这一操作,或通过将以下参数添加到 serverInfo 对象来手动执行操作。(请确保使用空格而不是制表符,并且不要在此文件中出现其他录入或语法错误。)
    SSL Use CryptoAPI = bool: true  
    SSL CryptoAPI Cert Name = string: <Common Name>  
    SSL CryptoAPI Cert Issuer Name = string: Visual Sciences,LLC  
    SSL CryptoAPI Cert Store Name = string: My 
    
    
    布尔值可启用或禁用此功能。证书名称与证书管理器中的​ 颁发给 ​匹配。证书颁发者名称与​ 颁发者 ​匹配,而​ 存储区名称 ​必须匹配证书存储区名称。
    The name "Personal" in the Certificate Manager (certmgr.msc) actually refers to the certificate store named My. ​因此,如果您将 SSL 通信证书和私钥 (.PFX) 导入建议的 Personal 证书存储区,则必须将 SSL CryptoAPI 证书存储区名称 ​字符串设置为“My”。将此参数设置为“Personal”并不会起作用。这是 Windows 证书存储区的特性。
    可在此获取有关预定义系统存储区的完整列表: https://msdn.microsoft.com/zh-cn/library/windows/desktop/aa388136(v=vs.85).aspx 。您的系统可能具有额外的证书存储区。如果您要使用的存储区不是“Personal”(例如 My ),则必须获取证书存储区的规范名称,并在 Insight.cfg 文件中提供该名称。(Windows 文档对于系统存储区名称“My”的引用不一致,有时为“My”,有时为“MY”。此参数似乎不区分大小写。)
  4. 在添加了这些参数并验证值与 Windows 证书管理器中的列表匹配后,保存 Insight.cfg 文件。
您现在即可启动工作站(或者与服务器断开连接/重新连接)。Data Workbench 应当从证书存储区加载您的证书和私钥,并正常连接。

日志输出

当未找到证书或证书无效时,会在 HTTP.log 文件中引发此错误消息。
ERROR Fatal error: the cert could not be found!

The L4 logging framework can be enabled by setting up the L4.cfg file (see your account manager to set this up).