头图

title:The system URL is using a self-signed security certificate

在使用 Visual Studio Code 创建 SAP UI5 项目时,遇到 The system URL is using a self-signed security certificate 的错误提示,表示你尝试连接的系统使用了自签名的 SSL 证书。自签名证书通常不被浏览器信任,因为它们没有经过权威的证书颁发机构(CA)的验证。这种情况在本地开发环境或测试环境中比较常见。为了解决这个问题,有几种方法可以尝试:

解决方法 1:信任自签名证书

要让 Visual Studio Code 接受自签名证书,你需要将证书添加到你的操作系统的信任列表中。这可以通过以下步骤完成:

  1. 获取证书文件:首先,你需要获取到自签名的证书文件。这通常可以从你的 SAP 系统管理员或者是提供你这个链接的团队那里获得。
  2. 安装证书

    • Windows 上,你可以双击证书文件,然后选择 安装证书,并将其安装在 受信任的根证书颁发机构 存储中。
    • macOS 上,你可以双击证书文件,这将打开 钥匙串访问 应用。在这里,你应该将证书添加到 系统 钥匙串而不是 登录 钥匙串,并信任它。
    • Linux 系统中,过程会根据发行版而异,通常涉及将证书复制到 /etc/ssl/certs 并运行 update-ca-certificates 命令。
  3. 重启 Visual Studio Code:安装完证书并信任之后,重启 Visual Studio Code 以确保设置生效。

解决方法 2:使用代理绕过 SSL 验证

如果你无法获取证书文件或者不想修改操作系统设置,可以在 Visual Studio Code 中设置一个代理服务器,来绕过 SSL 验证。可以使用如 Squid、Fiddler 或 Charles 等工具创建一个本地代理服务器,并配置它信任自签名证书。

设置代理的步骤大致如下:

  • 设置代理工具:配置代理工具以接受所有 SSL 通信,并将其转发到实际的 SAP 服务地址。
  • 配置 Visual Studio Code:在 Visual Studio Code 的设置中(可以通过编辑 settings.json 文件访问),添加以下代理配置:
"http.proxy": "http://localhost:3128",
"https.proxy": "http://localhost:3128",
"http.proxyStrictSSL": false

这里 http://localhost:3128 应该替换为你的代理服务器的实际地址和端口。

解决方法 3:修改项目配置忽略证书错误

对于某些开发环境,你可以在项目的配置文件中直接设置忽略 SSL 证书错误。在 Node.js 环境中,可以通过设置环境变量 NODE_TLS_REJECT_UNAUTHORIZED = "0" 来忽略 SSL 错误。这种方法应谨慎使用,因为它会降低安全性,建议只在完全控制的开发环境中使用。

在 Visual Studio Code 的终端中运行以下命令即可设置环境变量:

export NODE_TLS_REJECT_UNAUTHORIZED=0

或者在 Windows 系统中:

set NODE_TLS_REJECT_UNAUTHORIZED=0

重启 Visual Studio Code 后,这个设置将生效。

结论

以上三种方法各有优缺点,选择哪一种取决于你的具体情况。如果是在生产环境中遇到这种问题,建议使用由权威 CA 颁发的证书,以确保系统的安全性。在开发或测试环境中

,如果对安全要求不是非常高,可以选择信任自签名证书或使用代理方法来简化配置过程。总之,处理 SSL 证书问题时,要兼顾安全和便利,确保不影响开发效率的同时,保护好系统的安全。


注销
1k 声望1.6k 粉丝

invalid