你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

导出受信任的客户端 CA 证书链以用于客户端身份验证

为了配置与客户端的相互身份验证或客户端身份验证,应用程序网关要求将受信任的客户端 CA 证书链上传到网关。 如果有多个证书链,则需要单独创建这些链,并在应用程序网关上将它们作为不同文件上传。 本文介绍如何导出可在网关上的客户端身份验证配置中使用的受信任的客户端 CA 证书链。

必备条件

生成受信任的客户端 CA 证书链需要现有的客户端证书。

导出受信任的客户端 CA 证书

需要受信任的客户端 CA 证书才能在应用程序网关上进行客户端身份验证。 在此示例中,我们将使用 TLS/SSL 证书作为客户端证书,导出其公钥,然后从该公钥导出 CA 证书以获取受信任的客户端 CA 证书。 然后,将所有客户端 CA 证书连接到一个受信任的客户端 CA 证书链。

以下步骤可帮助你导出证书的 .pem 或 .cer 文件:

导出公用证书

  1. 若要获取证书 .cer 文件,请打开“管理用户证书”。 找到该证书(通常位于“证书 - 当前用户”>“个人”>“证书”中),并单击右键。 单击“所有任务”,并单击“导出”。 此操作将打开“证书导出向导” 。 如果在 Current User\Personal\Certificates 下找不到证书,可能会意外地打开“Certificates - Local Computer”而不是“Certificates - Current User”)。 如果想要使用 PowerShell 在当前用户范围内打开证书管理程序,请在控制台窗口中键入“certmgr” 。

    Screenshot shows the Certificate Manager with Certificates selected and a contextual menu with All tasks, then Export selected.

  2. 在向导中,单击“下一步” 。

    Export certificate

  3. 选择“否,不导出私钥” ,并单击“下一步” 。

    Do not export the private key

  4. 在“导出文件格式” 页上,选择“Base-64 编码的 X.509 (.CER)” ,并单击“下一步” 。

    Base-64 encoded

  5. 对于“要导出的文件” ,“浏览” 到要将证书导出的目标位置。 在“文件名” 中,为证书文件命名。 然后单击“下一步”。

    Screenshot shows the Certificate Export Wizard where you specify a file to export.

  6. 单击“完成” 导出证书。

    Screenshot shows the Certificate Export Wizard after you complete the file export.

  7. 证书已成功导出。

    Screenshot shows the Certificate Export Wizard with a success message.

    导出的证书类似于以下内容:

    Screenshot shows a certificate symbol.

从公用证书导出 CA 证书

现在你已导出公用证书,接下来将从公用证书导出 CA 证书。 如果只有根 CA,则只需导出该证书即可。 但如果有多个中间 CA,则还需要导出每个 CA。

  1. 导出公钥后,打开该文件。

    Open authorization certificate

    about certificate

  2. 选择“证书路径”选项卡以查看证书颁发机构。

    cert details

  3. 选择根证书,然后单击“查看证书”。

    cert path

    应该会看到根证书详细信息。

    cert info

  4. 选择“详细信息”选项卡,然后单击“复制到文件...”

    copy root cert

  5. 此时,你已从公用证书中提取了根 CA 证书的详细信息。 此时会看到“证书导出向导”。 按照上一部分(导出公用证书)中的步骤 2-7 完成“证书导出向导”。

  6. 现在,对所有中间 CA 重复当前部分(从公用证书导出 CA 证书)的步骤 2-6,以导出采用 Base-64 编码的 X.509(.CER) 格式的所有中间 CA 证书。

    intermediate cert

    例如,你将对 MSIT CAZ2 中间 CA 重复本部分的步骤 2-6,以将其提取为自己的证书。

将所有 CA 证书连接到一个文件

  1. 对之前提取的所有 CA 证书运行以下命令。

    Windows:

    type intermediateCA.cer rootCA.cer > combined.cer
    

    Linux:

    cat intermediateCA.cer rootCA.cer >> combined.cer
    

    生成的合并证书应如下所示:

    combined cert

后续步骤

现在,你已获得受信任的客户端 CA 证书链。 可将此链添加到应用程序网关上的客户端身份验证配置,以允许与网关进行相互身份验证。 请参阅使用应用程序网关通过门户配置相互身份验证使用应用程序网关通过 PowerShell 配置相互身份验证