IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Identification et sécurisation d'un back office [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2011
    Messages : 12
    Par défaut Identification et sécurisation d'un back office
    Bonjour,

    Je souhaite mettre en place un système de back office pour un site. Cependant, je me demande comment en sécuriser l'accès. J'ai déjà créé le formulaire de connexion avec un captcha (+ pseudo et mdp).

    Mais je n'arrive pas à imaginer un système simple qui permette de sécuriser l'ensemble:
    - Est-ce mieux d'utiliser les sessions ou les cookies ?
    - Quelle est la procédure à mettre en place pour identifier une personne (avec les infos en bdd) ? -
    - Quelles informations stocker ?
    - Comment sécuriser l'accès des autres pages du back office ?
    - Si un admin quitte le site et qu'il y revient, comment vérifier que c'est lui sans lui redemander ses identifiants ?

    Merci d'avance pour vos réponses.

  2. #2
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    Fait des recherche sur ne Net concernant une sécurisation/authentification avec le couple .htaccess et .htpasswd, c'est à mon sens nettement plus sécurisé que les sessions/cookie.

    Il y a énormément d'infos, des tutos, etc ...

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Par défaut
    Salut, pour sécuriser tes pages, un bon moyen c'est d'utiliser les sessions php.
    Dans les grandes lignes,
    Pour les informations à mémoriser, tout dépend des infos que tu as mis ds ta db pour l'utilisateur, mais en général on mémorise l'id de l'utilisateur, le niveau de privilège et parfois le nom d'utilisateur si besoin, dans des variables de session.
    Ensuite sur chaque page à sécuriser, tu peux mettre tout au début, un code qui vérifie si les variables de session existent, sinon tu rediriges vers ta page de connexion.Si tu fermes le navigateur, tu perds les infos de session et donc ta connexion, à moins que tu n'aies enregistré de manière permanente les données des cookies de session.Pour éviter les risques dus à une situation où tu laisses le navigateur ouvert sur ta session, tu peux aussi inclure, un test , qui vérifie l'heure à laquelle la session a été ouverte, et ainsi définir un temps de session max en utilisation.

    Alpha.

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2011
    Messages : 12
    Par défaut
    Merci pour vos réponses.

    En fait, je pensais créer un cookie contenant une chaine aléatoire. Cette chaine, je l'enregistre dans une table, associée à l'id du membre, son pseudo, son ip et son heure de connexion.

    A chaque chargement d'une page, je vérifie que le cookie existe. Si c'est le cas, je le renouvelle pour 72h après avoir vérifié que les infos sont cohérentes.

    S'il ne revient pas pendant plus de 72h, le cookie est périmé et il doit se reconnecter.

    Par contre s'il n'a pas coché la cache "se souvenir de moi", je crée une session qui contient exactement la même chose et qui elle, se supprime à la fermeture du navigateur.

    Vous en pensez quoi ?

    Ce que je ne comprends pas, c'est pourquoi il y a autant de données stockées en cookie sur developpez.net Tout le monde me dit que les cookies, c'est pas sécurisé et ici on en utilise plusieurs. J'ai cru voir mon mot de passe hasher et mon User ID. Mais ce n'est pas le seul site à le faire et j'aimerais comprendre comment ce système fonctionne et en quoi il est sécurisé.

    Merci

  5. #5
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Ce n'est que mon avis très personnel, mais les données d'un backoffice étant plus ou moins sensible , avoir une option "se souvenir de moi" n'est à mon sens pas une bonne idée.
    Je pousserais même le vice à avoir une durée de session plutôt courte (en tout cas bien adaptée à l'utilisation du backoffice).
    C'est certes un peu plus contraignant pour l'utilisateur mais ça évite les mauvaise surprise.

    Pour augmenter la sécurité tu peux associé à chaque formulaire un "token" à durée de vie limitée. Qui t'assure que les données que recois ta page de taitement viens bien du bon formulaire. Une recherche sur protection csrf devrait te donner des résultats.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2011
    Messages : 12
    Par défaut
    Oui en effet, la persistance de l'identification pendant 72h n'est pas correcte du tout pour un BO. Mais là, j'ai débordé sur un espace membres sans prévenir

    A propos des failles CSRF, j'ai cherché un peu sur le net. En fait, si j'ai bien compris, ça consiste en l'exécution d'un script par un utilisateur qui n'est pas au courant. Pour la plupart, ça ne donne rien mais le danger vient des utilisateurs connectés au site. C'est bien ça ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Back office et insertion d'images dans un formulaire
    Par djedje37et28 dans le forum Langage
    Réponses: 4
    Dernier message: 28/07/2006, 10h50
  2. [Tableaux] Front-office et back-office
    Par ChiCodoubrasil dans le forum Langage
    Réponses: 16
    Dernier message: 15/07/2006, 19h45
  3. développez-vous vous-meme vos back-office ?
    Par littleman dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 23/02/2006, 10h59
  4. Back Office
    Par Ric500 dans le forum Access
    Réponses: 12
    Dernier message: 02/12/2004, 15h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo