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

Access Discussion :

Création comptes utilisateurs


Sujet :

Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut Création comptes utilisateurs
    Bonjour, j'utilise actuellement un formulaire de saisie de login et de mot de passe afin de sécuriser(plutot donné l'impression d'etre sécurisé) un formulaire. j'ai rajouté un champ domaine qui est soit a admin, invité, refusé. j'aimerais donc qu'au clic sur le bouton de validation je controle également le domaine et par ainsi ouvrir un formulaire différent , par exemple l'admin aura tous les acces, l'invité pourra consulter , le refusé sera invité a demander l'acces à l'admin.

    j'ai egalement vu les options de sécurité d'access mais ce n'est pas ce qui m'interesse. Je veux surtout que cela soit ecrit en vba.

    actuellement j'utilise le code suivant:
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Private Sub bouton_valider_Click()
        Dim Ssql As String
        Dim rst As DAO.Recordset
        Dim stDocName As String
        Dim stLinkCriteria As String
        Static i As Byte
     
     
        Ssql = "SELECT Passwords FROM Identifiants WHERE Utilisateurs Like """ & Me.Login & """"
        Set rst = CurrentDb.OpenRecordset(Ssql)
        If (rst.BOF And rst.EOF) = False Then
             If rst![Passwords] = Me.Pass Then
                     MsgBox "Connexion", vbInformation
                     i = 0
                     stDocName = "MODELE"
                     DoCmd.OpenForm stDocName, , , stLinkCriteria
                     'action si validation
             Else
                    MsgBox "Password invalide", vbExclamation
                    i = i + 1
             End If
        Else
            MsgBox "Utilisateur invalide", vbExclamation
            i = i + 1
        End If
        rst.Close
    If i = 3 Then
    MsgBox "Vous avez dépassé le nombre de tentatives autorisées", vbCritical
    DoCmd.Quit
    End If
    End Sub
    comment le modifié pour gérer le domaine? je ne connais pas vraiment le code vba. j'ai un peu de mal a comprendre comment récuperer les informations des tables et les tester!
    pour tester, je pensais utiliser des msgbox

  2. #2
    Membre averti Avatar de @rkane
    Homme Profil pro
    developpeur amateur dans mon cadre professionnel
    Inscrit en
    Juin 2006
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : developpeur amateur dans mon cadre professionnel
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 521
    Points : 403
    Points
    403
    Par défaut
    salut essaies ce script que j'utilise moi même dans des conditions identiques :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    Private Const giMaxLogin As Byte = 3 'nombre maxi autorisé de tentative de connexion
     
    Private Sub cmdValid_Click()
    On Error GoTo errortag
       Dim oDb As DAO.Database
       Dim rst As DAO.Recordset
       Dim sSql As String
       Dim bBadLogin As Boolean, bClose As Boolean
       Static i As Byte
     
       i = i + 1 'incrémente les tentatives
     
       If IsNull(Me.Login) Or IsNull(Me.Password) Then
          bBadLogin = True
       Else
          Set oDb = CurrentDb
          ' Cherche l'utilisateur dans la table, en sachant que login ne peut contenir le caractère <'> ni <">
     sSql = "SELECT * FROM Personnel WHERE Autorisation = true AND Nom = '" & Me.Login & "'"  'ici "Autorisation" correspond à un droit d'acces
          Set rst = oDb.OpenRecordset(sSql, dbOpenSnapshot)
          If Not rst.EOF Then
          ' Vérifier que le mot de passe est égal au mot de passe saisie crypté
          If rst("password") = Me.Password Then 'Mot de passe ok
                i = 0
                bBadLogin = False
             Else 'Mot de passe incorrect
                bBadLogin = True
             End If
          Else ' pas de login trouvé
             bBadLogin = True
          End If
       End If
       If bBadLogin = True Then 'si tentative mauvaise
          If i < giMaxLogin Then 'si nb tentative < au maxi
             MsgBox "NOM D'UTILISATEUR OU MOT DE PASSE ERRONE" & vbCrLf & "IL VOUS RESTE " & (giMaxLogin - i) & " TENTATIVE(S) DE CONNECTION"
          Else 'si nb tentative >= maxi => on ferme
             MsgBox "VOUS AVEZ DEPASSE LE NOMBRE DE TENTATIVES AUTORISEES !"
             bClose = True
          End If
       End If
    fin:
       Set rst = Nothing
       Set oDb = Nothing
       If bBadLogin = False Then
          DoCmd.OpenForm "Administrateur"
          DoCmd.Close acForm, Me.Name
       ElseIf bClose = True Then
          DoCmd.Close acForm, Me.Name
       End If
       Exit Sub
    errortag:   ' Mon traitement des erreurs
    End Sub
    dans ce script c'est le champ "autorisation" de la table de reference (un champ OUI/NON) qui est controle.
    Il te suffit de rajouter dans la table 2 voire 3 autres domaines...
    tiens nous au courant !

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/06/2009, 17h01
  2. création comptes utilisateurs
    Par alouha dans le forum Ubuntu
    Réponses: 3
    Dernier message: 12/11/2008, 16h30
  3. Création compte utilisateur limité
    Par kikoo_of_dijon dans le forum Debian
    Réponses: 1
    Dernier message: 21/09/2007, 21h09
  4. [LDAP] Erreur création compte utilisateur
    Par nesbla dans le forum API standards et tierces
    Réponses: 9
    Dernier message: 09/10/2006, 17h27
  5. [C#] Création compte utilisateur FTP
    Par slopera dans le forum Windows Forms
    Réponses: 8
    Dernier message: 29/03/2006, 10h34

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