IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Discussion :

Interdire l'accès direct aux tables mais pas via les formulaires


Sujet :

Sécurité

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 106
    Points : 135
    Points
    135
    Par défaut Interdire l'accès direct aux tables mais pas via les formulaires
    Bonjour,

    J'ai une application qui nécessite que l'accès direct aux tables doit être interdit aux utilisateurs (hors administrateur).
    Seule la lecture/modification/suppression est autorisée via les formulaires. En gros, je veux forcer les utilisateurs à ne passer que par les écrans pour accéder aux données.
    La solution auquelle je pensais était la suivante : j'active la sécurité Access. Je supprime tous les accès en lecture/écriture aux tables à tous les utilisateurs (hors administrateurs). A l'ouverture des formulaires, je transfère l'utilisateur dans le groupe des utilisateurs, et à la fermeture je le supprime de ce groupe.
    Pour le moment, je me trouve confronté à 2 soucis :
    1) J'ai mis mon code à l'ouverture du formulaire, mais j'ai une erreur au moment de l'ajout au groupe des Administrateurs (ligne en rouge).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub Form_Open(Cancel As Integer)
    
        Dim Wrk As Workspace
        Dim Usr As DAO.User
        Dim Grp As DAO.Group
       
        Set Wrk = DBEngine.Workspaces(0)
       
        With Wrk
            Set Usr = .Users(Application.CurrentUser)
            Set Grp = .Groups("Admins")
            Usr.Groups.Append Grp    
        End With
    
    End Sub
    2) Le code à l'ouverture ne s'exécute pas car j'ai le message "Impossible de lire les enregistrements, pas d'autorisation sur la table XXXX", ce qui veut dire que mon code n'a même pas le temps de s'exécuter.

    Est-ce que quelqu'un pourrait me souffler quelques trucs pour résoudre mon souci ? Voire, me suggérer carrément une autre solution à ma problématique.

    merci d'avance !

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 106
    Points : 135
    Points
    135
    Par défaut
    Bon, j'ai compris mon erreur de code. Il fallait écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        With Wrk
            Set Usr = .Users(Application.CurrentUser)
            Set Grp = Usr.CreateGroup("Admins")
            Usr.Groups.Append Grp    
        End With
    Par contre je me rends compte qu'il faut avoir le droit d'administrer pour changer les autorisations d'accès, ce qui revient à donner tous les droits aux utilisateurs. Ce qui n'est pas ce que je veux. Du coup ma problématique reste entière.

    Est-ce que quelqu'un aurait une idée pour interdire l'accès aux tables en direct tout en laissant un accès aux données via les formulaires ?

  3. #3
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Bonjour,

    Je pense qu'avant de se lancer dans la sécurité ACCESS il vaut mieux comprendre comment cela fonctionne.

    Il y a justement un tuto qui explique tout :

    http://loufab.developpez.com/tutoriels/access/securite/

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

Discussions similaires

  1. Interdir l'accès direct aux pages JSF
    Par sky88 dans le forum JSF
    Réponses: 1
    Dernier message: 20/02/2012, 15h32
  2. Interdir l'accès direct aux pages jsp
    Par S_ami dans le forum Servlets/JSP
    Réponses: 13
    Dernier message: 28/08/2010, 06h57
  3. Gérer l'acces direct aux tables suivant les utilisateurs
    Par kristof33 dans le forum Sécurité
    Réponses: 2
    Dernier message: 02/03/2007, 08h11
  4. Interdire l'acces directe aux fichiers php
    Par Never dans le forum Apache
    Réponses: 4
    Dernier message: 04/12/2006, 21h00
  5. htaccess : interdire l'accès direct aux fichiers php
    Par Cédricss dans le forum Apache
    Réponses: 5
    Dernier message: 08/10/2006, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo