Pages

vendredi 30 octobre 2015

ClearDb comment se connecter à une base de données MySQL dans le cloud en SSL

ClearDB propose un service en ligne pour héberger votre base de données MySQL. Si vous utilisez CloudFoundry vous pouvez par exemple utiliser ce service.



La sécurisation des données est importante dans le Cloud et avec ClearDB  vous pouvez utiliser une connexion SSL pour dialoguer avec la base de données si vous voulez modifier les données. Ce qui est cool c’est que la connexion pour modification de la structure peut se faire via un simple user/password. Cette souplesse nous laisse par exemple la possibilité d’utiliser Flyway ou Liquibase pour gérer la structure de la base de données lors de l'instalation. 

Sur la console de management vous pouvez visualiser toutes les informations pour vous connecter à votre base de données.

Pour vous connecter à la base de données en ligne de commande

mysql --host=monserver.cleardb.net --user=user --password=password schema

Sur votre console, téléchargez les certificats dont vous avez besoin
  • certificat du tiers de confiance (CA Certificate authority) ⇒ cleardb-ca.pem
  • votre certificat ⇒ cleardbinstance-cert.pem
  • clé privée ⇒ cleardbinstance-key.pem


L’étape d’après consiste à utiliser ces certificats pour se connecter à la base MySQL. Le seul problème c’est que la clé privée n’est pas utilisable en l’état par le client MySQL. Il faut supprimer le mot de passe lié (pass phrase). Pour celà vous pouvez utiliser openssl

openssl rsa -in cleardbinstance-key.pem -out cleardbinstance-key-no-password.pem

La chaine de connexion à MySQL devient

mysql --host=monserver.cleardb.net --user=user --password=password --ssl-ca=cleardb-ca.pem --ssl-cert=cleardbinstance-cert.pem --ssl-key=cleardbinstance-key.pem schema

Il reste maintenant à modifier votre application pour qu’elle puisse aussi se connecter à la base clearDb via SSL. Si vous faites du Java et utilisez un driver JDBC, modifié la chaine de connexion comme ci dessous

jdbc:mysql://monserver.cleardb.net:3306/schema?sslca=/conf/ssl/cleardb-ca.pem&sslcert=cleardbinstance-cert.pem&sslkey=cleardbinstance-key.pem&reconnect=true

Aucun commentaire:

Enregistrer un commentaire

Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.