更新时间:2025-01-10 GMT+08:00

添加API的SSL证书

如果API分组中的API支持HTTPS请求协议,则在绑定独立域名后,还需为独立域名添加SSL证书。SSL证书是进行数据传输加密和身份证明的证书,支持单向认证和双向认证两种认证方式。

如果不配置SSL证书,将无法保障请求的链路安全,请谨慎配置。

  • 单向认证:客户端与服务端连接时,客户端需要验证所连接的服务端是否正确。

  • 双向认证:客户端与服务端连接时,除了客户端需要验证所连接的服务器是否正确之外,服务端也需要验证接入的客户端是否正确。

约束与限制

  • 仅支持添加pem编码格式的SSL证书。
  • 添加的SSL证书仅支持RSA、ECDSA加密算法。

前提条件

  • 已获取SSL证书。
  • 使用双向认证时,需要获取CA证书。

创建SSL证书

  1. 进入API网关控制台页面。
  2. 根据实际业务在左侧导航栏上方选择实例。
  3. 在左侧导航栏选择“API管理 > API策略”。
  4. 在“SSL证书管理”页面,单击“创建SSL证书”。
  5. 根据下表参数说明,配置证书。

    表1 SSL证书配置

    参数

    配置说明

    证书名称

    填写SSL证书的名称,根据规划自定义。建议您按照一定的命名规则填写SSL证书名称,方便您快速识别和查找。

    支持中文、英文、数字、英文格式的下划线,必须以英文或中文开头,长度为4~50个字符。

    可见范围

    • 当前实例:仅在当前实例下展示此证书。
    • 全局:在当前账号和当前region的所有实例下都会展示此证书。

    算法类型

    选择证书所使用的加密算法类型,可选择RSA或ECC。

    • RSA:目前在全球应用广泛的非对称加密算法,兼容性在三种算法中最好,支持主流浏览器和全平台操作系统。一般采用2048位或3072位的加密长度。
    • ECC:椭圆曲线加密算法。相比于RSA,ECC加密速度快、效率更高、服务器资源消耗低,目前已在主流浏览器中得到推广,成为新一代主流算法。一般采用256位加密长度。

    证书内容

    填写pem编码格式的SSL证书内容。

    以文本方式打开待添加证书里的PEM格式证书文件(后缀名为“.pem”),将证书内容复制到“证书内容”中即可。

    如果证书为非pem编码格式,可参考转换证书为PEM格式进行证书格式转换。

    密钥

    填写pem编码格式的SSL证书密钥。

    以文本方式打开待上传证书里的KEY格式或PEM格式的私钥文件(后缀名为“.pem”或“.key”),将私钥复制到“密钥”中即可。

    CA

    双向认证时,需要填写CA证书,CA证书会同时校验服务端证书和客户端证书。CA证书上传后,独立域名需要绑定SSL证书来开启双向认证。以文本方式打开上述证书内容的CA证书文件(后缀名为“.pem”),将内容复制到“CA”中即可。

    说明:

  6. 单击“确定”。

    证书创建完成后,进入API分组页面为独立域名绑定SSL证书(可选)

转换证书为PEM格式

格式类型

转换方式(通过OpenSSL工具进行转换)

CER/CRT

将“cert.crt”证书文件直接重命名为“cert.pem”。

PFX

  • 提取私钥命令,以“cert.pfx”转换为“key.pem”为例。

    openssl pkcs12 -in cert.pfx -nocerts -out key.pem

  • 提取证书命令,以“cert.pfx”转换为“cert.pem”为例。

    openssl pkcs12 -in cert.pfx -nokeys -out cert.pem

P7B

  1. 证书转换,以“cert.p7b”转换为“cert.cer”为例。

    openssl pkcs7 -print_certs -in cert.p7b -out cert.cer

  2. 将“cert.cer”证书文件直接重命名为“cert.pem”。

DER

  • 提取私钥命令,以“privatekey.der”转换为“privatekey.pem”为例。

    openssl rsa -inform DER -outform PEM -in privatekey.der -out privatekey.pem

  • 提取证书命令,以“cert.cer”转换为“cert.pem”为例。

    openssl x509 -inform der -in cert.cer -out cert.pem

更新SSL证书

进入证书列表页面,找到待更新证书,在“操作”列单击“编辑”,修改证书信息即可。

  • 更新SSL证书不影响API的调用。
  • 如果待更新证书已绑定独立域名,那么所有访问这个域名的客户端都会看到更新后的证书。
  • 如果更新的SSL证书已绑定独立域名且更新的内容新增CA证书,那么独立域名侧默认关闭“支持客户端认证”即关闭HTTPS双向认证;如果更新的SSL证书已绑定独立域名且更新的内容无CA证书,那么独立域名侧默认关闭“支持客户端认证”即未开启HTTPS双向认证。