Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Mot de passe alphanumérique
A l'occasion d'une récente
astuce, nous avons appris Ã
contrôler la saisie dans des
champs de table Access. L'objectif était d'autoriser l'inscription des
lettres de l'alphabet et d'interdire la
saisie des chiffres. Et pour cela, nous avions exploité les
expressions régulières dans des
règles de validité.
Désormais, l'enjeu consiste à n'autoriser les
mots de passe que lorsqu'ils sont
alphanumériques. En d'autres termes, ils doivent proposer à la fois des lettres de l'alphabet et des chiffres. Nous souhaitons que ces mots de passe soient codés sur cinq caractères, ni plus ni moins. Et ce sont encore les
expressions régulières qui sont à l'honneur.
Base de données source
Pour la mise en place de cette nouvelle
astuce, nous suggérons de réceptionner des
données hébergées dans une
base existante.
- Télécharger le fichier compressé mot-de-passe-alphanumerique.rar en cliquant sur ce lien,
- Le décompresser dans le dossier de votre choix,
- Double cliquer sur la base de données résultante pour l'ouvrir dans Access,
- Puis, cliquer sur le bouton Activer le contenu du bandeau de sécurité,
- Dès lors, dans le volet de navigation, double cliquer sur la table Utilisateurs,
De cette manière, nous affichons cette unique
table en mode
Feuille de données.
C'est le dernier champ de cette
table qui retient toute notre attention. Il se nomme
U_mp et concerne naturellement l'inscription des
mots de passe pour chaque utilisateur. A ce stade, aucun d'entre eux n'est conforme. Ils sont composés soit exclusivement de chiffres soit exclusivement de lettres. Nous devons donc stopper l'hémorragie pour les inscriptions à venir.
Des chiffres et des lettres
Nous l'avons évoqué, c'est une
règle de validité exploitant les
expressions régulières qui doit se charger de ce contrôle. Ce contrôle s'effectue une fois la saisie validée. C'est la raison pour laquelle, tous les anciens
mots de passe seront conservés malgré leur non-conformité, à moins d'être corrigés. Tous les nouveaux ne pourront plus voir le jour s'ils ne respectent pas des normes strictes que nous allons imposer.
- A gauche du ruban Accueil, cliquer sur le bouton Affichage,
De cette manière, nous basculons dans la vue en conception de la
table.
- Cliquer sur le champ U_id pour le sélectionner,
Il s'agit du
champ de l'identifiant. Nous allons pouvoir nous inspirer du contrôle qui le régit. Vous pouvez consulter sa syntaxe en bas de la
fenêtre Access, dans sa
propriété Valide si :
Comme '[0-9][0-9][0-9][0-9][0-9][0-9]*' Et Pas Comme '*[a-zA-Z]*'
La syntaxe entre crochets : 0-9, impose la saisie d'un chiffre compris entre 0 et 9. Comme ce code est répété à cinq reprises, l'
identifiant doit nécessairement commencer par
cinq chiffres. Mais pour ne pas limiter cette création à cinq caractères, nous faisons suivre l'expression du symbole de l'astérisque. Celui-ci autorise tout. Donc, dans le même temps, nous cherchons à vérifier qu'il n'existe aucune
lettre de l'alphabet isolée *[a-zA-Z]*. Cette énumération encadrée d'astérisques interdit toute
lettre de l'alphabet. Donc, la construction de l'
identifiant peut se poursuivre au-delà de cinq caractères, nécessairement avec des chiffres.
Pour notre
mot de passe alphanumérique codé sur cinq caractères, le principe de construction est assez similaire. Nous devons autoriser toute lettre et tout chiffre sur cinq caractères. Mais ce n'est pas tout et nous allons comprendre pourquoi.
- Cliquer sur le champ U_mp pour le sélectionner,
- Dans sa propriété Valide Si, construire l'expression suivante :
Comme '[a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9]'
Ainsi donc et sur les cinq premiers caractères, nous autorisons toute
lettre de l'alphabet, quelle soit en minuscule (a-z) ou en majuscule (A-Z) ainsi que tout
chiffre (0-9). Mais autoriser ne signifie pas interdire l'absence de lettres ou l'absence de chiffres. Avec une telle syntaxe, l'utilisateur peut créer un
mot de passe intégralement
numérique ou encore un mot de passe complètement
alphabétique. Nous devons donc compléter cette expression pour interdire d'une part la saisie successive de cinq lettres et d'autre par la saisie successive de cinq chiffres.
- A la suite de l'expression et après un espace, ajouter la syntaxe suivante :
Et Pas Comme '[0-9][0-9][0-9][0-9][0-9]'
Comme nous le disions et dans le même temps, nous n'autorisons pas la saisie de 5 chiffres successifs sans présence d'une lettre de l'alphabet.
- A la suite de la syntaxe et après un espace, ajouter l'expression suivante :
Et Pas Comme '[a-zA-Z][a-zA-Z][a-zA-Z][a-zA-Z][a-zA-Z]'
De la même manière, nous n'autorisons pas la succession de cinq lettres de l'alphabet sans la présence d'au moins un chiffre.
- Enregistrer les modifications avec le raccourci clavier CTRL + S,
Une alerte surgit. Elle est tout à fait naturelle. Elle indique que des données antérieurement inscrites pourraient ne plus être conformes. Et c'est le cas, nous l'avons évoqué en préambule de cette formation.
- Valider cette alerte et celle qui suit en cliquant sur le bouton Oui,
- Dans la zone Message si erreur, taper l'indication suivante :
Le mot depasse doit nécessairement proposer des chiffres et des lettres sur 5 caractères.
Ainsi, en cas d'inscription non conforme, l'utilisateur saura comment corriger.
- Enregistrer de nouveau puis cliquer sur le bouton Affichage à gauche du ruban Création,
Si vous tapez un
mot de passe composé de lettres et de chiffres sur moins de cinq caractères, l'inscription est refusée et l'alerte surgit. Si vous tapez un
mot de passe de cinq caractères mais sans chiffre, la saisie est refusée. Si vous tapez un
mot de passe de cinq caractères mais composé uniquement de chiffres, la saisie est interdite. Si vous tapez un
mot de passe de cinq caractères offrant des
chiffres et des lettres, l'inscription est acceptée. Nous avons donc trouvé l'
astuce pour valider la
création d'un mot de passe nécessairement
alphanumérique et codé sur un nombre précis de caractères.