|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
Bonjour
je cherche un moyen de bien sécurisé la base de donnée. En frontal et sur chaque poste est déployé un mde. Ce mde a des liaisons sur un mdb situé sur un répertoire partagé du réseaux: \\srv-appl\data\access\leprojetenquestion\base.mdb Par ailleurs ils utilisent un mdw (\\srv-appl\data\access\machin.mdw) pour s'authentifier, mais je dois reconnaitre que la gestion des droits via ce truc est pénible. Comment ne pas passer par ca? Quel droits mettre sur ce repertoire pour qu'il puisse utiliser (lecture/ecriture) la base sans pour autant permettre à un petit malin d'attaquer la base access (s'il a access sur son poste) en direct ou pire de la piquer? merci à tous |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() |
Perso j'ai eu ce problème pour mon stage et je vais te donner de quoi la protéger contre la copie (sachant que ca n'evite pas les imprime-écran et les photo):
Etape 1 : Modifié la macro de lancement d’ACCESS qui s’appelle AutoExec Etape 2 : Créer un module contenant un programme en Visual Basic for Application permettant cette fonctionnalité Code : Function start() Dim p p = "C:\WINDOWS\Bureau\Commandessay.mdb" // ici on rentre l’adresse de la BDD If Not (p = Application.CurrentDb.Name) Then // Si “A n’est pas égal à B” alors fermer Application.Quit End If End Function Etape 3 : Lancer ce module à l’ouverture en le mettant en première position du déroulement Ici, on met la commande ExecuterCode avec pour argument start() ce qui fait que lorsqu’on voudra ouvrir ce fichier hors du serveur, la fonction va se lancer et le fichier ne pourra ni être ouvert ni modifié et donc impossible de récupérer les données des tables. |
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
avec le shift le gars passe qd même dans ce cas?
|
|
|
00
|
|
|
#4 | |
|
Membre habitué
![]() Inscription : mai 2006 Messages : 182 ![]() |
Bonjour,
Citation:
|
|
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() |
Oui c vrai mais faut deja qu'il sache que ca le desactive...
PS:Comment on desactive la touche maj??? |
|
|
00
|
|
|
#7 | |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
le coup du shift, faut pas prendre les utilisateurs pour des c..
ca se trouve facilement donc pour inhiber le shift il y a ca: Citation:
ca marche bien, même trop, car après plus moyen d'ouvrir la base !!!! |
|
|
|
00
|
|
|
#8 |
|
Membre habitué
![]() |
ok mais on l'as met ou ta fonction?
|
|
|
00
|
|
|
#9 | |
|
Membre habitué
![]() Inscription : mai 2006 Messages : 182 ![]() |
Citation:
|
|
|
|
00
|
|
|
#10 |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
je l'ai mis dans un module
je l'ai executé dans le débogage ca tourne, puis après plus moyen de lancer l'appli. donc oui, on l'a met où, et sous quel condition on l'execute ???? |
|
|
00
|
|
|
#11 |
|
Membre habitué
![]() |
Je crois que je vais prendre le risque de mettre ce programme et de faire buger, je me dit que ma pprotection est deja suffisante
|
|
|
00
|
|
|
#12 | ||||
|
Membre habitué
![]() Inscription : mai 2006 Messages : 182 ![]() |
Personnellement, j'ai mis ça dans un module. Ensuite, j'ai remplacer :
Code :
Code :
|
||||
|
|
00
|
|
|
#13 |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
je pige pas.
et la macro après ? une fois le shift désactivé comment tu rentres ? |
|
|
00
|
|
|
#14 |
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 710 ![]() |
Salut,
Regarde ce post sur la sécurité niveau utilisateur, il est trés bien fait : ici (c'est un peu compliqué à utiliser pour la première fois, mais une fois le principe compris, ça va tous seul ou presque) Ensuite pour interdire la touche shift regarde là (prévoir un endroit dans la base qui redonne la possibilité d'activé la touche shift, genre un doubleclick sur un endrois particulier) Enfin, le fait de vérifier au démarrage que le fichier n'a pas bougé ne te protège de .... rien en fait : - il faut aussi protéger les données et la solution proposée par Jahprend ne "protège" que le frontal - même une base "protégée" avec cette solution ne sera que trés peu sécurisée : ce n'est qu'au démarrage que ce code est exécuté, tu peux toujours depuis une autre base venir lire les objets de la base. La seule méthode qui te permet de protéger les données et le frontal d'une base Access, c'est la gestion du MDW. Il y a déjà pas mal de post sur le sujet, et ce que j'en retiens c'est que la gestion de la sécurité au niveau utilisateur (données et frontal) reste incontournable. Toutes autres solutions ne fera que rendre les choses plus compliquées pour une personne malveillante, mais ne la bloquera pas. Au mieux on empèche le néophite de "bidouiller", mais pas le programmateur averti ! Bien sûr dans certains cas c'est suffisant (tout dépend du besoin de sécurité que l'on a en fonction de la base, des données, des personnes suceptible d'avoir accés à la base ...) , mais il ne faut pas croire qu'autre chose que l'utilisation d'un MDW pourra vraiment sécuriser une application. En tout cas c'est ce que j'ai retenu des mes lectures et expériences. A+ |
|
|
00
|
|
|
#15 |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
c'est dejà pas mal mais pas suffisant.
Ca n'empeche pas d'importer tous les elements depuis une autre base. et concernant l'accès au répertoire ? J'aurais envie de privilégié cette piste. Pas d'accès (juste pour access) et là, on ne rissque rien du tout. je vais parcourir tes liens. merci |
|
|
00
|
|
|
#16 | ||
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 710 ![]() |
Voici un exemple de code utilisant la fonction présenté dans la FAQ sur la gestion de la touche MAJ :
Code :
A+ |
||
|
|
00
|
|
|
#17 |
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
merci Muhad'hib
sécurité à ce niveau là réglé. Coté réseau, je ne le sens pas du tout. Je vois pas comment, le répertoire pourrait permettre la lecture/ecriture dans la base, et bloquer l'utilisateur d'y rentrer en naviguant dans les répertoires. à moins que??? Le groupe sécurité ne nous tente absolument pas. Trop rigide et pas assez souple. En admettant que l'on utilise ce truc. Normalement de chez lui (s'il part avec la base) il ne pourra pas rentrer ?(faudrait qu'il prenne le mdw aussi? Est ce qu'un utilisateur qui part avec la base sous le bras, pourra importer les éléments de celle ci depuis une autre base? |
|
|
00
|
|
|
#18 |
|
Membre habitué
![]() |
Dans mon cas , j'ai a faire a des neophites et de plus il doivent tous avoir acces a la lecture et l'eciture des données donc a la lecture de la structure..
|
|
|
00
|
|
|
#19 |
|
Membre éclairé
![]() Patrick developpeur amateur dans mon cadre professionnel Inscription : juin 2006 Messages : 499 ![]() |
pour verrouiller ou deverrouiller la touche shift utilise le fichier en download ici... Justement tu l'ouvres avec la touche shift because y'a un form de demarrage et ensuite tu modifies le pointage vers la base dans les 2 modules. Ca fonctionne nickel et je remercie LedZepp au passage pour ce bon plan !
__________________
|
|
|
00
|
|
|
#20 | |||
|
Membre éclairé
![]() Inscription : juin 2006 Messages : 402 ![]() |
Citation:
je reviens la dessus. avec une base mde(comprenant requete,forms, modules, etat) déployé chez les utilisateurs où les tables sont liées à une base mdb (contenant que les tables). Si j'enlève le shift du mdb, comment je vais pouvoir le remettre (vu que je n'ai que les tables)? C'est possible de le faire depuis une autre appli? c ca? Désolé pour ces questions de newbie. |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com