以下のURLから証明書を取得し、BaltimoreCyberTrustRoot.crt.pemで、vagrantに保存する。
https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem
azure mysqlのadminで接続のセキュリティがSSLを強制する、となっているか確認する。
optionで、PDO::MYSQL_ATTR_SSL_CA => ‘BaltimoreCyberTrustRoot.crt.pem’ と書きます。
$dsn = "mysql:dbname=sier;host=namysql.database.windows.net"; $user = "hoge"; $password = "hogehoge"; $options = array( PDO::MYSQL_ATTR_SSL_CA => 'BaltimoreCyberTrustRoot.crt.pem' ); try { $dbh = new PDO($dsn, $user, $password, $options); } catch (PDOException $e){ print('connection failed:'.$e->getMessage()); } $sql = "select * from forein"; // $sql = "show status like 'ssl_cipher'"; $stmt = $dbh->query($sql); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); print_r('<pre>'); var_dump($result); print_r('</pre>');
$sql = “show status like ‘ssl_cipher'”;と書くと、ssl通信の場合、[“Value”]=>string(10) “AES256-SHA” で返ってきます。
> .pemは、Base64で符号化された証明書です。.pem SSL サーバ証明書(連結SSLサーバ証明書)では複数のサーバ証明書を1ファイルに連結させることができ、SSLサーバ証明書のインストール用によく使われます。
いいね~
しかし、azure始めた途端、参照するブログ書いている方のレベルが高くなった気が。。。
では、続いてgit commit/pushしましょう。