Skip to main content

HandleHttpRequest HTTPS客户端双向认证

1目的

使用HTTPS协议保证通信安全,避免用户信息泄露,降低被劫持的风险。

2 示例说明

  • 输入数据:HTTPS请求(仅测试URL,故body内容为空即可)
    https://localhost:20004/ssl

  • 输出数据:HTTP回复
    The two-way authentication was successful!

3 流程说明

单向安全认证中,可以知道如何配置单向认证,双向认证相比单向认证配置需要增加的配置很少,故以下仅列出相对SSL单向验证配置不相同的点:

3.1 HandleHttpRequest HTTPS配置


  • 监听端口:使用未被占用端口,本示例使用20004

  • 客户端身份验证:设置为"需要验证",增加对客户端的验证.

其中SSL服务的StandardRestrictedSSLContextService4Server配置

  • 增加服务器端Trustore文件配置,存放信任的CA证书(用于客户端证书验证).

注意: 本示例使用的证书为自签证书,这里用keytool将客户端CA证书client.cer(Linux环境使用crt格式证书)加入到服务器端Truststore中,如果使用三节证书链则需要导入客户端Imediate CA证书

keytool -import -trustcacerts -file client.cer /
-alias client_ca -keystore truststore_server.jks /
-storepass 123456 -noprompt

3.2 ReplaceText 配置

替换值参数位置为文本:The two-way authentication was successful!

3.3 HandleHttpResponse配置

3.4 InvokeHttp 配置

  • 监听端口:使用未被占用端口,本示例使用20004
  • 调度时间间隔:修改默认的调度时间,设置为1d或较大时间间隔,防止瞬间产生大量请求.

3 实际输出数据

拥有数据溯源权限用户:可以直接启动所有组件然后通过数据溯源查看InvokeHttp组件输出.

没有数据溯源权限用户:启动除了LogAttribute之外的组件,将response流文件阻塞在队列中,查看队列列表

随后即可查看response流文件.

4 模板

参见附件(请右键另存保存):HTTPS 双向认证模板

使用场景

常用于企业应用对接