2013-05-17 39 views
4

我在我的本地开发箱(Mac OS 10.8)上运行grails以使用自签名证书和WeakSSL grails插件托管通过SSL的Web服务。问题是我通过Xcode iPhone模拟器连接到这台服务器,它给我一个不可信的证书错误。grails在哪里存储自我生成的SSL证书?

我发现了如何安装证书到手机/模拟器的说明,但我的问题是如何在我的机器上找到此证书来安装?

+0

你在grails项目工作目录下有一个'ssl'目录吗? ('../ workDir/ssl') – dmahapatro

+0

@dmahapatro不,我也不能在〜/ .grails或/ usr/share/grails中找到任何东西。 – devios1

+0

您是否看过'.grails/2.2.1'或您使用哪个版本的grails? – dmahapatro

回答

2

我想如果您使用的是grails 2.2.x,您将无法在~.grails/中看到该目录。要查找密钥库,插件使用与Grails版本1.3.x2.0.x - 2.1.x匹配的Pattern

理想情况下,你应该可以看到存储在~./grails/${grailsVersion}

证书有一个看起来的plugin code where certificates are found

Created JIRA缺陷相同。

由于下面的代码,模式匹配器不能用于Grails版本2.2.x及更高版本。

import java.util.regex.Pattern 

Pattern V2X = Pattern.compile("2.[01].\\d+?") 
assert !V2X.matcher("2.2.0").find() 
+0

非常感谢,我根据你链接的代码在'〜/ .grails/2.1.0/projects/api/ssl'中找到了它。 (注意别人,“api”是应用程序名称。) – devios1

0

而且,考虑使用OpenSSL的,从运行的Grails服务器这样的命令直接拿到钥匙:

openssl s_client -connect localhost:8443 

的东西开始的Grails这样AFTER:

grails run-app -https 

openssl命令的输出将具有可以添加到客户端可信证书的自签名证书。

+0

有时这不起作用。我已经做了一年,现在和今天......我尝试将我的开发环境从Mac OS移到Linux,而这在Linux上的Grails上不起作用。 – Jason