Securité Access ? - SQL/NoSQL - Programmation
Marsh Posté le 05-01-2001 à 12:47:53
Il faut la coder
Outils / Sécurité / Coder/Décoder
Ta base de données sera cryptée, par contre, loin d'être inviolable -)
Par contre, la gestion des utilisateurs se fait avec le fichier de groupe de travail System.mdw sur C:WindowsSystem ou C:WinNTsystem32 ou enfin ca dépend
Il faut mieux d'ailleurs ne pas prendre celui la comme fichier de groupe de travail, car si tu le modifie apres pour le recuperer, il faut une sauvegarde
Il faut en creer un autre (*.mdw) et le valider avec la commande Wrkgadm.exe te le mieux c'est de le valider temporairement car il faut gérer si on utilise deux applications avec deux fichiers groupes de travail différentsss
Enfin, je te donne quelques pistes, mais il faut une doc de toute facon, car c'est pas ultra simple
Marsh Posté le 05-01-2001 à 14:06:13
C'est clair que la securité Access c'est un peu le bronx quand on y mets les mains pour les premieres fois...
Fais gaffe quand même de ne pas te "mordre la queue" (de te verouiller toit même)....
@++ et bon courage !!
Marsh Posté le 05-01-2001 à 15:02:06
Est-ce que je peux avoir la version d'Access que tu utilise car la gestion de la securite est differente pour
ACCESS 2
ACCESS 95-97
ACCESS 2000
A+
Marsh Posté le 08-01-2001 à 08:59:19
ACCESS 97 comme version
le truc code/decoder ça pas l'air de marcher chez moi ??
je clique sur code et puis rien de spéciale dans mon nouveua fichier ??
(Je cherche un moyen d'empecher l'acces aux tables,code d'une base Access par les utilisateurs ? et que la touche shift ne fait pas sauter, pas de fichier groupe de travail)
Marsh Posté le 08-01-2001 à 09:48:19
"mot de passe à ta table" ??ss
Le user à tous les accès sur la table mais je veux qu'il ne puisse la modifier que par un formulaire
Marsh Posté le 08-01-2001 à 09:56:25
Achete un bouquin, y'a trop de manips à faire pour tout expliquer sur le forum
Marsh Posté le 08-01-2001 à 10:05:20
pour le mot de passe c'est déja fait sur la base
bon thegti un conseil de livre !
Marsh Posté le 08-01-2001 à 10:43:10
je me rappelle plus celui que j'avais, je l'ai vendu y'a 2 ans
c'etait un Micro Applications je crois 199F il me semble, il était pas terrible d'ailleurs
mais sinon essaye la doc inclut dans Access ou sur le net, y doit y avoir des trucs (fais une recherche sur "System.mdw" )
Marsh Posté le 08-01-2001 à 11:01:50
je recherche plutot un truc qui permetrait de créer un exe ou un truc qui ne laisse accès qu'aux formulaires, un kit de dev ??
Marsh Posté le 17-01-2001 à 06:28:54
moi perso, je "cache" les fichiers, avec les passwords c'est tj le bordel, c'est plus simple de renommer les tables, requètes, macro etc... tu modifie le nom en USysNom, tu vas dans les options et tu coches cacher les fichiers systèmes, du coup l'user ne voit plus les tables etc.. et tu lui laisses l'acces aux formulaires uniquement .
Marsh Posté le 17-01-2001 à 09:15:21
ok kala_azar mais si le user fait shift puis va dans les options et affiches tous les objets je suis fini
Marsh Posté le 18-01-2001 à 06:45:40
heu oui mes users sont déja des casse couilles, mais ils sont pas assés malins pour aller dans les options Maintenant si les tiens cherchent vraiment a te saboter
Juste une question ... je pige pas ton prob avec le shift ?
Sinon il ne te reste qu'a faire toute la procédure de protection pour chaques fichiers, mais même avec ça, l'user peut tj rentrer directement dans tes tables pour y rentrer des données, il ne peut rien supprimer 'fichiers) mais a tj access aux entrée des tables
Voilà pq moi j'ai tout mis en "Usys" , comme ça j'evite qu'il bidouille dedans, mais c'est vrai que si sont un peu plus futé
--Message édité par kala_azar--
Marsh Posté le 18-01-2001 à 08:52:05
Mes users sont des vrai emmerdeurs, pour aller plus vite ils rentrent de temps des données directement dans les tables pour ne pas passer par les controles que j'ai fait .
c'est rare mais après c'est moi qui est de pb.
Pour le shift :
au demarrage j'ai un formulaire qui se lance tout seul et si le user appuye sur shift le formulaire ne se lance pas,puis il peut aller dans le menu fenetre, afficher puis option et tous afficher et il acces aux tables. Voilà
Marsh Posté le 18-01-2001 à 09:41:28
Le fichier MDE sert juste a ne pas pouvour lire et modifier le code VBA => le shift existe toujours, ça na pas d'impacte sur les tables
(je fais des mde)
Marsh Posté le 19-01-2001 à 13:14:03
je sais qu'il y a un runtime fournis avec le kit de Dev d'office, qui permet de lire le mdb, c'est une petite application qui remplace le gros prog access, j'aimerai me le trouver aussi
Marsh Posté le 19-01-2001 à 14:13:28
Le but de permettre aux Users d'accéder à une base Access est de simplifier le développement et a beaucoup d'avantages.
MS ACCESS a beaucoup de méthodes pour la sécurité comme :
1.MDE File : Verrouiller la modification des forms/Queries/Modules/Macro
2.MDW files : Sécurité Users Verrouiller la modification/Structure de tous les objets
3. Cacher les tables (pour les Users débutants)
Si tu ne veux pas que les users entrent directement dans tes tables (avec SHIFT button) ou si tu ne veux pas que ton interface contient des tables Acces, je te conseille d'utiliser SQL server (Version 7 par ex) . Tu crées des tables sur le serveur SQL, tu écris des procédures stockées (peut être une instruction Select simple) et tu les appelles directement de ACCESS en créant une query comme l'exemple suivant:
exec <Database>ssss ...<Nom procédure stockée> @paramètre (si existe)
Ton formulaire sera référencé à la requête ci-dessus.
Ainsi, dans ta base Access,il n' y aura aucune table.
Cordialement
PS: Même avec RunTime, si User a une version Access, il peut accéder à tous les objets de ta base. Run Time est utilisé uniquement pour les users qui n'ont pas d'une license Access complète.
Marsh Posté le 09-04-2004 à 10:54:58
Je remet sur le tapis le problème de la sécurité d'accès à ACCESS étant donné que je n'ai pas trouvé ma réponse sur le forum.
Je souhaite verrouiller complètement l'accès à ma BdD (Access 2002). J'ai changé le groupe de travail, ça marche. Mais problème dès qu'on veut copier la BdD sur un autre ordi, la protection ne sert plus à rien.
Alors je dis : A l'Aide ! !
Marsh Posté le 15-04-2004 à 12:56:20
Créer un nouveau groupe ne sert à rien si on ne le customise pas: il y a toujours le user "Admin" par défaut dedans, et il a tous les droits.
Ce qu'il faut faire, c'est créer un nouveau user dans ce groupe de sécurité, lui filer un mot de passe et le rendre propriétaire de la database et tous les objets dedans (ne pas oublier les <nouvelles tables/requêtes> ): il faut donc que "Admin" n'apparaisse plus NULLE PART dans le système changement de propriétaire (Change owner en anglais), et qu'il n'aie aucun droit sur la DB ou élément de la DB.
Le cryptage ça ne sert qu'à masquer les données, et les opérations sur la DB seront ralenties, de surcroît. Ce n'est vraiment utile que si on veut cacher le contenu à l'utilisateur lambda.
Marsh Posté le 22-04-2004 à 14:42:02
Merci pour ta procédure, drasche, mais il y a une toute petite faille.
Si la personne qui ouvre la BdD utilise la touche shift en meme temps, adieu la protection...
P.S. : Désolé de répondre aussi tard (qlq jours de repos)
Marsh Posté le 22-04-2004 à 15:02:20
ma procédure ne parle pas des initialisations de démarrage
Contre ça tu ne peux absolument rien faire.
Le workaround consiste à avoir deux bases:
un MDB sécurisé avec un MDW pour protéger les données (surtout en limiter l'accès).
un MDE contenant tout le reste (formulaires, rapports, modules). Dans ce MDE, tu géreras la connexion aux données, que tu feras manuellement par voie de programmation. Il faudra donc associer, toujours par voie de programmation, les formulaires/rapports à la connexion aux données.
Ils n'auront donc plus d'accès possible directement sur les données (le MDE contient le login à la base contenant les données, ils n'y auront pas accès).
Marsh Posté le 22-04-2004 à 15:04:22
Il n'existe pas de propriété dans le code VBA qui permettent de désactiver certaines touches (comme en javascript) ?
Marsh Posté le 22-04-2004 à 15:06:28
je ne sais pas. A priori je dirais non, c'est une sécurité (!) qui existe dans tous les softs Office pour contrecarrer les procédures d'autodémarrage. C'est pratique quand il y a un bug à ce niveau par exemple. Mais le coup du Shift est intercepté avant le démarrage des procédures de type Auto_Open, tu ne peux donc rien faire contre ce point précis.
Marsh Posté le 03-08-2004 à 22:45:15
Une fois le développement de ton application terminé, tu dois essayer un maximum d'actions possible, parmi lesquels cette fameuse touche shift. Il t'appartiens donc d'aller dans le menu "Outils" --> "Démarrage" et de tout décocher, sauf peut être "Afficher la barre d'état".
Il y aurait une autre solution avec la Macro AutoExec.
Le premier cas de figure est plus aisé.
Marsh Posté le 05-01-2001 à 12:17:53
Je cherche un moyen d'empecher l'acces aux tables d'une base Access.(et que la touche shift ne fait pas sauter)
Merci.
Message édité par NoBlue le 16-04-2004 à 13:59:23