2013-05-17 71 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