您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档。 信息
本文档介绍如何验证是否已将正确的客户端证书上传到 Apigee Edge Routers。证书验证过程依赖于 OpenSSL,这是 NGINX 在 Apigee Edge Router 上使用的底层机制。
如果客户端应用作为 API 请求的一部分发送的证书与存储在 Apigee Edge Router 中的证书不匹配,将导致 400 Bad Request - SSL Certificate errors(400 请求错误 - SSL 证书错误)。使用本文档中所述的流程验证证书可帮助您主动检测这些问题并防止在运行时出现任何证书错误。
准备工作
在使用本文档中的步骤之前,请务必了解以下主题:
- 如果您不熟悉 OpenSSL 库,请参阅 OpenSSL。
- 如果您想使用本指南中的命令行示例,请安装或更新到最新版本的 OpenSSL 客户端。
- 确保证书采用 PEM 格式;如果没有,请 将证书转换为 PEM 格式。
根据 Apigee 路由器上的信任库验证客户端证书
本部分介绍了用于验证客户端证书是否与 Apigee Edge Router 上信任存储区中存储的证书完全相同的步骤。
- 登录一台路由器机器。
-
前往
/opt/nginx/conf.d
文件夹,证书存储在 Apigee Edge Router 的信任库中。 -
确定要为其验证客户端证书的信任库。
信任库名称采用以下格式:
org-env-virtualhost-client.pem
其中:
- org 是您的 Apigee 组织名称
- env 是您的 Apigee 环境名称
- virtualhost 是您的 Apigee 虚拟主机名
-
组织:
myorg
-
环境:
test
-
虚拟主机:
secure
例如,要验证以下内容:
信任库名称为:
myorg-test-secure-client.pem
- 在本地机器上,使用
scp
、sftp
或任何其他实用程序将要验证的实际客户端证书转移到路由器上的/tmp
目录。例如,使用
scp
命令,如下所示:scp client_cert.pem router-host:/tmp
其中,router-host 是路由器机器的名称。
-
使用 OpenSSL 验证客户端证书,如下所示:
openssl verify -trusted org-env-virtualhost-client.pem /tmp/client-cert.pem
其中:
- org 是您的 Apigee 组织名称
- env 是您的 Apigee 环境名称
- virtualhost 是您的 Apigee 虚拟主机名
-
修正上述命令返回的所有错误。
如果 Apigee Edge Router 上的信任库不包含正确的证书,请删除 PEM 格式的正确证书,并使用此将证书上传到 Truststore API,然后将其上传到信任库。