离子 ssl 产生信任

Posted

技术标签:

【中文标题】离子 ssl 产生信任【英文标题】:Ionic ssl generate trust 【发布时间】:2019-05-20 23:06:35 【问题描述】:

我正在使用新的 ionic 4.0.0-beta.19 框架,尝试使用 ionic serve --ssl 选项。

我使用 cli 创建了一个新的 ionic 项目,我运行了 ionic generate ssl,它在 /.ionic/ssl

中创建了 2 个文件
cert.pem
key.pem

在 chrome 中运行 ionic serve --ssl 时,我收到消息“您的连接不是私有的”,我在做类似的事情之前就遇到过这个问题,为了解决这个问题,我已将 localhost 证书文件添加到我的钥匙串访问中(使用 Mac)并将证书设置为始终信任。

我之前在 ionic 4 上运行过这个,通过自己生成证书,将证书添加到 angular.json 文件中,如下所示:

"serve": 
    "builder": "@angular-devkit/build-angular:dev-server",
    "options": 
        "browserTarget": "app:build",
        "ssl": true,
        "sslKey": "./ssl/server.key",
        "sslCert": "./ssl/server.crt"
    ,
    "configurations": 
        "production": 
            "browserTarget": "app:build:production"
    

虽然我添加了 crt 文件和密钥而不是 pem 和密钥,但我需要手动添加这些吗?还是使用 generate 命令自动完成?

在浏览器中查看服务的本地主机时,我可以看到浏览器正在使用的证书的序列号,与我添加到钥匙串访问的 pem 文件的序列号不同,所以不确定是否在另一个本地生成一个 .crt 文件,我需要添加吗?

【问题讨论】:

欢迎来到 Stack Overflow!我将您的代码示例缩进了 4 个空格,以便正确呈现 - 请参阅the editing help 了解有关格式的更多信息。祝你好运! ssl 不是只对域名有效吗?例如。 example.com 而不是 localhost 或 127.0.0.1 【参考方案1】:

在配置我的 Ionic-Angular 项目以使用 SSL 服务时,我遇到了同样的问题。

实际上,我不希望仅通过 SSL 提供 Ionic 应用程序,而是希望所有堆栈,包括后端(.Net、Spring 和 Keycloak),并且我希望我的 Ionic 应用程序的 android 版本能够使用这些“自签名”后端没有问题。

我在那里发布了一个相当详细的操作方法:How to properly setup my Ionic (Angular) dev machine with self-signed certificate?。这个偏离课程涵盖了您要求的部分;)

【讨论】:

以上是关于离子 ssl 产生信任的主要内容,如果未能解决你的问题,请参考以下文章

解决Charles抓包ssl证书信任问题

iOS 10.3下解决Charles抓包ssl证书信任问题

如何将SSL证书设置成受信任的证书

使用 AFNetworking 进行证书/SSL 固定 - 如果孩子受信任,如何信任所有父母证书?

Xcode SSL pinning 信任锚证书

分析一下有哪些原因会导致SSL证书不被信任