Étape 1 sur 5 · environ 30 min

Préparez deux propriétaires avant d'ajouter la règle

Le champ user_id enregistre déjà un propriétaire, mais il ne filtre encore aucun enregistrement. Créez une note avec chacun des deux utilisateurs internes pour observer concrètement cet accès trop large.

1. Utilisez Alex comme premier utilisateur

Votre compte actuel sera Alex dans ce parcours. Si son nom affiché est différent dans votre base d'exercice, gardez tout de même le préfixe Alex dans les titres demandés : vous reconnaîtrez ainsi immédiatement l'identité utilisée pour chaque création.

Alex est déjà un utilisateur interne. Vérifiez aussi qu'il possède le groupe Training Notes User créé dans l'exercice de la section 1 : c'est maintenant le groupe ciblé par l'ACL de training.note.

2. Réutilisez Sam comme deuxième utilisateur

Sam Formation a été créé dans l'exercice de la section 1. Vérifiez ses droits avant de poursuivre :

  • Nom : Sam Formation ;
  • Type d'utilisateur : Utilisateur interne ;
  • Groupe : Training Notes User.

Connectez-vous une fois comme Sam pour confirmer que son compte fonctionne. Ne réutilisez aucun mot de passe réel et ne placez ce secret ni dans le module, ni dans une commande enregistrée, ni dans ce support.

Pourquoi les deux comptes reçoivent-ils l'ACL ?

Alex et Sam appartiennent tous les deux à Training Notes User. L'ACL du journal accorde à ce groupe la création, la lecture, la modification et la suppression sur training.note. Elle ne choisit toutefois pas quelles notes chaque membre peut atteindre.

3. Créez une note avec Alex

Connectez-vous comme Alex, puis ouvrez Notes de formation → Notes. Créez et enregistrez une note qui porte exactement ce titre :

Titre saisi dans la fiche standard
Alex · visible avant la règle

Le formulaire n'envoie pas de propriétaire choisi par le navigateur. Le modèle utilise donc son défaut : l'identifiant d'Alex depuis env.user.

4. Créez une note avec Sam

Déconnectez Alex, puis connectez-vous comme Sam. Ouvrez le même menu. Avant de créer quoi que ce soit, repérez Alex · visible avant la règle dans la liste : Sam peut encore lire cette note.

Créez ensuite une deuxième note et enregistrez-la :

Titre saisi dans la fiche standard
Sam · visible avant la règle

Comme le formulaire ne fournit pas user_id, le défaut attribue cette seconde note à Sam à partir de son propre env.user. Revenez à la liste : les deux titres y apparaissent malgré leurs propriétaires différents.

5. Confirmez l'accès encore trop large

Reconnectez-vous comme Alex et rouvrez la liste. Alex voit lui aussi les deux notes. Conservez-les : elles fourniront le repère avant/après de l'étape suivante.

Un champ ne constitue pas une règle de sécurité

user_id contient une donnée correcte sur chaque note, mais l'ACL ouvre encore le modèle entier aux membres de Training Notes User. Tant qu'aucune règle sur les enregistrements n'utilise le propriétaire comme condition, Alex et Sam peuvent tous deux retrouver les deux notes.

Point de contrôle — observez les deux listes

Dans la session de Sam, puis dans celle d'Alex, la liste contient Alex · visible avant la règle et Sam · visible avant la règle. Les deux créations ont des propriétaires distincts, mais aucun filtrage par propriétaire n'est encore actif.