我有一个我想连接的mysql数据库的CA证书(它在Amazon rds上)。我找不到一个很好的例子,说明如何使用php的mysql_connect()函数连接到mysql数据库,并使用该ca证书(存储在/home/username/mysql_ca_cert.pem)进行连接。
有人能用一个简单的例子来帮助我吗?
答案 0 :(得分:1)
mysql_connect()已被折旧且具有高度可攻击性。 使用它是最终的愚蠢
<?php
$pdo = new PDO('mysql:host=ip;dbname=db', 'user', 'pass', array(
PDO::MYSQL_ATTR_SSL_KEY =>'/etc/mysql/ssl/client-key.pem',
PDO::MYSQL_ATTR_SSL_CERT=>'/etc/mysql/ssl/client-cert.pem',
PDO::MYSQL_ATTR_SSL_CA =>'/etc/mysql/ssl/ca-cert.pem'
)
);
$statement = $pdo->query("SHOW TABLES;");
$row = $statement->fetch(PDO::FETCH_ASSOC);
echo htmlentities($row['_message']);
?>
答案 1 :(得分:0)
这将使用服务器ssl cert连接,2048是密钥
$link=mysql_connect(host, user, password,true,2048);
答案 2 :(得分:-1)
$db = mysqlii_init();
$db->ssl_set('server-key.pem','server-cert.pem', 'cacert.pem', NULL, NULL);
$db->real_connect('localhost','root','','mydb');
然后当然
$db->close();
希望有所帮助:)
答案 3 :(得分:-2)
你可能会尝试mysqli :: ssl_set