IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

Connection à mysql via ssl


Sujet :

JDBC Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 184
    Points : 288
    Points
    288
    Par défaut [Résolu] Connection à mysql via ssl
    Bonjour,
    je dois travailler sur une appli qui doit exécuter des requêtes SQL sur un serveur mysql du réseau local qui n'accepte les connexions extérieures que via SSL.
    J'ai récupéré les fichiers client-key.pem, client-cert.pem et ca-cert.pem depuis le serveur.
    Je pense avoir créé correctement les fichiers truststore et keystore grâce à keytool (mais je suis pas à l'abri d'une erreur).
    J'ai suivi le tuto suivant :
    http://dev.mysql.com/doc/refman/5.0/...using-ssl.html
    Je précise que j'arrive à me connecter sans problème en ligne de commandes via la commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql --host toto.fr -u ursule -p --ssl --ssl-ca ./cert/ca-cert.pem --ssl-cert ./cert/client-cert.pem --ssl-key ./cert/client-key.pem
    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    /**
     * Gère les connections à une base de données, l'envoi de requètes et la lecture
     * des résultats
     */
    package com.toto.bdd;
     
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.util.Enumeration;
    import java.util.Properties;
     
    /**
     * @author huit_six
     *
     */
    public class Requete {
    	private Properties properties = new Properties(); 
    	public Requete() {
    		System.setProperty("javax.net.ssl.keyStore","/home/huit_six/Bureau/op/cert/keystore");
    		System.setProperty("javax.net.ssl.keyStorePassword","toto");
    		System.setProperty("javax.net.ssl.trustStore","/home/huit_six/Bureau/op/cert/truststore");
    		System.setProperty("javax.net.ssl.trustStorePassword","toto");
    		System.setProperty("javax.net.debug","all");
     
    		properties.setProperty("user", "ursule");
    		properties.setProperty("password", "toto");
    		properties.setProperty("useSSL", "true");
     
    		try {
    			Class.forName("com.mysql.jdbc.Driver");
    			String url = "jdbc:mysql://toto.fr:3306/pharma";
     
    			Connection conn = DriverManager.getConnection(url, properties);
    			System.out.println("Connection effective !");			
     
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    	}
    }
    Bien entendu j'ai modifié les informations confidentielles...
    Je précise que j'arrive bien à me connecter à ma base de tests en local sans SSL donc ça ne vient pas d'un problème d'installation de JDBC ni du pilote.
    De toute façon, l'exception levée est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java.sql.SQLException: Access denied for user 'ursule'@'toto.fr' (using password: YES)
    Il semble bien que ce soit un problème d'authentification donc...

    Comme j'avoue ne pas être vraiment calé en SSL, je n'ai vraiment plus d'idée pour déboguer ça.

    Pourriez-vous m'aider ?

    D'avance merci !

    PS: Je précise que je n'ai pas pu tester sn SSL sur ma base locale perso parce qu'en bidouillant ces histoires de SSL j'ai bloqué ma base...

  2. #2
    Membre actif
    Homme Profil pro
    Analyst
    Inscrit en
    Juillet 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyst
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 150
    Points : 217
    Points
    217
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "j'arrive bien à me connecter à ma base de tests en local sans SSL"
    Pour mysql, il y'a un profil en local et un profil pour les accès distants

    Voici un lien pour ce problème.

    Après, je n'ai jamais rajouté une couche SSL sur mysql.

    Cordialement,

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 184
    Points : 288
    Points
    288
    Par défaut Résolu !
    Bonjour,
    Merci de m'avoir répondu, mais quand je parlais de ma connection en local, c'était uniquement pour tester jdbc.
    J'ai trouvé la solution à mon problème, elle vient du fait que le tutoriel que j'ai déjà cité plus haut ne prend pas en compte la clef du client, le tutoriel que j'ai trouvé à cette adresse fournit la solution.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. vb connection mysql via web
    Par metaldan dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 13/09/2008, 16h06
  2. Replication Mysql via SSL HELP
    Par snach dans le forum Administration
    Réponses: 6
    Dernier message: 04/09/2007, 09h51
  3. [ADO.Net][VB.NET]Comment connecter MySQL via localhost ?
    Par le_ben2000 dans le forum VB.NET
    Réponses: 4
    Dernier message: 02/05/2007, 20h44
  4. Connection mysql via ODBC sans login
    Par Aslan78 dans le forum C++Builder
    Réponses: 1
    Dernier message: 20/04/2007, 17h02
  5. Erreur 1045 impossible de se connecter à mysql via un script
    Par julian-brokendolls dans le forum Installation
    Réponses: 7
    Dernier message: 05/01/2006, 04h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo