2016-08-02 128 views
3

我在读this questionthis article使用SSL将laravel 5连接到AWS RDS

'your_connection' => array(
    'driver' => 'mysql', 
    'host' => $host, 
    'database' => $database, 
    'username' => $username, 
    'password' => $password, 
    'charset' => 'utf8', 
    'collation' => 'utf8_unicode_ci', 
    'prefix' => '', 
    'options' => array(
    PDO::MYSQL_ATTR_SSL_KEY => $cert_base . '/client-key.pem', 
    PDO::MYSQL_ATTR_SSL_CERT => $cert_base . '/client-cert.pem', 
    PDO::MYSQL_ATTR_SSL_CA => $cert_base . '/ca-cert.pem' 
), 
), 

据我了解,PDO::MYSQL_ATTR_SSL_CA,则可以从here

下载我不知道PDO::MYSQL_ATTR_SSL_KEYPDO::MYSQL_ATTR_SSL_CERT

我读的东西像this

openssl genrsa 2048 > ca-key.pem 
openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem 

看来,是我需要做的,有人可以证实吗?

回答

8

要在Laravel中通过SSL连接到AWS RDS,您只需执行一些操作。

下载从RDS-联合CA-bundle.pem文件:

https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem

然后把它放在你的配置是这样的:

'options' => array( 
    PDO::MYSQL_ATTR_SSL_CA => $cert_base . '/rds-combined-ca-bundle.pem' 
), 

它不需要其他连接两个键。