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 :

[Derby] Ajouter un mot de passe


Sujet :

JDBC Java

  1. #1
    Membre habitué Avatar de Jose.N70
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Points : 130
    Points
    130
    Par défaut [Derby] Ajouter un mot de passe
    Bonsoir, petite question concernant les bases de données, et notamment DERBY.

    Dans mon application j'utilise la base de données Derby, cette dernière fonctionne très bien cependant je n'arrive pas à "protéger" l'accès à la base avec un mot de passe.

    Je place un login / mot de passe dans le properties mais je peux mettre ce que je veux l'accès à la base reste identique.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ...
    dbProperties = new Properties();	
    dbProperties.put("derby.driver","org.apache.derby.jdbc.EmbeddedDriver");
    dbProperties.put("derby.url" ,"jdbc:derby:");
    dbProperties.put("user","utilisateur");
    dbProperties.put("password","motdepasse");
    dbProperties.put("db.table","TABLE1");
    ...
    ...
    Connection dbConnection = DriverManager.getConnection(dbUrl, dbProperties);
     
    ....
    Pourriez vous m'orienter ?

  2. #2
    Membre éprouvé Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Points : 934
    Points
    934
    Par défaut
    Salut !
    je ne passe pas par properties, mais dans un fichier .ini qui permet à l'utilisateur d'intervenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public static boolean connecter() {
            boolean ok = true;
             try {                                       
                    con = DriverManager.getConnection(url,utilisateur,motdepasse);
                    ok = true;
            } catch (SQLException ex) {
                ok = false;
            }
            return ok;
        }
    et dans le fichier .ini :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    driver=org.apache.derby.jdbc.ClientDriver
    url=jdbc:derby://10.0.0.5/D:/FRANCOIS/BALEINE/base/database
    utilisateur=sa
    motdepasse=xyz
    ...si le mot de passe est faux, impossible de se connecter !

  3. #3
    Membre habitué Avatar de Jose.N70
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Points : 130
    Points
    130
    Par défaut
    Même si je marque n'importe quoi en utilisateur et mot de passe comme suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dbConnection = DriverManager.getConnection(dbUrl, "utilisateur","nimp");
    j'accède aux informations de la base .... A l'exception du driver en utilisant le même code que toi l'usage login / pass n'a aucun effet ...

    pour info j'utilise le driver suivant : org.apache.derby.jdbc.EmbeddedDriver

    Merci de votre aide

  4. #4
    Membre habitué Avatar de Jose.N70
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Points : 130
    Points
    130
    Par défaut
    Problème reglé, solution trouvée sur le site derby:

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    public static void turnOnBuiltInUsers(Connection conn) 
    	throws SQLException {
     
    		String setProperty = 
    			"CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(";
    		String getProperty = 
    			"VALUES SYSCS_UTIL.SYSCS_GET_DATABASE_PROPERTY(";
    		String requireAuth = "'derby.connection.requireAuthentication'";
    		String defaultConnMode =
    			"'derby.database.defaultConnectionMode'";
    		String fullAccessUsers = "'derby.database.fullAccessUsers'";
    		String readOnlyAccessUsers =
    			"'derby.database.readOnlyAccessUsers'";
    		String provider = "'derby.authentication.provider'";
    		String propertiesOnly = "'derby.database.propertiesOnly'";
     
    		System.out.println("Turning on authentication.");
    		Statement s = conn.createStatement();
     
    		// Set and confirm requireAuthentication
    		s.executeUpdate(setProperty + requireAuth + ", 'true')");
    		ResultSet rs = s.executeQuery(getProperty + requireAuth + ")");
    		rs.next();
    		System.out.println("Value of requireAuthentication is " +
    				rs.getString(1));
     
    		// Set authentication scheme to Derby builtin
    		s.executeUpdate(setProperty + provider + ", 'BUILTIN')");
     
    		// Create some sample users
    		s.executeUpdate(
    				setProperty + "'derby.user.sa', 'ajaxj3x9')");
    		s.executeUpdate(
    				setProperty + "'derby.user.guest', 'java5w6x')");
    		s.executeUpdate(
    				setProperty + "'derby.user.mary', 'little7xylamb')");
     
    		// Define noAccess as default connection mode
    		s.executeUpdate(
    				setProperty + defaultConnMode + ", 'noAccess')");
     
    		// Confirm default connection mode
    		rs = s.executeQuery(getProperty + defaultConnMode + ")");
    		rs.next();
    		System.out.println("Value of defaultConnectionMode is " +
    				rs.getString(1));
     
    		// Define read-write user
    		s.executeUpdate(
    				setProperty + fullAccessUsers + ", 'sa,mary')");
     
    		// Define read-only user
    		s.executeUpdate(
    				setProperty + readOnlyAccessUsers + ", 'guest')");
     
    		// Confirm full-access users
    		rs = s.executeQuery(getProperty + fullAccessUsers + ")");
    		rs.next();
    		System.out.println(
    				"Value of fullAccessUsers is " + rs.getString(1));
     
    		// Confirm read-only users
    		rs = s.executeQuery(getProperty + readOnlyAccessUsers + ")");
    		rs.next();
    		System.out.println(
    				"Value of readOnlyAccessUsers is " + rs.getString(1));
     
    		// We would set the following property to TRUE only when we were
    		// ready to deploy. Setting it to FALSE means that we can always
    		// override using system properties if we accidentally paint
    		// ourselves into a corner.
    		s.executeUpdate(setProperty + propertiesOnly + ", 'false')");
    		s.close();
    	}

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

Discussions similaires

  1. [AC-2003] Création d'un code pour ajouter un mot de passe sur le bon identifiant.
    Par Chagui dans le forum VBA Access
    Réponses: 6
    Dernier message: 21/10/2010, 19h30
  2. Ajouter un mot de passe au UAC
    Par ABN84 dans le forum Windows 7
    Réponses: 1
    Dernier message: 29/08/2009, 15h29
  3. Réponses: 5
    Dernier message: 07/06/2008, 13h41
  4. [phpMyAdmin] ajouter mot de passe phpMyAdmin
    Par haltabush dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 10
    Dernier message: 17/04/2007, 16h43
  5. batch - ajouter un mot de passe a une session
    Par koKoTis dans le forum Windows
    Réponses: 2
    Dernier message: 28/03/2007, 16h27

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