Home Map
Rechercher

Les tickets d'accès

Un ticket d'accès est une clef  temporaire qui permet un accès à certaines pages pour diverses raisons en dehors du déroulement d'une session interactive "normale". On trouve deux cas d'utilisation principaux des tickets :

  • Un administrateur ou une personne "autorisée" désire faire accéder un utilisateur particulier sur une page particulière à travers les systèmes standard d'authentification (par exemple, une administrateur veut montrer une page contextuelle d'un espace protégé à une tierce personnes).
  • Une notification permet d'accéder contextuellement à une page protégée sans passer par la procédure standard d'accès à la plate-formes.

Fonctionnement des tickets

Un ticket est une clef cryptée (un "mot" MD5), donné à l'utilisateur (qui accédera à la ressource). L'utilisateur peut alors présenter le ticket à une porte spécialisée : "ticketGate.php", laquelle peut déterminer :

  • Le compte utilisateur qui peut être utilisé pour visualiser la ressource.
  • L'URL exacte de la ressource, paramètres inclus
  • L'obsolescence du ticket.

La porte de réception des tickets effectue un contrôle du ticket et provoque une redirection vers la ressource associée, en joignant le ticket.

A l'entrée de la ressource associée :

  • Si celle-ci est en zone publique (chargeur non sécurisé "page.php") la ressource est montrée "en contexte", comme les paramètres fournis le demandent.
  • Si celle-ci est en zone protégée (chargeur de page sécurisé "spage.php"), la ressource vérifie à nouveau la validité du ticket et logue dans le compte utilisateur désigné.

Notes 

La présentation d'un ticket ne signifie pas un accès "non contrôlé". En effet, les pages sécurisées sont soumises à une vérification d'accès sur la base du propriétaire de la session courante et de ses rôles. Accéder à une page hors du volume autorisé d'un utilisateur montrera cette page, mais interdira probablement l'utilisation de tout lien hors contrôle de cette page.

Implémentation

Modèle de base de données

Les tickets sont stockés en base de données selon le modèle qui suit. Les tickets sont générés en base pour pouvoir y demeurer un certain temps. Les tickets deviennent automatiquement obsolètes, même si leur enregistrement demeure dans la base de données.

Table "<prefix>_ticket"

Id varchar(64) : Identifiant primaire
emissionDate datetime  : Date d'émission
expirationDate datetime : Date de caducité du ticket
owner varchar(16) : Compte propriétaire du ticket. Une session est 
                    ouverte sur ce compte lors de la présentation du ticket
service varchar(16) : Mémorisation du service de notification qui a 
                             émis le ticket
forUrl varchar(255) : Url cible pour laquelle le ticket est émis.

 
Portlets   
Librairies   
Composants   
Requetes   
Tickets d\'accès   
Interactivité :   Donations    Nouvelles du site    Le mot du Webmaster    Livres d'or    Les Blogs    Defauts   
 
Galleries Hupka Michel-Ange Expositions Librairie Vidéos Presse Livres d'or Realisation Découvertes