|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Inscription : novembre 2006 Messages : 467 ![]() |
Bonjour à tous,
J'essaye de mettre en place la sécurité d'une base au format 2003 avec Access 2007. Je ne comprends pas certains comportements. J'ai, bien sûr lu et relu le tuto de loufab (bien lu, je l'espère). 1-Comment peut-on savoir avec quel fichier de sécurité une base travaille? En effet, avec Access 2007, je ne vois pas comment ouvrir la fenêtre "Administrateur de groupe de travail" n'y comment exécuter wrkgadm.exe. 2-Le seule façon de créer un fichier de groupe de travail est-elle d'utiliser l'assistant? 3-Existe-t-il un fichier standard System.mdw ou Sécurité.mdw sous access 2007 ou bien celui-ci est-il créé à chaque définition d'une sécurité? 3-Je crée un sécurité pour une application et une autre application qui n'a rien à voir me demande un mot de passe, comment cela se fait-il? 4-Le seul moyen de joindre un groupe de travail est-il d'écrire le chemin du mdw dans le raccourci? 5-Peut-on, après coup, modifier le nom d'un fichier mdw? J'espère mes questions moins confuses que ne l'est mon état d'esprit actuel. Beaucoup de ses points ont déjà été abordés dans le forum mais j'ai l'impression qu'Access 2007 à changé un peu les choses, j'aimerai donc, si possible des avis validés 2007. Je vous remercie d'avance de vos réponses éclairées.
__________________
Un seul conseil: la règle des 3S. |
|
|
00
|
|
|
#2 | ||||||
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 096 ![]() |
Bonjour,
Citation:
Concernant quel fichier est utilisé (on voit la nuance) : il faut lancer la commande de création de groupe (ancien wrkadm.exe sur les versions 2000 et antérieure). De ce coté 2007 est un peu spécial. Il faut rajouter l'icone en allant dans Menu Office/options access/personnaliser. Elle n'apparaitra qu'avec des bases au format non 2007. Citation:
Citation:
Citation:
5-Le seul moyen de joindre un groupe de travail est-il d'écrire le chemin du mdw dans le raccourci? Non on peut le faire manuellement en utilisant l'option Join du wrkadm. On peut également lancer une application via le raccourci paramétré qui se referme immédiatement. Dans le seul but de remettre le mdw standard. Citation:
Citation:
Cependant l'interface ACCESS 2007 -attention je ne parle pas du nouveau format 2007 de base de données accd- ne change en rien la mise en place de la sécurité (c'est toujours aussi délicat et rigoureux). Seule l'absence des commandes en standard -à rajouter dans les menus- oblige à une manip supplémentaire -le rajout de celles-ci-. Sinon les options et procédures n'ont absolument pas changées. Attention certaines versions (notamment 2003) de l'assistant sécurité son buggé. Le bug n'apparait que lors d'un rajout manuel d'un groupe ou d'un compte. Espérant t'avoir éclairé sur le sujet.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
||||||
|
00
|
|
|
#3 | |||
|
Membre confirmé
![]() Inscription : novembre 2006 Messages : 467 ![]() |
Bonjour,
Merci loufab pour le temps que tu consacres, une fois de plus, à un administrateur égaré. Je reviens, pour l'instant sur le ploint 5. Citation:
J'ai: Dans le ruban l'icône principale :"Utilisateurs et autorisations" Et sous celle-ci trois icônes: "Autorisation d'accès..." "Gestion des utilisateurs et des groupes..." "Assistant sécurité au niveau utilisateurs..." Parmis ces trois commandes aucune Option "Joindre" Le seul moyen que j'ai est donc d'utiliser le raccourci paramétré avec /wrkgrp "monfichier.mdw". Ca, ça marche... avec la frontale. En conséquence je ne vois pas (et la question à déjà été posée sur le forum sans que j'ai su lire de réponse probante) faire pour que ma dorsale puisse joindre le même fichier de sécurité. (Le fractionnement à été fait avant l'application de la sécurité). L'utilisation du raccourci dans ce cas ne me semble pas faire partie des solutions possible. Faut-il fractionner après la sécurisations? A cette question (sur un autre post): Citation:
Citation:
(J'ai vraiment, parfois, l'impression d'être idiot...)
__________________
Un seul conseil: la règle des 3S. |
|||
|
|
00
|
|
|
#4 | |||||
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 096 ![]() |
Bonjour TAKAMAKA !
C'est toujours un plaisir de répondre à tes questions précises. Citation:
![]() Citation:
L'utilisateur a déjà joint le mdw add-hoc, soit il en utilise un autre. Dans le premier cas aucun problème ouvre la base. Second cas, il n'est pas connecté au bon MDW et il se fait jeter, et c'est là qu'entre en jeu le raccourci paramétré. La Front ne joint rien, c'est l'utilisateur du fait de sa connexion qui, grace au accès vers la Back, établira la connexion avec ses droits. ATTENTION a ne pas partager la FRONT comme certains font couramment, c'est le piège à problèmes. Citation:
Citation:
Pour plusieurs raisons : 1 - l'utilisateur qui ouvre un formulaire hérite des droits qu'il (que son groupe) possède sur la table. S'il n'a pas de droit du tout, un formulaire vide apparait... quand je dis vide c'est réellement vide - même pas un controle texte ou un bouton ! Et ainsi de suite jusqu'au plein droit. 2 - toutes les autres manips touchant les tables sont également soumises à ses droits. Les objets requêtes ont une exception avec le paramétre OWNER. 3 - les requetes en VBA et manipulation via DAO/ADO font execption à cette règle. Cela permet de renseigner/visualiser des tables dont l'utilisateur n'a théoriquement pas les droits. Concernant le Front ---> Je dirais MDE ! Citation:
Je pense n'avoir rien oublié, si tu as d'autres questions j'essayerai d'y répondre. Cordialement et Joyeuses Fêtes.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|||||
|
00
|
|
|
#5 | |||
|
Membre confirmé
![]() Inscription : novembre 2006 Messages : 467 ![]() |
Re,
Citation:
Quand je vois le nombre de posts qui tournent autour du sujet et le nombre de réponses que tu fourni j'ai des scrupules à en remettre une couche... Mais bon, je n'ai pas fini et j'ai envie de tout saisir. Ton idée de créer un fichier seulement pour la dorsale me plait. Je formule ce que je pense avoir compris: La frontale n'est donc associée à aucun fichier particulier de sécurité C'est lorsque que l'application (frontale) tente d'établir les liaisons avec les tables qu'il y a connexion avec le mdw de la dorsale. Toute la manip de définition des droits se fait en ouvrant le fichier de la dorsale. Au sujet du raccourci (on parle bien d'un raccourci sur le bureau...) Citation:
J'imagine mal devoir demander à un utilisateur d'utiliser un deuxième raccourci pour ouvrir la dorsale histoire d'associer cette dorsale avec le fichier de sécurité. Il y a donc quelque chose que je ne pige pas dans cette histoire de raccourci. D'autre part je ne saisi pas le sens de partager lorsque tu dis: Citation:
Joyeuses fêtes à toi aussi ainsi qu'à tous nos joyeux membres!
__________________
Un seul conseil: la règle des 3S. |
|||
|
|
00
|
|
|
#6 | |||
|
Membre confirmé
![]() Inscription : novembre 2006 Messages : 467 ![]() |
Re,
loufab: Citation:
L'idée me plait de ne gérer qu'une seule sécurité, en l'occurence celle de la dorsale. Concernant le raccourci, j'ai fini par comprendre (enfin, j'espère): C'est l'utilisateur qui rejoind un groupe, et non la frontale. C'est donc le raccourci de la frontale qui indique le fichier à utiliser pour avoir les droits sur la dorsale. J'ai testé, ça marche! J'ai utilisé l'assistant de bout en bout pour sécuriser la dorsale. J'ai pris tous les groupes proposés (ça peut servir). J'ai créé un utilisateur par groupe pour pouvoir tester les droits des groupes. J'ai choisi l'option "Aucune autorisation au groupe utilisateur", j'ai bien fais? Je n'ai pour l'instant pas touché au propriétaire désigné des objets (il s'agit de l'utilisateur qui porte le nom de la connexion Windows et que j'ai gardé (je suis prudent...)). Je pense avoir à le supprimer par la suite et déclarer l'utilisateur à qui j'ai donné le maximum de droits comme propriétaire (c'est correct?). Je pense que l'assistant à dégradé les droits des utilisateurs par défaut et que je n'ai rien de plus à faire. Correct? Il me reste à voir le problème de requêtes que tu évoques. En effet l'utilisateur que j'ai nommé Uconsultation et qui appartient au groupe Lecture seule ne peut pas consulter un formulaire dont la source est une requête (page blanche). Citation:
Il faut avoir des droits supérieurs à Lire pour lire une requête? Je ne vois pas pourquoi... Citation:
pfff... que de littérature...
__________________
Un seul conseil: la règle des 3S. |
|||
|
|
00
|
|
|
#7 | ||||
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 096 ![]() |
Citation:
Citation:
Citation:
Dans le cas ou l'utilisateur s'est déjà joint à un fichier mdw l'ouverture de la dorsale devrait se passer correctement. Citation:
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
||||
|
00
|
|
|
#8 | ||||||||||||
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 096 ![]() |
Citation:
Citation:
![]() Citation:
Code :
Citation:
Citation:
![]() Citation:
Citation:
C'est très utile pour permettre à un compte de plus faibles droits de faire des actions/consultations sur une table. La condition est donc très claire, la requête doit être une requête sauvegardée. Inutile de faire ça avec une requête de type Script SQL sous VBA. Citation:
un utilisateur n'a aucun droit sur la table Salariés, cela évite de connaitre les informations personnelles comme son adresse, son salaire, son statut... Hors il a besoin de son nom dans une liste pour pouvoir lui affecter une tâche (en production par exemple). On construit donc une requête d'affichage des champs nom/prenom/matricule avec les droits de plus haut niveau (propriétaire = SuperAdmin). Il pourra ainsi avoir accès à cette information sans connaitre les autres. On peut reproduire l'exemple à des actions. Citation:
Elles héritent de toutes façon des droits des utilisateurs/groupes sur les tables. Si tu affectes une requete SQL via VBA cela ne changera rien puisque c'est dans la propriété source que celle-ci est "exécutée". Seul le cas d'une requete (script SQL) sous VBA permet de passer sur les droits. Exemple : Un utilisateur n'a pas de droits de lecture/modification/creation sur les factures pourtant il doit les générer automatiquement (à partir de contrat périodique) les factures de ses contrats. 2 solutions techniques :
Citation:
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
||||||||||||
|
00
|
|
|
#9 | |
|
Membre confirmé
![]() Inscription : novembre 2006 Messages : 467 ![]() |
Bonjour,
Encore merci pour le temps consacré. Je ferai une synthèse plus tard, pour l'instant juste une interrogation. Dans le changement de propriétaire les tables MSysNavPane GroupCategories, et 3 autres MSysNavPane... restent avec administrateur en propriétaire. (pas les droits d'admin pour que mon superadmin puisse le modifier). Est-ce normal? Ne serait-ce pas parce que ces tables sont spécifiques access 2007 et que je suis resté au format mdb? edit: Citation:
__________________
Un seul conseil: la règle des 3S. |
|
|
|
00
|
|
|
#10 |
|
Membre confirmé
![]() Inscription : novembre 2006 Messages : 467 ![]() |
La solution, suggérée par loufab, que j'ai retenue est donc de sécuriser la dorsale.
Je recommande cette façon de faire: 1-C'est simple: On ne s'occupe que des tables, c'est déjà assez... 2-C'est sûr: On sécurise les tables, y compris d'un accès "direct" (clic sur le fichier), quoi de plus important dans un bdd? 3-C'est suffisant: on rajoute éventuellement quelques codes pour tester le groupe d'un utilisateur et lui permettre ou non certaines actions ou visus. 4-C'est rapide: si vous essayez, soit de sécuriser la frontale ou mieux, les deux (frontale plus dorsale), prévoyez lit de camp, sandwichs et thermos pour le temps que vous allez passer sur ce forum et maintenir votre sécurité. Tout ce que je raconte est bien sûr vécu par un programmeur qui débute, avec la version 2007 avec frontale mde. Merci à loufab.
__________________
Un seul conseil: la règle des 3S. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com