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 双向认证模板
使用场景
常用于企业应用对接