CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[PHP] Sécuritée de session

Lindows
Lindows
Niveau 8
31 mars 2012 à 08:21:37

Bonjour, je suis en train de me faire un site et pour l'espace membre j'utilise les sessions PHP.
Mais je me demandais si c'était réellement sécurisé, lors d'une connexion le grade et pseudo de l'utilisateur sont stockés en $_SESSION
mais ma question est, peut-on modifier les données de session, par exemple le grade, en touchant les cookies ?
Car l'accès au page d'administration n'est bloqué que par une vérification du grade, alors si un utilisateur change son grade d'user à admin ça foire tout :(

Merci de votre aide, j'espère avoir été assez clair dans mes explications

Thymotep
Thymotep
Niveau 10
31 mars 2012 à 09:51:36

Je ne suis pas sûr d'avoir compris, mais tu peux mettre à jour la session, au moment où il change de grade tu fais un $_SESSION['user'] = 'nouveaugrade'; et il ne devrait pas y avoir de soucis ?

vava740
vava740
Niveau 10
31 mars 2012 à 10:18:05

Si on pouvait modifier les infos du $_SESSION en touchant aux cookies ça n'aurait aucun intérêt, on utiliserait que les cookies et point barre :noel:

Le $_SESSION stocke un unique cookie, qui est l'identifiant de session. Une fois ton utilisateur connecté et que tu as instauré le session_start(), ton utilisateur à cet unique identifiant en cookie. Si il désactive les cookies ça passe en paramètre d'URL.

Tout ce qui est dans le $_SESSION est sur ton serveur, l'utilisateur ne peut rien toucher, il peut juste supprimer le cookie de session.

Mais l'identifiant de session de chaque utilisateur est pas statique, un même utilisateur aura un identifiant différent si il se connecte depuis un autre PC ou un autre navigateur, ou si il supprime le cookie de session.

L'utilisation des session te permettra de savoir quel utilisateur identifié est sur la page d'administration, et de le rediriger si il n'est pas autorisé. Mais pour l'identification, et le grade, tu dois utiliser une base de donnée ; ton utilisateur se connecte avec pseudo et mdp, tu vas donc vérifier si ce qu'il a rentré colle avec une entrée de ta BDD utilisateurs, puis tu stocke la clé primaire de l'utilisateur en question dans le $_SESSION. Tu sauras donc sur les autres pages où il va que c'est bien cet utilisateur. Et sur une page admin, tu vérifie donc dans la base de donnée que l'utilisateur identifié a bien le grade admin, et là il peut rentrer :ok:

Après, comme Thymotep, je suis pas sûr d'avoir vraiment compris ce que tu veux faire et comment tu as organisé ton site (tu as pas évoqué de base de donnée donc c'est pour ça que je t'en parles)...

Thymotep
Thymotep
Niveau 10
31 mars 2012 à 10:24:16

vava740 :d) Les sessions sont liés au navigateur, pas au serveur :-))) Ce qui change tout !

vava740
vava740
Niveau 10
31 mars 2012 à 11:24:35

Oui exactement ! C'est pour ça que je dis "un même utilisateur aura un identifiant différent si il se connecte depuis un autre PC ou un autre navigateur" - d'où ma suggestion de BDD pour identifier clairement chaque utilisateur :noel:

Ce que je voulais dire par rapport au serveur, c'est que hormis l'identifiant, toutes les données de session liées à cet identifiant sont stockées sur le serveur donc impossible pour le client de modifier de quelque façon son $_SESSION['grade'] !

Lindows
Lindows
Niveau 8
31 mars 2012 à 14:36:14

Désolé de mon post qui est assez confus je l'accorde, mais c'est bien ce que je voulais savoir :-)
Donc le cookies de session est une clé unique et les données sont bien côtés serveur, donc l'utilisateur ne peut rien toucher.
Merci beaucoup, et oui j'utilise bien une BDD :-)

Pseudo supprimé
Pseudo supprimé 31 mars 2012 à 19:35:06

Si tu veux être sûr de la sécurité des sessions, stocke donc l'ip ( avec vérification ).

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment