我正在使用AWS进行一个项目,它托管在带有RDS PostgreSQL的EC2实例上。我想在我的服务器和数据库之间使用SSL加密,但我不知道如何配置Laravel使其工作。在配置数据库连接时是否可以指定sslmode

最佳答案

这似乎是Laravel4中缺少的一个特性,但是我已经提交了一个pull请求来修复这个问题。
https://github.com/laravel/framework/pull/5488(于2014-09-08合并)
要修补代码,只需将以下代码片段添加到PostgresConnector.php文件中的getDsn函数中。

if (isset($config['sslmode']))
{
    $dsn .= ";sslmode={$sslmode}";
}

之后,您可以在pgsql数据库配置部分中指定sslmode = 'require',以测试web应用程序与数据库之间的加密。sslmode的其他可能值是'disable''allow''prefer''require''verify-ca''verify-full''prefer'。默认值为。
有关更多信息,请查看PostgreSQL文档:http://www.postgresql.org/docs/9.3/static/libpq-ssl.html

09-15 14:01