如何将自签名证书添加到 Chrome / Mozilla

Roh*_*esh 7 ssl spring-boot tls1.2 angular

首先请忽略这个问题,如果它太简单或无用。

我是 TLS 的新手,正在尝试为我的客户端和服务器之间的安全数据传输实施 SSL。我的后端在 Springboot 中,我的前端在 Angular 4 中。

对于 Springboot,我使用了以下内容使其 https:

server.port=8443
server.ssl.key-alias=secure-server
server.ssl.key-store-password=secret
server.ssl.key-store=classpath:server-keystore.jks
server.ssl.key-store-provider=SUN
server.ssl.key-store-type=JKS
server.ssl.trust-store= classpath:server-truststore.jks
server.ssl.trust-store-password: secret
server.ssl.enabled= true 
Run Code Online (Sandbox Code Playgroud)

而且,对于 angular 4,我在项目中创建了 ssl 文件夹并放置了两个文件,即:

  • ssl/server-public.cer
  • ssl/server.key

并在脚本中的 package.json 中配置此命令,

scripts: {
"start": "ng serve --ssl true --ssl-cert 'ssl/server-public.cer' --ssl-key 'ssl/server.key' --live-reload false",
}
Run Code Online (Sandbox Code Playgroud)

现在在完成所有这些之后,我的前端和后端都启用了 https,

但是,当我尝试在浏览器中打开 UI 并使用凭据登录到我的应用程序时,我在 mozilla 中遇到以下错误

An error occurred during a connection to localhost:8443.

SSL peer cannot verify your certificate.

Error code: SSL_ERROR_BAD_CERT_ALERT
Run Code Online (Sandbox Code Playgroud)

另外,下面的 chrome 错误,

Request URL: https://localhost:8443/url
Referrer Policy: no-referrer-when-downgrade
Provisional headers are shown
Access-Control-Request-Headers: authorization
Access-Control-Request-Method: GET
Origin: https://localhost:4200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
Run Code Online (Sandbox Code Playgroud)

那么,作为快速修复我做了什么?

  • 我打开chrome浏览器。
  • 然后我把我支持的 url 放在 chrome 浏览器中,我让我为不受信任的证书添加例外。
  • 在此之后,我打开了我的 UI 并尝试登录它调用支持的 apis,没有任何问题。
  • 但是,mozilla 中仍然存在问题。

注意:我正在使用自签名证书。