我正在使用Ruby on Rails 3,我希望有一個「中心位置」,以便在我的應用程序中明確設置要使用的SSL證書。一個「中心位置」,明確設置SSL證書變量
在代碼中幾乎無處不在我有這樣
e = Typhoeus::Request.get("https://example.com/action",
:ssl_cacert => "ca_file.cer",
:ssl_cert => "acert.crt",
:ssl_key => "akey.key",
[...]
end
所以HTTPS請求,以指定爲我所有的請求的SSL證書,我想設置一個全局變量(我聽說,全局變量可以是危險的......)或類似的東西以安全的方式。
出於安全原因,例如,是否建議'凍結'在類常量'SSL_DEFAULTS'上做其他事情? – user502052 2011-03-03 07:31:05
@ user502052可能是個好主意。這不是爲了安全 - 你不會讓外國代碼在你的應用中運行,我希望你是唯一能夠改變值的人 - 但它會讓你不小心改變事情。特別是'SSL_DEFAULTS [:key] ='hullabaloo'不會引發警告,即使'SSL_DEFAULTS'是一個常量。乾杯! – 2011-03-03 20:38:18
有關此主題的另一個「快速」問題:建議在'environment.rb'文件中,'/ initializer /'文件或'/ environments /'文件中聲明SSL全局變量,而不是在內部執行該變量班級(和你一樣)?如果是這樣,如何做到這一點,使變量在所有的應用程序可訪問? – user502052 2011-03-06 21:53:55