Trucs et astuces Express - L'aide informatique au bout des doigts!

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> create group / create user
leila
posté 28-03-2006 - 7:02
Message #1


Membre


Groupe : Membres
Messages : 7
Inscrit : 13-03-2006
Membre n° 9 349



Bonjour,

Je voudrais créer des groupe et des utilisateurs pour l'accès à une base de données partagée par réseau.

Pour cela, le code que j'ai utilisé est le suivant :

Dim worksp As Workspace
Dim wgroup As Group
Dim wgprop As Property
Dim wgpuser As User

Set wgroup = worksp.CreateGroup(n_group, n_group_pass)
Set wgpuser = wgroup.CreateUser(n_user, n_group_pass, n_user_pass)

p = worksp.Groups.Count

Les valeurs de (n_group, n_group_pass, n_user, n_group_pass, n_user_pass) sont définies.

Le code s'execute bien mais la valeur de "p" est égale à 0!!

Cela veut dire à mon avis que le groupe n'a pas été crée! La même valeur prend le "p" quand :
p = wgroup.Users.Count (p=0) sad.gif

Est ce que cela veut dire que le groupe et les utilisateurs n'ont pas été crées?? Si ceci est vrai, comment réussir l'opération?


Merci

LEILA
Go to the top of the page
 
+Quote Post
Groumphy
posté 28-03-2006 - 8:50
Message #2


Modérateur loufoque et linuxien


Groupe : Modérateurs
Messages : 2 914
Inscrit : 26-11-2002
Lieu : Bruxelles
Membre n° 148



Hello,

En premier temps il serait utile de savoir en quel langage tu comptes programmer... Et en quel format se trouve la DB.


De plus, il serait intéressant que tu note ton code en entier... Notament les définitions des groupes et autres. Car ce serais plus facile de voir ou cela plante si le code est en entier en place de chercher le petit cailloux manquant.

Merci,

G.


--------------------
----------------------------------
Blog (Archives)
Go to the top of the page
 
+Quote Post
leila
posté 29-03-2006 - 3:37
Message #3


Membre


Groupe : Membres
Messages : 7
Inscrit : 13-03-2006
Membre n° 9 349



Bonjour,

Je programme en VB6 avec une base de données Access partagée par réseau.

Voici le code en entier que j'ai utilisé :

Dim worksp As Workspace
Dim wgroup As New Group
Dim wgprop As Property
Dim wgpuser As New User

Set db = DBEngine.OpenDatabase("\\Ag\AG\BD\loulou.mdb")
Set worksp = DBEngine.Workspaces(0)

n_group = InputBox("Veuillez entrer le nom du goupe")
n_group_pass = InputBox("Veuillez entrer le mot de passe du goupe")
n_user = InputBox("Veuillez entrer le nom de l'utilisateur")
n_user_pass = InputBox("Veuillez entrer le mot de passe de l'utilisateur")
Set wgroup = worksp.CreateGroup(n_group, n_group_pass)
Set wgpuser = wgroup.CreateUser(n_user, n_group_pass, n_user_pass)
p = wgroup.Users.Count


Le code s'execute bien mais la valeur de "p" est égale à 0!!

Aussi combien d'utilisateurs pourront travailler en même temps sur mon application?? (Comment programmer ça?)


Merci bcp


LEILA
Go to the top of the page
 
+Quote Post
Groumphy
posté 29-03-2006 - 6:40
Message #4


Modérateur loufoque et linuxien


Groupe : Modérateurs
Messages : 2 914
Inscrit : 26-11-2002
Lieu : Bruxelles
Membre n° 148



Hello,

Tu crées bien l'espace de travail... Mais tu ne le sauve pas... Il ne fait référence à rien.

De mémoire dans VB6 il devrait y avoir une méthode de type '.SaveWorkspace(NomDuFichier)' ...
Identiquement dans le groupe, il semble que tu sautes l'objet... Mais que tu utilises directement la méthode...

Quant au niveau utilisateur, là je n'ai rien vu qui cloche.

Mais j'attire ton attention que cela fait un bail que je n'ai plus fait de VB6.

En espérant t'avoir été utile dans tous les cas, n'hésite pas a reposter si besoin est.

G.

Hello, c'est de nouveau moi,

Je me pose après un instant de réfléxion... Pourquoi ne pas faire cela en VBA direct ?
Cela te simplifierais grandement la tâche.

Tu stockes les administrateurs, utilisateurs dans la table en sois... Et tu n'autorises que la consultation pour un groupe etc...

Si tu as déjà essayé, tiens-nous au courant.

G.


--------------------
----------------------------------
Blog (Archives)
Go to the top of the page
 
+Quote Post
leila
posté 30-03-2006 - 3:48
Message #5


Membre


Groupe : Membres
Messages : 7
Inscrit : 13-03-2006
Membre n° 9 349



Bonjour,

j'ai jamais travaillé sur VBA. sad.gif

J'arrive pas à trouver la méthode "SaveWorkspace" donc je n'arrive toujours pas à sauvegarder mon workspace dry.gif

"Identiquement dans le groupe, il semble que tu sautes l'objet... Mais que tu utilises directement la méthode..." à vrai dire, j'ai pas très bien compris!!


Merci bcp pour ton aide

LEILA
Go to the top of the page
 
+Quote Post
Groumphy
posté 30-03-2006 - 11:05
Message #6


Modérateur loufoque et linuxien


Groupe : Modérateurs
Messages : 2 914
Inscrit : 26-11-2002
Lieu : Bruxelles
Membre n° 148



Hello,

En prenant un peu plus de renseignement sur la sécurisation d'une DB Access, j'ai pu tirer quelques petites choses de sympathique.

Il semble que nous soyons partis tous les deux dans le faux :

1. "La librairie de d´eveloppement de DAO de Microsoft (Microsoft Library DAO 3.6) peut ˆetre
consid´er´ee comme une interface de liaison entre le langage de programmation utilis´e par le
d´eveloppeur, et une base de donn´ees (g´en´eralement une base de donn´ees Access). Elle contient
de nombreuses fonctions de gestion, ainsi que diff´erentes constantes n´ecessaires `a la manipulation
de la base de donn´ees."
2. "Voici la marche `a suivre pour inclure et ainsi pouvoir manipuler la DAO sous VB :
– Dans l’onglet ”Projet”, cliquez sur ”Ajouter une r´ef´erence...”,
– Puis sous l’onglet ”COM”, s´electionnez la librairie ”Microsoft DAO 3.6 Object Library”
– Enfin, cliquez sur ”OK”"
3. travailler sur DB : y incorporer une ID par personne autorisée.
4. L’ouverture de la base de donn´ees :
db = DBEngine.OpenDatabase(fichier)
"En Visual Basic, la connexion `a une base de donn´ees s’effectue au travers de la collection DBEngine.
Seule, l’adresse du fichier est n´ecessaire."
5. Créer la sécurité de la DB par le fichier .MDW : "C'est dans ce fichier que sont définis les groupes et les utilisateurs pouvant accéder à une base. Lorsque vous mettez en place la sécurité, vous associez une base de données à un fichier .mdw précis. L'association peut se faire de deux manières :
Associer Access tout entier à un fichier .mdw.
Dans ce cas, Access est connecté à un fichier .mdw sécurisé, il demande donc une identification à chaque démarrage. Ca ne signifie pas pour autant que toutes les bases sont verrouillées !
Cette association est établie via l'Administrateur de Groupe de travail (disponible dans le menu Démarrer / Programmes ou dans le dossier d'installation d'Access - cherchez wrkgadm.exe). Sur Access 2002, l'option est disponible directement depuis Outils / Sécurité.
Associer uniquement une base de données au fichier .mdw.
Dans ce cas, seule la base concernée demande une identification au démarrage. Les autres continuent de fonctionner avec le fichier standard system.mdw.
Dans ce second cas, l'association base / groupe de travail se fait au niveau du raccourci Windows. 3 options de ligne commande sont disponibles (consultez l'aide d'Access pour les détails) :
/wrkgrp définit le groupe de travail,
/user définit l'utilisateur par défaut, si nécessaire,
/pwd définit le mot de passe par défaut, si nécessaire aussi (ne pas abuser : un mot de passe en clair dans un raccourci n'est pas ce qu'on fait de mieux !).".
6. Un petit topics sympathique : http://www.developpez.net/forums/viewtopic.php?p=2448362

Extrait de mes amours futiles des pages de Google ...
Donc, le plus simple :

a ) création d'une application VB pointant sur la DB
b ) sécuriser la DB via le .MDW icon_smile.gif

En espérant t'avoir éclairé plus !

G.


--------------------
----------------------------------
Blog (Archives)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic

 

RSS Version bas débit Nous sommes le : 28-08-2008 - 14:05
annuaire