目录

Web组件加载网页过程中遇到的证书相关问题及解决方案

问题现象

Web组件加载网页过程中,会遇到证书相关问题,如:

  1. 加载时网页出现证书校验错误,如何处理?
  2. 网页与服务端需要证书双向认证,如何实现?

背景知识

onSslErrorEvent:通知用户加载资源(主资源+子资源)时发生SSL错误(证书校验错误),可在该函数中对SSL错误进行处理。

onClientAuthenticationRequest:通知用户收到SSL客户端证书请求事件,可在该函数中触发客户端证书加载,完成双向认证。

解决方案

[h2]场景一、忽略证书校验

[h2]场景二、证书双向认证

证书安装,需要依赖权限:ohos.permission.ACCESS_CERT_MANAGER,

访问在线网页,需要依赖权限:ohos.permission.INTERNET,

申请权限参考权限声明。

常见FAQ

Q:双向认证有什么优缺点?

A:双向认证的优点是安全性更高,因为对客户端和服务器的身份都进行了验证。这样可以有效防止中间人攻击。但是,双向认证的实现比单向认证更复杂,且需要更多的资源(如证书等)。

Q:什么情况下应该选择双向认证而不是单向认证?

A:如果安全性要求不高,或者客户端数量众多、管理困难时,可以选择单向认证;如果安全性要求较高,或者需要确保通信双方的身份可靠性时,可以选择双向认证。

Q:什么情况下需要安装证书?证书的来源是什么?

A:只有当目标服务器采用双向认证时需要安装客户端证书。客户端证书通常是由服务器管理者生成并预先提供给各客户端。