使用SSL将laravel 5连接到AWS RDS
问题描述:
我在读this question和this 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_KEY
和PDO::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
看来,是我需要做的,有人可以证实吗?
答
要在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'
),
它不需要其他连接两个键。