|
|
nov
27
2006
|
Design patterns pour renforcer la sécurité de votre site de commerce électronique |
|
|
|
Conception -
Patterns
|
|
Ecrit par Kamal AOUDA
|
|
27-11-2006 |
|
Une pratique courante dans les entreprises consiste à reporter la
sécurisation des sites de commerce électronique à la fin du cycle de
développement. En d’autres termes, on attend que la construction du site soit
terminée pour lui ajouter à la sauvette des modules de sécurité de manière
préventive ou de façon réactive lorsqu’un incident se produit après la mise en
service du site.
Les expériences douloureuses de plusieurs entreprises montrent que cette
pratique est condamnable car elle augmente le risque de piratage du site. Dans
un domaine aussi sensible que le commerce électronique on ne peut pas se
permettre d’effectuer des patchages au fur et à mesure de la survenance de
nouveaux incidents. La sécurité doit faire partie intégrante des besoins
exprimés par la maîtrise d’ouvrage, et ce, dès les premières phases du projet.
Dans cet article nous décrivons des design patterns dont l’application devrait
permettre de sécuriser davantage votre site de commerce électronique. Leur
adoption pourrait nécessiter une révision totale de l’architecture de votre
site.
Les patterns en question sont inspirés d’une étude réalisée par des chercheurs
des Université de Towson et du Texas. Vous trouverez un résumé de cette étude
sur le site d’IEEE à l’adresse :
http://ieeexplore.ieee.org/iel5/10451/33175/01563159.pdf?arnumber=1563159
(anglais seulement)
Dans l’étude en question les auteurs proposent 7 design patterns pour améliorer
la sécurité d’un site de commerce électronique :
1. Un seul point d’entrée vers toutes les pages du site : en limitant le nombre
de points d’entrée on a plus de contrôle sur les flux entrants et on centralise
le processus de collecte et de validation des informations.
2. Authentification et autorisation : la sécurité d’un site de commerce
électronique devrait en majeure partie reposer sur deux contrôles de base à
savoir l’authentification et l’autorisation. L’authentification permet de
vérifier si la personne est bien celle qu’elle prétend être. L’autorisation
confère à une personne préalablement authentifiée le droit d’effectuer une
opération ou d’accéder à une ressource privée (l’authentification et
l’autorisation sont donc deux opérations indissociables).
3. Les rôles : il est très important que chaque utilisateur du site de commerce
électronique fasse partie d’un groupe et hérite des mêmes restrictions et
privilèges associés à ce groupe.
4. Session : toutes les interactions entre un utilisateur et un site doivent se
faire dans le cadre d’une session. La session commence lorsque l’utilisateur se
connecte au site. Elle englobe de ce fait toutes les données saisies ou générées
entre le début et la fin de la connexion (UserID, mot de passe, droits d’accès
…).
5. Rétroaction : au terme de chaque interaction avec le site, l’utilisateur doit
être en mesure de vérifier sa validité (par exemple si l’utilisateur effectue
une opération non autorisée il faut l’informer à l’aide d’un message d’erreur).
6. Vue limitée : un utilisateur ne peut voir que les informations qu’il est
autorisé à voir en vertu de la politique de sécurité (lapalissade).
7. Couche d’accès sécurisée : il ne faut pas inventer vos propres mécanismes de
sécurité. Utilisez plutôt les mécanismes de sécurité déjà intégrés à votre
environnement matériel et logiciel (Authentification intégrée au système
d’exploitation, au gestionnaire de base de données, au serveur web …).
Ci-dessous un diagramme de classe qui montre comment ces différents patterns
devraient s’intégrer à votre site de commerce électronique :
Cliquez sur la figure pour l'agrandir

Kamal AOUDA
http://www.kamalaouda.com
Ecommerce DEV
|
|
Dernière mise à jour : ( 27-11-2006 )
|
|
|