Activer la vérification des droits côté client

Définition

Avec Automne on peut distinguer les sites web qui possèdent une vérification des droits côté client (partie publique) et ceux qui n'en ont pas l'utilité.

Plus simplement vous pouvez distinguer deux aspect :

  • Les visiteurs de votre site peuvent voir tout le contenu publié (cas d'un site Internet classique).
  • Les visiteurs de votre site ne peuvent pas voir tout le contenu publié sur le site (cas d'un site Intranet ou Extranet par exemple) et vous souhaitez pouvoir donner accès à certaines informations du site à quelques personnes seulement en fonction de leurs droits.

Cette distinction est réalisée sous Automne grâce au paramètre "Activer la vérification des droits coté client". Ce paramètre peut être configuré via l'interface "Paramètres Automne", dont le lien est présent dans le panneau latéral de l'administration Automne, sous l'onglet Administration.

Onglet Administration

Paramètre Activation des droits côté client

Nous vous conseillons dès le début de votre projet de définir s'il sera nécessaire de pouvoir distinguer les utilisateurs selon leurs droits, et donc d'avoir un formulaire d'authentification sur la partie publique de votre site. Si c'est le cas, alors il faut activer le paramètre "Activer la vérification des droits coté client".

Formulaire d'authentification

L'activation du paramètre "Activer la vérification des droits coté client" peut modifier notablement la façon de développer et d'administrer votre site.
C'est donc une décision qui doit être réfléchie et que les développeurs devront prendre en compte.

Le chapitre "Aspects techniques" (ci-dessous) détaille plus précisément comment Automne met en place la vérification des droits.

 

Les sites sans vérifications des droits côté client

Le paramètre "Activer la vérification des droits coté client" ne doit pas être activé.

Sur votre site public tout visiteur potentiel ne peut être identifié car le site ne propose pas de moyen d'authentification (par exemple un formulaire d'authentification).

De ce fait, Automne ne peut distinguer les utilisateurs et les droits ne sont donc pas vérifiés. Par défaut, tout utilisateur a donc accès à toutes les ressources qui sont publiées sur les sites.

 

Les sites avec vérification des droits côté client

Le paramètre "Activer la vérification des droits coté client" est activé.
Sur votre site public tout visiteur est maintenant identifié par défaut comme étant le visiteur "Public user" (Identifiant "anonymous", ID 3).

Tant que le visiteur ne s'est pas authentifié avec son compte utilisateur, il possède donc les droits définis pour l'utilisateur "Public user".

Attention lors de la définition des droits de l'utilisateur "Public User" car vous pouvez donner des droits trop restreints ou trop larges à des utilisateurs non authentifiés sur votre site.

Si vous rencontrez des problèmes d'accès à certaines données sur votre site lorsque vous n'êtes pas identifié, c'est au niveau de l'utilisateur "Public User" que vous devez vérifier les droits d'accès.

Si le visiteur s'authentifie, par exemple avec un formulaire d'authentification créé à l'aide du module formulaire, il possèdera alors les droits qui sont attribués à son compte.

 

Aspects techniques

Le paramètre "Activer la vérification des droits coté client" correspond à la constante APPLICATION_ENFORCES_ACCESS_CONTROL.
Lorsque cette constante renvoie vrai, c'est que le paramètre est activé.

Activer ou désactiver ce paramètre nécessite de régénérer l'ensemble du site pour que le cache des pages du site soit recréé avec les codes nécessaires à la vérification des droits des visiteurs.

Lorsque ce paramètre est actif, chaque affichage de lien de page, chaque affichage d'un élément de module entraine la vérification du droit correspondant pour l'utilisateur actuel.

Ce paramètre a donc un impact sur les performances générales de votre site et il est donc recommandé de ne l'activer qu'en cas de besoin réel.

 

Côté PHP, un objet utilisateur (CMS_profile_user) est automatiquement créé via la variable $cms_user.

Avec le paramètre "débuggage du sytème" activé, vous pouvez afficher les informations de l'utilisateur actuel sur une page du site avec ce code :

<?php
pr($cms_user);
?>

 

En savoir plus :

Pour plus d'information à ce sujet, n'hésitez pas à consulter le forum.

Page précédente



Haut