Acceder à base de données access sécurisée

Résolu
kg_online Messages postés 39 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 4 juin 2007 - 4 juin 2007 à 07:46
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 - 4 juin 2007 à 15:28
Bonjour tout le monde,

J'ai crée une base de données access au début,elle était non sécurisée et j'arrivais à avoir accés par  le biais de vb6:

Public db As Database
Public rs As Recordset
Public sql As String
Set db = OpenDatabase("C:\Documents and Settings\Khadime\Mes documents\mabase0.mdb")

Maintenant, j'ai sécurisé la base de données avec des comptes d'utilisateur ( pour acceder à la base de données il faut un username et un password).Mon problème est maintenant de savoir comment, avec vb6, se connecter à la base de données sécurisée? Quelles instructions me permettraients soit d'ouvrir directement un compte utilisateur , soit afficher la page d'authentification d'access.

Merci

5 réponses

cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
4 juin 2007 à 15:28
Habitues toi a bien dire ce qui ne fonctionne pas quand c'est le cas. Pour utiliser ADO, il faut aller dans Projet -> Référence et cocher Microsoft Active Data Object 2.8.

Bon si tu insistes pour DAO (pas de soucis, on va trouver).

Deja, j'ai l'impression que maintenant tu crées ton fichier par code, non ? ton code est différent, pourquoi ?
Si tu veux plus de renseignements sur les fichiers Sécurité, regardes ca (c'est ce que j'ai suivi)

http://www.ybet.be/access/15-securite.htm#password-access

On verra ensuite.

PS: pour ton erreur, soit tu n'as pas créer de fichier sécurité, soit tu t'es trompé de chemin, soit tu n'es pas inclue dans ton groupe de travail.
3
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
4 juin 2007 à 08:13
Salut,

je vois de quoi tu parles mais le pb c'est que je sais le faire en ADO mais DAO, je sais pas si c'est pareil.

Regarde dans l'aide la méthode que tu utilises:

Setdatabase = workspace .OpenDatabase ( dbname,options,read-only,connect)

Tu peux voir qu'il n'y a pas qu'un seul argument pour cette méthode. Donc, il faut que tu cherches les arguments correspondants a ce que tu recherches.

Au pif, je dirais un truc du genre
"UID Nom_utilisateur; PWD Password_Utilisateur"

Sinon, regardes les sources de ce site et vois s'il n'y en a pas qui t'aiderait.

A+
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
4 juin 2007 à 08:17
La connexion à une base sécurisée en ADO est la suivante :

Set acn = New ADODB.connection
Set rs = New ADODB.recordset

acn.Open "Provider=Microsoft.Jet.OLEDB.4.0;User ID= Nom_utilisateur ;Password = Password_Utilisateur;Data Source= " & Chemin_DataSource & ";Jet OLEDB:System database =" & Chemin_System_DataBase

Tu dois adapter.
 
PS :le dernier argument represente le chemin du fichier Sécurité que Access a du te créer.
 
0
kg_online Messages postés 39 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 4 juin 2007
4 juin 2007 à 11:14
J'ai essayé la methode ADO mais ça marche pas, je maitrise pas trop. Peux tu mettre plus de commentaires stp!     
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kg_online Messages postés 39 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 4 juin 2007
4 juin 2007 à 11:15
J'ai la procedure en DAO mais un petit problème bloque tout.
La procédure :

      Dim MyWorkspace As Workspace
      Dim SecuredDB As String
      Dim slUserName As String
      Dim slPassword As String
      Dim db As Database
      Dim rs As Recordset      'Définit l'emplacement de la base de données système
      DBEngine.SystemDB = App.Path & "\Sécurisé.mdw"
      'Crée un objet Espace de travail
      slUserName = Text1.Text
      slPassword = Text2.Text
      Set MyWorkspace = DBEngine.CreateWorkspace("New", slUserName, slPassword)

      'Ouvre la base de données
      SecuredDB = App.Path & "\lrobase0.mdb"
     
      Set db = DBEngine.Workspaces("New").OpenDatabase(SecuredDB)

      Set rs = db.OpenRecordset("Name", dbOpenDynaset)
      rs.MoveFirst
      Label3.Caption = _
                 "The first record is " & rs.Fields("LastName").Value

      'Ferme les jeux d'enregistrements et la base de données
      rs.Close

 L'erreur c'est :

Impossible de lancer votre application. Le fichier d'informations du groupe de travail est manquant ou ouvert en mode exclusif par un autre utilisateur. (Erreur 3028)
0
Rejoignez-nous