针对信任库验证客户端证书

您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档
信息

本文档介绍如何验证是否已将正确的客户端证书上传到 Apigee Edge Routers。证书验证过程依赖于 OpenSSL,这是 NGINX 在 Apigee Edge Router 上使用的底层机制。

如果客户端应用作为 API 请求的一部分发送的证书与存储在 Apigee Edge Router 中的证书不匹配,将导致 400 Bad Request - SSL Certificate errors(400 请求错误 - SSL 证书错误)。使用本文档中所述的流程验证证书可帮助您主动检测这些问题并防止在运行时出现任何证书错误。

准备工作

在使用本文档中的步骤之前,请务必了解以下主题:

根据 Apigee 路由器上的信任库验证客户端证书

本部分介绍了用于验证客户端证书是否与 Apigee Edge Router 上信任存储区中存储的证书完全相同的步骤。

  1. 登录一台路由器机器。
  2. 前往 /opt/nginx/conf.d 文件夹,证书存储在 Apigee Edge Router 的信任库中。
  3. 确定要为其验证客户端证书的信任库。 信任库名称采用以下格式:
    org-env-virtualhost-client.pem
    

    其中:

    • org 是您的 Apigee 组织名称
    • env 是您的 Apigee 环境名称
    • virtualhost 是您的 Apigee 虚拟主机名
    • 例如,要验证以下内容:

      • 组织:myorg
      • 环境:test
      • 虚拟主机:secure

      信任库名称为:myorg-test-secure-client.pem

  4. 在本地机器上,使用 scpsftp 或任何其他实用程序将要验证的实际客户端证书转移到路由器上的 /tmp 目录。

    例如,使用 scp 命令,如下所示:

    scp client_cert.pem router-host:/tmp
    

    其中,router-host 是路由器机器的名称。

  5. 使用 OpenSSL 验证客户端证书,如下所示:
    openssl verify -trusted org-env-virtualhost-client.pem /tmp/client-cert.pem
    

    其中:

    • org 是您的 Apigee 组织名称
    • env 是您的 Apigee 环境名称
    • virtualhost 是您的 Apigee 虚拟主机名
  6. 修正上述命令返回的所有错误。

    如果 Apigee Edge Router 上的信任库不包含正确的证书,请删除 PEM 格式的正确证书,并使用此将证书上传到 Truststore API,然后将其上传到信任库。