为 AX 服务器安装安全证书

证书机构 (CA) 安装一个证书,替换用于确保 AX 服务器和客户端应用程序之间 SSL 连接安全的默认自签名证书。

工具和必备知识

此任务需要您使用 Oracle 的 keytool 实用程序管理密钥和证书。关于 keytool 实用程序的详细信息,请参阅 Oracle keytool 文档

要成功完成这项任务,您也应该熟悉使用安全证书和 Java 密钥库技术︰

  • 安全证书用来证明公钥所有权的电子文档。证书包括密钥信息、其拥有者的身份信息,以及已经验证证书内容正确无误的实体的数字签名。要了解更多信息,请参考 安全证书
  • Java 密钥库 存储安全证书以及以 SSL 加密的相应私钥的存储库。要了解更多信息,请参阅 Oracle:创建密钥库

开始之前,备份 TomEE 应用程序服务器的配置

  1. 在 Windows 资源管理器中,在用于更新密钥库配置的 Analytics Exchange 服务器应用程序的安装目录中打开 TomCat\conf 子文件夹。
  2. conf\tomee.xmlconf\server.xmlconf\system.properties 文件复制到某个安全的备份位置。

    若在配置安全证书过程中遇到任何问题,您都可以通过如下方法来恢复原配置:停止 ACL Analytics Exchange 服务,恢复这些文件,然后重新启动服务。

服务器端流程

提示

将 Java bin 子目录添加到操作系统的 PATH 环境变量中,这样就可以使用 keytool 命令而无须指定完整路径。要将该子目录添加到会话路径,请执行Set PATH=<java bin 路径>;%PATH%

如果您使用的是 PFX 证书文件,则可以使用一个 keytool 命令将其转换为具有私钥的密钥库:

keytool -importkeystore -srckeystore 您的 pfx 文件.pfx -srcstoretype pkcs12 -destkeystore cientcert.jks -deststoretype JKS

创建新密钥库

  1. 在服务器上打开命令提示窗口。
  2. 使用以下语法创建新的密钥库:

    keytool -genkeypair -alias <别名> -keyalg RSA -keystore <密钥库文件名>

    示例 keytool -genkeypair -alias AX_store -keyalg RSA -keystore myAxKeystore

  3. 回答出现的每一个问题:
    字段示例
    您的名字和姓氏是什么?

    说明

    对这一问题,您必须输入您的 AX 服务器实例的主机名。

    axserver.ax.com
    您的组织单位名称是什么?采购
    您的组织名称是什么?示例公司
    您所在城市或地区的名称是什么?库比蒂诺
    您所在州或省的名称是什么?CA
    此单元的两字母国家代码是什么?US
    <CN=axserver.ax.com, OU=采购, O=示例公司, L=库比蒂诺, ST=加州, C=US> 对吗?y

    回车键使用与密钥库相同的密码,或指定新密码并按回车键

在新密钥库上生成证书签名请求(CSR)

说明

如果您使用现有的证书,跳过此节。

如果您已从商业 CA(例如 VeriSign)购得安全证书,请查阅他们提供的文档来了解配置密钥库的信息。使用以下语法创建 CSR:

keytool -certreq -alias <别名> -keyalg RSA -file <csr 输出文件> -keystore <密钥库文件名>

结果您现在有一个文件,可以用于从证书颁发机构请求证书。

导入 CA 证书到密钥库

如果您的证书因格式(如 PKCS12)问题无法导入密钥库,且无法转换为 PEM 格式,请联系“支持”,获得与在 Tomcat 中配置证书有关的帮助。

  1. 根据使用的 CA,可能需要在密钥库中导入中间证书和/或根证书。使用下列语法,导入其中的一个证书或将两个都导入:

    keytool -import -alias <别名> -keystore <密钥库文件名> -trustcacerts -file <证书文件名>

    如果将两个证书都导入,则为每个证书指定的别名应唯一。需要先导入根证书,然后再次运行 keytool 命令导入中间证书。

  2. 使用以下语法导入安全证书:

    keytool -import -alias <别名> -keystore <密钥库文件名> -trustcacerts -file <证书文件名>

    指定的别名必须与生成密钥库时指定的值相同。导入的证书将取代密钥库中已创建的默认自签名证书。

  3. 复制密钥库文件到 App\keystores 子文件夹。

配置 TomEE 应用程序服务器以使用证书

  1. TomCat\conf 子文件夹中查找 server.xml,然后在文本编辑器中打开它。
  2. 更新以下设置,然后保存并关闭 server.xml
    • keystoreFile 您创建的密钥库文件的名称和路径,采用以下格式:C:\ACL\App\keystores\<您的密钥库名称>
    • keystorePass 您在创建密钥库时为其指定的密码。必须将密码放在双引号 ('' '') 中。
  3. TomCat\conf 子文件夹中查找 system.properties,然后在文本编辑器中打开它。
  4. 更新以下设置,然后保存并关闭 system.properties
    • javax.net.ssl.trustStore 您创建的密钥库文件的名称和路径,采用以下格式:C:/ACL/App/keystores/<您的密钥库名称>

      说明

      您必须在密钥库路径中使用正斜杠 '/' 字符。如果您使用反斜杠字符 '\'(这在 Windows 环境中很常见),您将在登录时遇到服务器错误。

    • javax.net.ssl.trustStorePassword 您在创建密钥库时为其指定的密码
  5. 重启 ACL Analytics Exchange Service。

客户端流程

将证书导入到 AX 客户端机器 Java cacerts 文件

如果您正在使用一种默认在 cacerts 文件中没有根证书的证书,必须在安装了 AX 客户端的每台最终用户计算机上完成该配置。

  1. 打开 Windows Explorer 并导航到安装了 AX 客户端的 jre\lib\security 子文件夹中的 cacerts 文件。

    默认位置是 C:\Program Files(x86)\ACL Software\ACL Analytics Exchange Client\jre\lib\security

  2. 在进行任何更改之前,请创建该文件的备份副本。
  3. 根据接收到的您当前使用的证书颁发机构颁发的证书,可能需要将中间证书和/或根证书导入到 cacerts 文件。使用下列语法,导入其中的一个证书或将两个都导入:

    keytool -import -alias <别名> -keystore <

    cacerts 文件

    > -trustcacerts -file <证书文件名>如果将两个证书都导入,则为每个证书指定的别名应唯一。

  4. 密码提示处键入该密钥库的密码,然后按 Enter

    cacerts 文件的默认 Java 密码为 changeit

  5. 信任此证书?提示处键入 y,然后按回车键

如有必要,在将访问 Analytics Exchange Web 应用程序的每台计算机上的 Web 浏览器中安装证书。

说明

如果证书由 Internet Explorer 中位于受信任的根证书颁发机构列表中的 CA 提供,则不需要以上操作。大型商业 CA,例如 VeriSign,包括在此列表中。

Analytics Exchange 14.1 服务器管理指南