|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre éclairé
![]() Développeur Sharepoint/Biztalk Inscription : octobre 2008 Messages : 503 ![]() |
Bonjour,
Voilà ca fait un petit moment que je créé des petits sites web perso en loisir ... mais là je veux créer un site avec un espace membre. Reprendre des scripts d'espace membre sur le net ne m'intéresse pas alors je m'interroge. J'ai créé le site ainsi que la zone membre (inscription, connexion, deconnexion). Le tout se fait en $_SESSION : - L'inscription fait un insert dans la BDD, tout simple, - La connexxion vérifie que l'utilisateur existe (vérification avec login + mdp), et stocke l'ID et le login dans une session. Ensuite sur tout le site, je regarde si ces variables sont pas vides pour dire que la personne est pas connecté. - La déconnexion remet toutes les sessions à vide. Cependant ca me semble un peu light comme vérif ... non ? Via l'url, est-il possible d'entrer un code php qui modifie cette session ? Après c'est un site qui n'aura pas 50.000 visiteurs par jour non plus, le risque de hack est minime mais bon, quitte à commencer, autant tout faire. De plus, les sessions c'est jolies .. mais lorsque l'utilisateur va quitter le navigateur, il sera deconncté à son retour. J'ai vu que certaines métohdes utilisent les cookies poru stocker la variable (j'imagine qu'à l'ouverture d'une page, on vérifie le contenu de ce cookies ?) .. mais y a t-il un moyen plus simple en php pour sauvegarder les sessions ? Merci ! |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Demazy MbellaDéveloppeur Web Inscription : août 2010 Messages : 620 ![]() |
je pense que la méthode que tu utilises est la méthode conventionnel pour l'authentification et les sessions. Maintenant pour ce qui concerne les cookies c'est un peut délicat car présente beaucoup de problème de sécurité. en général on combine les deux méthodes : Cookie et Session pour être plus rigoureux; et en général dans les cookies on conserve les informations peux sensibles.
Maintenant je te conseille de bien te documenter sur ce qui concerne la sécurité, les sessions et les cookies afin que tu saches à quoi chacun sert et dans quel cas les utiliser. voici des liens qui me semble pertinents : http://julien-pauli.developpez.com/t...-web-securite/ http://g-rossolini.developpez.com/tu...uces-securite/ http://matthieu.developpez.com/authentification/ http://php.developpez.com/cours/sessions/ http://a-pellegrini.developpez.com/t...hp/session-db/ la dedans tu trouveras toutes les informations dont tu auras besoins pour les sessions, la sécurité avec PHP, les cookies et les failles sécurité les plus connues en espérant t'avoir aidé
__________________
Trois personnes peuvent garder un secret si deux d'entre elles sont mortes. :Benjamin FranklinL'humanité se divise en trois catégories : ceux qui ne peuvent pas bouger, ceux qui peuvent bouger, et ceux qui bougent : Benjamin FranklinLe hasard, c'est le déguisement que prend Dieu pour voyager incognito : Albert Einsteinbon je m'arrête là au risque de me faire buter
|
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() Développeur Sharepoint/Biztalk Inscription : octobre 2008 Messages : 503 ![]() |
Merci bien. En effet je vais lire un peu tout ca, j'avais vu quelques articles sur la sécurité, mais je m'y étais jamais vraiment pencher dessus.
Apriori le mieux est de faire la navigation tout en session, et utilisé le cookie pour stocker une ou deux infos sur l'ordi afin de pouvoir réouvrir une session .. Je vais étudier tout ca, et la faisabilité avec mes compétences |
|
|
00
|
|
|
#4 | |
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 729 ![]() |
Citation:
Le principe des sessions par défaut repose déjà sur un cookie. Aussi, si un utilisateur ferme son navigateur, tous les cookies seront détruis car c'est le comportement de quasi tous le navigateurs par défaut. Du coup une ré-identification devra quand même se faire. De plus, tous les navigateurs (cela depuis bien longtemps) permettent de mémoriser des login/mots de passes. Ceci fait qu'une simple saisie d'un ou deux caractères du login, le navigateur proposera automatiquement d'exploiter le login/pass précédemment enregistré. Par ailleurs, faire en sorte de ré-identifier automatiquement un utilisateur car il aurait été identifié il y a une heure avant voir la veille, on favorise/facilite quelque part une usurpation d'identité. Imagine un instant que la personne ne soit plus la même sur ce même post/PC ? Si une personne c'est déconnecté, il est préférable quelle se ré-identifie elle même. Du moins je pense que c'est mieux ainsi. (c'est entre autre pour cela que par défaut les navigateurs ont opté pour une suppression automatique des cookies lors de leur fermeture).
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] |
|
|
|
00
|
|
|
#5 |
|
Membre éclairé
![]() Développeur Sharepoint/Biztalk Inscription : octobre 2008 Messages : 503 ![]() |
Merci pour tes informations.
Cependant je comprend le problème d'usurpation d'identité ... mais si l'utilisateur se connecte 20 fois par jour, il devra mettre "Connecté" 20 fois aussi .. je pense que l'un dans l'autre, je préfère prendre le risque de l'usurpation d'identité (bien que mon site ne contient aucune informations très importante sur les utilisateurs, juste prénom, pseudo, age, ...). Tous les sites que je connais, garde en mémoire les sessions (ou du moins les informations de l'utilisateur) pour se connecter. Je vais me pencher sur la question en tout cas
|
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 729 ![]() |
Citation:
Mais se que tu n'as peut être pas compris ou perçu, c'est que le mécanisme (par défaut) des sessions repose sur un cookie (on parle alors de cookie de session). Regarde d'ailleurs dans tes cookies de ton navigateur, tu devrais voir celui correspondant à ce forum. Il y en même une flopée : 12 de mon coté actuellement. - Si l'utilisateur est identifié, puis juste après (moins de 10 minutes par exemple) il ferme son navigateur et bien il sera obligé de se ré-identifier. Fait un essai sur ce forum tu devrais le remarquer, même en cochant : "se souvenir de moi". Pourquoi ? - Par ce que les cookies (y compris le cookie de session) sont automatiquement détruit à la fermeture du navigateur (mais pas si on ferme un onglet). C'est le comportement par défaut de tous les navigateurs.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com