唐左颖
唐左颖
  • 发布:2023-11-23 14:39
  • 更新:2023-12-19 14:34
  • 阅读:327

configMTLS 一直不成功,浏览器 和 apifox 均成功,寻求帮助

分类:uni-app

自签名的证书。p12 文件导入浏览器后,浏览器可以访问。证书配置在 apifox 以后,apifox 也可以访问。但是 uniapp 一直不行。

通过 vue-cli 创建的 uni-app 项目。

uni.configMTLS({  
    certificates: [{  
        'host': 'xx.com.cn:5443',  
        'client': '/static/cert/client.p12',  
        'clientPassword': '12345678',  
        'server': []  
    }],  
    success(res) {  
        console.info('mtls success', res);  
    }  
});
success {  
    "code": 0,  
    "errMsg": "configMTLS:ok"  
}

下边是证书的生成过程。

服务端证书用的是 DigiCert 的免费 ssl 证书。
客户端使用的是自签名证书。

openssl genrsa -des3 -out ca.key 4096  
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt  

openssl genrsa -des3 -out user.key 4096  
openssl req -new -key user.key -out user.csr  
openssl x509 -req -days 365 -in user.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out user.crt  

openssl pkcs12 -export -out user.p12 -inkey user.key -in user.crt -certfile ca.crt

nginx 配置

      # DigiCert 的免费 ssl 证书  
       ssl_certificate /etc/nginx/certs/api/cert.pem;  
       ssl_certificate_key /etc/nginx/certs/api/cert.key;  

       ssl_session_timeout 5m;  

       ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;  
       ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;  
       ssl_prefer_server_ciphers on;  

       # 自签名证书  
       ssl_client_certificate /etc/nginx/certs/api/ca.crt;  
       ssl_verify_client on;
2023-11-23 14:39 负责人:无 分享
已邀请:
唐左颖

唐左颖 (作者)

@DCloud_Android_DQQ
能帮我看下吗?
我准备了一个 可访问的 支持 ssl 双向认证,还做了一个 demo 的 uniapp 项目。
p12 导入系统后,浏览器可以访问。uniapp 不行。

1***@qq.com

1***@qq.com

请问解决了吗

  • 唐左颖 (作者)

    并没有

    2023-12-19 15:20

要回复问题请先登录注册