配置APIG专享版与客户端间的单向认证或双向认证
应用场景
API前端定义中的请求协议支持HTTPS时,API所属分组在绑定独立域名后,还需为独立域名添加SSL证书。SSL证书是进行数据传输加密和身份证明的证书,当SSL证书带有CA证书时,默认开启客户端认证即双向认证;反之,开启单向认证。
- 单向认证:客户端与服务端连接时,客户端需要校验服务端SSL证书合法性。
- 双向认证:客户端与服务端连接时,除了客户端需要校验服务端SSL证书合法性,服务端也需要校验客户端SSL证书合法性。
单向认证
- 登录API网关控制台页面。
- 根据实际业务在左侧导航栏上方选择实例。
- 创建SSL证书。
- 在左侧导航栏选择“API管理 > API策略”。
- 在“SSL证书管理”页签中,单击“创建SSL证书”。
表1 配置单向认证的证书信息 参数
配置说明
证书名称
填写证书名称。
可见范围
此处选择“当前实例”。
证书内容
-----Start certificate----- MIICXgIBAAKBgQC6ndRHy5Dv5TcZiVzT6qF iaMGy61ZIbUrmBhUn61vMdvOHmtblST+fSl ZheNAcv2hQR4aqJLi4wrcerTaRyG9op3OSh...
-----End certificate-----
密钥
-----Start RSA private key----- MIICXgIBAAKBgQC6ndRHy5Dv5TcZiVzT6qF iaMGy61ZIbUrmBhUn61vMdvOHmtblST+fSl ZheNAcv2hQR4aqJLi4wrcerTaRyG9op3OSh...
-----End RSA private key-----
CA
单向认证无需配置CA证书。
- 单击“确定”创建完成。
- 绑定域名。
- 在左侧导航栏选择“API管理 > API分组”。
- 单击API所属分组名称,进入分组详情。
- 在“分组信息”页签中单击“绑定独立域名”。
表2 配置独立域名 参数
配置说明
域名
填写已备案的域名。
支持最小TLS版本
此处选择“TLS1.2”。
支持http to https自动重定向
默认关闭。
- 单击“确定”。
- 绑定证书。
- 在已绑定独立域名所在行单击“选择SSL证书”。
- 选择已创建的证书单击“确定”。单向认证时,确保客户端认证为关闭状态。
- 调用API。
使用接口测试工具调用API,状态码为“200”表示调用成功。否则,请参考错误码章节处理。
双向认证
- 在“SSL证书管理”页签中,单击“创建SSL证书”。
表3 配置双向认证的证书信息 参数
配置说明
证书名称
填写证书名称。
可见范围
此处选择“当前实例”。
证书内容
填写证书内容。
-----Start certificate----- MIICXgIBAAKBgQC6ndRHy5Dv5TcZiVzT6qF iaMGy61ZIbUrmBhUn61vMdvOHmtblST+fSl ZheNAcv2hQR4aqJLi4wrcerTaRyG9op3OSh...
-----End certificate-----
密钥
填写密钥。
-----Start RSA private key----- MIICXgIBAAKBgQC6ndRHy5Dv5TcZiVzT6qF iaMGy61ZIbUrmBhUn61vMdvOHmtblST+fSl ZheNAcv2hQR4aqJLi4wrcerTaRyG9op3OSh...
-----End RSA private key-----
CA
配置双向认证,此处需要填写CA证书内容。CA证书配置完成后,将独立域名与此SSL证书绑定,并开启客户端认证。
-----Start certificate----- MIICXgIBAAKBgQC6ndRHy5Dv5TcZiVzT6qF iaMGy61ZIbUrmBhUn61vMdvOHmtblST+fSl ZheNAcv2hQR4aqJLi4wrcerTaRyG9op3OSh...
-----End certificate-----
- 单击“确定”创建完成。
- 绑定域名。
- 在左侧导航栏选择“API管理 > API分组”。
- 单击API所属分组名称,进入分组详情。
- 在“分组信息”页签中单击“绑定独立域名”。
表4 配置独立域名 参数
配置说明
域名
填写已备案的域名。
支持最小TLS版本
此处选择“TLS1.2”。
支持http to https自动重定向
默认关闭。
- 单击“确定”。
- 绑定证书。
- 在已绑定独立域名所在行单击“选择SSL证书”。
- 选择已创建的证书并勾选“开启客户端认证”,单击“确定”。
- 调用API。
使用接口测试工具调用API,状态码为“200”表示调用成功。否则,请参考错误码章节处理。
由于开启了双向认证,因此在访问API时需要配置客户端证书。
如果使用Postman调用API,则需要在Setting界面的Certificates配置项中添加Client certificates,上传客户端证书以及密钥。