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

ASP.NET Discussion :

Interdire l'accès à quelques pages sans authentification


Sujet :

ASP.NET

  1. #1
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Qatar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 489
    Points : 334
    Points
    334
    Par défaut Interdire l'accès à quelques pages sans authentification
    Bonjour,

    Comment je peux interdire l'accès à des pages administrateur si on utilise pas le login et le pass.

    Exemple :

    J'ai une page admin.aspx qui contient un login et un mot de passe. Si je saisie les bons ( de ma BD Oracle ) je suis rediriger vers la page acceuiladmin.aspx ==> ceci fonctionne sans problème.

    Le soucis est que si je fais directement sur la barre du lien acceuiladmin.aspx je peux accéder à la page sans soucis

    Comment éviter cela ?

    PS : c'est mon premier contact avec ASP, soyez indulgent SVP

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Salut,
    Citation Envoyé par Hot_Abd Voir le message
    PS : c'est mon premier contact avec ASP, soyez indulgent SVP
    Hé, hé, on fait peur?

    Il y a cet article dans la FAQ. Il est ancien mais simple et toujours d'actualité.

    Celui-ci aussi: http://msdn.microsoft.com/en-us/library/ms998310.aspx

    Si tu t'es déjà authentifié grâce à tes propres méthodes, tu dois utiliser une variable en session ou en cookie que ta page va tester. Si la variable est valable l'internaute passe sinon il est redirigé.

    A+

  3. #3
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Qatar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 489
    Points : 334
    Points
    334
    Par défaut
    Merci pour ton aide. Sinon pour les deux lien j'ai déjà essayé avec le web.config mais ça à générer quelques problèmes...

    Que dois-je utiliser une session ou un cookie ( le plus simple ) ? Un petit tuto ?

  4. #4
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Pas plus compliqué l'un que l'autre. L'authentification sur ce site (developpez) est basé sur un cookie. La session est un peu plus sécurisé car la variable est stockée sur le serveur et non le client.

    J'ai pas de tuto sous le coude désolé. Principe, a l'entrée de chaque page à sécuriser tu fais appel à une méthode du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaClasseSecurite.IsUserCanAccess()
    qui retourne vrai ou faux. Si vrai alors ça passe. Sinon ça passe pas. A l'interieur de "IsUserCanAccess" tu peux faire ce que tu veux.
    Tu peux faire plein de surcharges
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaClasseSecurite.IsUserCanAccess(string userName, string password)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaClasseSecurite.IsUserCanAccess(HttpCookie cookie)
    A+

  5. #5
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Qatar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 489
    Points : 334
    Points
    334
    Par défaut
    Je vais utiliser une petite session pour l'admin alors mais bien evidement j'ai des problèmes

    Voilà ce que je fais :

    Si l'admin donne le bon login et mot de passe, il est rediriger vers la page acceuiladmin.aspx et je crée une session avec son nom :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    // Connexion à la BD ...
     
    If myreader.Read() Then
                    Response.Redirect("acceuiladmin.aspx")
                    Session("username") = "admin"
                Else
                    MsgBox("Identificateurs invalid")
                End If
    Sinon j'affiche un message d'erreur et il peu encore ressayer.

    sur la page acceuiladmin.aspx je fais le teste suivant avant la balise HTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <%  If Not Session("username") Then
            Response.Redirect("admin.aspx")
        Else
            //J'affiche ma page HTML
    %>
    Qui signifie que si la session est définie il entre sinon il est redirigé vers le formulaire.

    Le soucis maintenant est quoi qu'il s'authentifie ou pas je suis toujours rediriger vers le formulaire de login.

    J'ai mis un petit affichage pour le nom de la session mais ça ne m'affiche rien...

  6. #6
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Ton test n'est pas forcement très logique. Essaye de tester
    1. Si Session("username") n'est pas null
    2. La valeur de Session("username") vaut bien"admin"
    A+

  7. #7
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Qatar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 489
    Points : 334
    Points
    334
    Par défaut
    J'ai essayé les deux sans résultat.

    Le hic est quand je fais un response.write du nom de la session dans une autre page ça m'affiche rien donc la valeur définie sur session("username") n'est pas transférer entre les pages je pense non ?

  8. #8
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Qatar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 489
    Points : 334
    Points
    334
    Par défaut
    C'est bon j'ai retrouvé les anomalis et j'ai réglé les trucs.

    Merci.

    affaire à suivre dans des sujets qui vont pas tarder

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

Discussions similaires

  1. Interdire l'accès des pages JSP avant l'authentification
    Par JokerJn dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 13/06/2013, 13h24
  2. Interdir l'accès aux pages web
    Par abdoinfo dans le forum Glassfish et Payara
    Réponses: 0
    Dernier message: 22/11/2011, 10h43
  3. Page sans authentification
    Par Aymanus dans le forum JSF
    Réponses: 0
    Dernier message: 10/11/2011, 09h49
  4. interdire l'accès à une page directement
    Par nickg dans le forum ASP
    Réponses: 13
    Dernier message: 29/12/2007, 15h12
  5. Réponses: 4
    Dernier message: 28/09/2006, 13h37

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