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

Langage PHP Discussion :

[Securité] Droit suivant utilisateur


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut [Securité] Droit suivant utilisateur
    Bonjour,

    Je voudrais savoir comment à partir d'un site securisé (tout les utilisateurs un login et pass) autoriser telle ou telle page, mais également suivant le droit afficher des infos supplémentaires sur mes pages.


    D'avance merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    691
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 691
    Points : 362
    Points
    362
    Par défaut
    tu utilises des variables de sessions, quand tu connectes un utilisateur tu lui colle une valeur droit que tu verifie a chaque page, et en fonction de cette valeur tu affiches plus ou moins de chose.

  3. #3
    Membre éprouvé Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Points : 1 019
    Points
    1 019
    Par défaut
    Salut

    Oui, même avis que Zulot et plus précisemment :

    La solution la plus simple et de rajouter un champ dans la table où sont enregistrés les login & pass.
    Par exemple : "statut" ou "droit" si tu préféres.

    Ce statut/droit pourrait être A, ou B, ou C....etc…. à toi de voir.

    Puisque sécurisé, cela sous-entend une requête d’authentification.
    Soit un formulaire + 1 script de vérification ( à moins que ce soit le même fichier)

    Quoiqu’il en soit, le fichier qui comprend ta requête d’identification doit comporter en toute première ligne :

    session_start();

    Et à la suite de cette même requête ( si login & pass sont corrects ) :

    session_register("statut");


    Tu l’auras compris, cette méthode vient de créer une session utilisateur, et tu n’as plus à te soucier du statut ou des droits de « l’individu ».

    Pour récupérer la $variable statut, il te suffit simplement de rajouter session_start(); ( tjrs en début de page ) dans celles ou justement les infos doivent être différentes en fonction du statut.

    Pour le reste, il suffit de bosser avec des conditions dans tes différentes partitions, exemple :

    if($_SESSION['statut'] == 'A')
    {
    //contenu pour le A
    }
    elseif($_SESSION['statut'] == 'B')
    {
    //contenu pour le B
    }
    //etc……

    (Peut-être plus simple avec un switch, à voir)

  4. #4
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par alain31tl
    Salut

    Oui, même avis que Zulot et plus précisemment :

    La solution la plus simple et de rajouter un champ dans la table où sont enregistrés les login & pass.
    Par exemple : "statut" ou "droit" si tu préféres.

    Ce statut/droit pourrait être A, ou B, ou C....etc…. à toi de voir.

    Puisque sécurisé, cela sous-entend une requête d’authentification.
    Soit un formulaire + 1 script de vérification ( à moins que ce soit le même fichier)

    Quoiqu’il en soit, le fichier qui comprend ta requête d’identification doit comporter en toute première ligne :

    session_start();

    Et à la suite de cette même requête ( si login & pass sont corrects ) :

    session_register("statut");


    Tu l’auras compris, cette méthode vient de créer une session utilisateur, et tu n’as plus à te soucier du statut ou des droits de « l’individu ».

    Pour récupérer la $variable statut, il te suffit simplement de rajouter session_start(); ( tjrs en début de page ) dans celles ou justement les infos doivent être différentes en fonction du statut.

    Pour le reste, il suffit de bosser avec des conditions dans tes différentes partitions, exemple :

    if($_SESSION['statut'] == 'A')
    {
    //contenu pour le A
    }
    elseif($_SESSION['statut'] == 'B')
    {
    //contenu pour le B
    }
    //etc……

    (Peut-être plus simple avec un switch, à voir)
    Génial et merci

  5. #5
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par alain31tl
    Salut

    Oui, même avis que Zulot et plus précisemment :

    La solution la plus simple et de rajouter un champ dans la table où sont enregistrés les login & pass.
    Par exemple : "statut" ou "droit" si tu préféres.

    Ce statut/droit pourrait être A, ou B, ou C....etc…. à toi de voir.

    Puisque sécurisé, cela sous-entend une requête d’authentification.
    Soit un formulaire + 1 script de vérification ( à moins que ce soit le même fichier)

    Quoiqu’il en soit, le fichier qui comprend ta requête d’identification doit comporter en toute première ligne :

    session_start();

    Et à la suite de cette même requête ( si login & pass sont corrects ) :

    session_register("statut");


    Tu l’auras compris, cette méthode vient de créer une session utilisateur, et tu n’as plus à te soucier du statut ou des droits de « l’individu ».

    Pour récupérer la $variable statut, il te suffit simplement de rajouter session_start(); ( tjrs en début de page ) dans celles ou justement les infos doivent être différentes en fonction du statut.

    Pour le reste, il suffit de bosser avec des conditions dans tes différentes partitions, exemple :

    if($_SESSION['statut'] == 'A')
    {
    //contenu pour le A
    }
    elseif($_SESSION['statut'] == 'B')
    {
    //contenu pour le B
    }
    //etc……

    (Peut-être plus simple avec un switch, à voir)
    Alors juste une question encore stp dans ton exemple qu'es qui empêche un statut B par exemple d'aller sur des pages autoriser du A par exemple.

  6. #6
    Membre éprouvé Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Points : 1 019
    Points
    1 019
    Par défaut
    Précedemment, c'était un exemple pour organiser l'affichage de tes infos.
    Et pour l'accés aux pages et en supposant que tu as un menu avec des liens classiques, exemple :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if($_SESSION['statut'] == 'A')
    {
    print("<a href='tapage.php'>LIEN 1</a>");
    }
    else
    {
    //sinon désactivé
    print("LIEN 1");
    }

  7. #7
    Membre éclairé Avatar de fallais
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2006
    Messages : 858
    Points : 783
    Points
    783
    Par défaut
    Citation Envoyé par alain31tl
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if($_SESSION['statut'] == 'A')
    {
    print("<a href='tapage.php'>LIEN 1</a>");
    }
    else
    {
    //sinon désactivé
    print("LIEN 1");
    }
    Et un temps de chargement de page de 8secondes ..... hum hum

  8. #8
    Membre éprouvé Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Points : 1 019
    Points
    1 019
    Par défaut
    Pourquoi, t'es en RTC ?

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    691
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 691
    Points : 362
    Points
    362
    Par défaut
    moi j'opterais pour des status avec des nombres, avec lesquelles tu fais un switch par exemple.

    Ou sinon un truc du style si status inferieur a un nombre donnée j'affiche sinon je redirige.

  10. #10
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 215
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par alain31tl
    Précedemment, c'était un exemple pour organiser l'affichage de tes infos.
    Et pour l'accés aux pages et en supposant que tu as un menu avec des liens classiques, exemple :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if($_SESSION['statut'] == 'A')
    {
    print("<a href='tapage.php'>LIEN 1</a>");
    }
    else
    {
    //sinon désactivé
    print("LIEN 1");
    }
    Ok merci beaucoup

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

Discussions similaires

  1. [Forum] Accessible suivant droit des utilisateurs
    Par mazz75 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 28/03/2008, 08h48
  2. Gérer les droits des utilisateurs
    Par rsc dans le forum Langage
    Réponses: 6
    Dernier message: 22/08/2005, 20h57
  3. Droits pour utilisateurs
    Par Maxime555 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 03/05/2005, 19h56
  4. [Debutant]droits des utilisateurs sur sql serveur
    Par christophebmx dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/01/2005, 16h50
  5. droits d'utilisateurs
    Par ploum dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/07/2003, 15h22

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