跳到主要内容 跳到补充内容

管理密钥和证书

Qlik NPrinting 加密需要 PEM 格式的 X.509 证书文件。您可生成自签名的证书,或者通过证书颁发机构 (CA) 进行签名。单个证书同时涵盖 NewsStandQlik NPrinting web 控制台,因为它们具有相同的域名。

限制

  • 使用兼容 CNG 的算法生成的证书和 On-Demand 插件不兼容。

生成 PEM 格式的公开和私密 RSA 密钥对

进行以下操作:

  1. 打开 Windows 命令行提示。

  2. 移动至 OpenSSL 二进制文件夹。默认命令为: cd C:\OpenSSL-Win64\bin

    如有必要,您可以自定义文件夹。将在该文件夹中创建文件,然后您将把它们移动到最终文件夹中。

  3. 运行命令: openssl genrsa -out NPrinting.key 4096.

    genrsa 是生产 RSA 私钥的选项。4096 是生成的私钥的大小(以位为单位)。

  4. 如果要只导出 PEM 格式公开证书,请运行命令: openssl rsa -in NPrinting.key -outform PEM -pubout -out NPrintingPublic.pem.

    pubout 是从 RSA 私钥提取公钥的 OpenSSL 选项。

    警告注释证书密钥不得受密码保护。
    警告注释不应向任何人披露私钥,也不应将其发送给证书颁发机构。将其备份并存放在安全位置。您可根据需要散布公钥文件。
  5. 在共享您的公钥文件之前,我们建议您目视检查它,确保发送的文件无误。

    1. 在文本编辑器中打开文件 NPrinting.keyNPrinting.key 是您的私钥,以 -----BEGIN RSA PRIVATE KEY----- 开头。保密。

    2. 在文本编辑器中打开文件 NPrintingPublic.pemNPrintingPublic.pem 是您的公钥,以 -----BEGIN PUBLIC KEY----- 开头。您可共享该文件。

私钥安全

Qlik NPrinting 全天候操作。这表明私钥必须存储在未加密的文件系统上。用密码来保护私钥不可行,因为每次服务重启时管理员都必须输入密码。您可通过仅将访问权限赋予管理员来保护私钥文件。私钥文件都仅用于 TLS,永远不会脱离服务器。

生成自签名证书

自签名证书是一种身份证书,由拥有证书的实体签名。该实体使用其自己的私钥来认证其身份。使用自签名证书可让您自己签署自己的证书。

您可在以下情况下使用自签名证书:

  • 您希望使用 HTTPS(HTTP上的TLS)来保护自己的 Web 服务器。
  • 您不需要由证书颁发机构 (CA) 签署您的证书。

例如,如果您的 Web 服务器仅在您的局域网内使用,则您可使用自签名证书。

进行以下操作:

  1. 打开 Windows 命令提示符。
  2. 移动至 OpenSSL 二进制文件夹。默认命令为 cd C:\OpenSSL-Win64\bin。将在该文件夹中创建文件,然后您将把它们移动到最终文件夹中。
  3. 要创建自签名证书,请运行以下命令:
    openssl req -newkey rsa:4096 -nodes -keyout NPrinting.key -x509 -days 365 -out NPrinting.crt

    其中:

    • req 是 PKCS#10 证书请求并且生成实用程序。
    • -x509 选项指示 req 创建自签名证书。
    • -days 365 选项指定证书的有效时间为 365 天。

    要跳过交互性问题,可使用 -subj,后接您的在引号中的域信息。

    例如:

    -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=mywebsitedomain.com"

警告注释不应向任何人披露私钥,也不应将其发送给证书颁发机构。将其备份并存放在安全位置。

您可散布公钥文件。

从证书颁发机构购买证书

如果在您的 Web 服务器可经由 Web 浏览器公开访问的情况下,您需要避免安全警告,则您的证书必须由证书颁发机构 (CA) 签名。有许多证书颁发机构。您所选择 CA 将有其自身要遵照的特定说明。有关生成和实施 CA 签名的证书的一些步骤对于所有证书颁发机构是通用的。以下各部分概述了这些通用步骤。

生成证书签名请求

要获得 CA 签名的证书,则必须生成证书签署请求 (CSR)。CSR 包含您的公钥以及其他额外信息。该信息将包括在已签名的证书中。CSR 永远不包含私钥。

进行以下操作:

  1. 为了生成 CSR,私钥运行以下命令:

    openssl req -new -newkey rsa:4096 -nodes -keyout NPrinting.key -out NPrinting.csr

  2. 将提示您回答交互性问题。
    要跳过交互性问题,可使用 -subj,后接您的在引号中的域信息。

    例如:

    -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=mywebsitedomain.com"

对于创建 CSR 所需的任何自定义程序,请参阅证书颁发机构的说明。

通用名称字段

通用名称 (CN) 字段中的名称必须为将使用证书的完全限定的域名 (FQDN)。

例如:

  • 如果您的 NewsStand 的 URL 为 https://yourcompany.com:4994,则 FQND 为 yourcompany.com(端口不属于 FQND 的一部分)。
  • URL https://www.yourcompany.com:4994 被视为不同于 https://yourcompany.com:4994。如果您希望 URL 地址成为有效的主机名,则必须生成两个证书,一个包含 FQDN www.yourcompany.com,一个包含 FQDN yourcompany.com。

将已签署的证书和服务器证书合并

在使用证书颁发机构 (CA) 签署的证书时,您必须创建包含以下项的 PEM 文件证书捆绑:

  • 服务器证书

  • 任何中间产物

  • CA 签名的证书

对于串联,确保应用以下顺序:

  1. 域证书
  2. 中间证书(一个或多个)
  3. 根证书

一旦您创建了证书捆绑,则将它结合您的私钥使用以设置代理。必须提供包含证书和匹配服务器私钥的文件。

进行以下操作:

在本例中,域的证书是 NPrinting.crt

  1. 打开 Windows 命令行并输入以下内容:

  2. more NPrinting.crt >> NPrinting.public.pem
    more RSADomainValidationSecureServerCA.crt >> NPrinting.public.pem
    more RSAAddTrustCA.crt >> NPrinting.public.pem
    more AddTrustExternalCARoot.crt >> NPrinting.public.pem

    其中:

    • NPrinting.crt 为域证书。
    • NPrinting.public.pem 为将用于设置代理的证书捆绑。
    • RSADomainValidationSecureServerCA.crtRSAAddTrustCA.crt 为中间证书。
    • AddTrustExternalCARoot.crt 是根证书。
  3. 使用 NPrinting.public.pem 作为证书文件和私钥来设置代理。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!