Recherche rapide : Avancée

 

Vous êtes ici : Accueil > Articles > Protéger l'accès à certaines pages

Protéger l'accès à certaines pages

Nous allons voir dans ce tutorial comment protéger facilement une arborescence de pages dans TYPO3.

Les pages que nous souhaitons protéger l'accès nécessiterons la saisie d'un login/mot de passe pour être visualisées. Ces pages étant en "frontend" (c'est à dire la partie visible de votre site, à l'opposé du backend), il faudra tout d'abord créer les permissions nécessaires. Pour ce faire, vous devez créer des comptes d'utilisateurs. Comme sur Unix, un utilisateur fait partie d'un groupe. Les rêgles en lecture, écriture et executions s'appliquent de la même façon.

1. Créer un utilisateur et un groupe

Vous devez tout d'abord créer un dossier système pour centraliser les groupes et les utilisateurs. Créez ensuite dans ce dossier un groupe web et un utilisateur lambda. Rien de particulier dans cette étape. Créez le groupe, l'utilisateur ensuite et rattacher ce dernier au groupe créé. Voici un aperçu de mon dossier système "Users" :

Vous devez ensuite créer une page d'accueil vers laquelle seront redirigés les utilisateurs après validation de leurs identifiants. Ce n'est évidemment pas obligatoire mais c'est quand même préférable, histoire de leur montrer que l'identification est réussie.

2. Création des pages protégées

Ma page s'appelle "Accueil privé" et il s'agit d'une simple page, à une exception près. Dans les options générales, tout en bas de l'entête de page, j'ai sélectionné mon groupe d'utilisateurs. Vous voyez que c'est plus pratique de rattacher des utilisateurs à un groupe, plutôt que de rattacher tous les utilisateurs dans ce formulaire :) N'oubliez pas de cocher la case "Inclure les sous pages" afin d'éviter de saisir les mêmes options de configuration de groupe d'accès pour les pages situées en dessous de notre page d'accueil.

Vous remarquerez que l'aspect de notre page est différent dans l'arborescence.

Si vous passez votre souris sur cette page, une info bulle apparaitra. Comme vous le voyez ci-dessous, elle comporte l'id de la page et le nom du groupe d'utilisateurs FE (Frontend).

Nous avons également créé une page de login. Voici la procédure.

3. Créer une page pour se connecter

Créez une nouvelle page de type "Hors menu" puis insérez une plugin de type "Formulaire d'identification". Indiquez votre page d'accueil sécurisé dans la partie "Envoyer à la page".

Voici l'aperçu de notre page en FE  :

On tente une connexion ? Non, pas encore... Votre gabarit ne connait pas l'endroit où vous stockez vos groupes et vos utilisateurs. On va donc lui indiquer l'emplacement de notre dossier système "Users".

4. Déclarer dans votre gabarit le dossier de stockage des utilisateurs

Cliquez sur template -> Page racine de votre site -> Constant Editor dans la liste déroulante

Renseignez tout en bas l'id de votre dossier système.

Vider vos caches et renseignez vos identifiants dans la boite de login. Si vous revenez sur la page de login, un bouton "Logout" apparaitra.

C'est la preuve que vous êtes connecté ! Vous pouvez également accéder à vos pages protégées. D'ailleurs, petite remarque quand vous êtes connecté. Dans les entêtes de chaque page, options générales, vous avez l'option "Cacher à la connexion". Cette dernière permet de désactiver l'accès à certaines pages après votre connexion. En effet, il serait par exemple superflu d'afficher la page Log-In dans l'arborescence alors que vous êtes déjà connecté. Je vous laisse trouver d'autres raisons :)

Les derniers articles à consulter :

Réduire les options du menu contextuel
Quelques options à placer dans le TS config d'un groupe pour alléger les options disponibles dans les menus contextuels