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 :

Authentification en utilisant ma propore base de donnée


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Par défaut Authentification en utilisant ma propore base de donnée
    Bonjour a tous je tient a vous dire que je suis encore debutant en Asp.net !

    Voila , J'aimerais savoir comment faire pour que le controle authentification Asp n'utilise plus la base de donnée par defaut qu'il créé "ASPNETDB.MDF"
    mais une base donnée utilisé par mon entreprise .

    J'ai trouvé ce code que je trouve correcte mais qui ne fonctionne malheuresement pas (apprement le formulaire cherche toujours les utilisateurs dans la base de donnée qu'il crée)

    Voila le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
     
    protected void Page_Load(object sender, EventArgs e)
            {
                // Check if the user is already loged in or not
                if ((Session["Check"] != null) && (Convert.ToBoolean(Session["Check"]) == true))
                {
                    // If User is Authenticated then moved to a main page
                    if (User.Identity.IsAuthenticated)
                        Response.Redirect("home.aspx");
                }
            }
     
            protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
            {
                Boolean blnresult;
                blnresult = false;
     
                // Pass UserName  and Password from login1 control to an authentication function 
                //which will check the user name and password from sql server.
                // Then will retrun a true or false value into blnresult variable
                blnresult = Authentication(Login1.UserName, Login1.Password);
     
                // If blnresult has a true value then authenticate user 
                if (blnresult == true)
                {
                    // This is the actual statement which will authenticate the user
                    e.Authenticated = true;
                    // Store your authentication mode in session variable 
                    Session["Check"] = true;
                }
                else
                    // If user faild to provide valid user name and password
                    e.Authenticated = false;
            }
     
     
            // Function name Authentication which will get check the user_name and passwrod from sql database then return a value true or false
            protected static Boolean Authentication(string username, string password)
            {
                string sqlstring;
                sqlstring = "Select mail,pw from [utilisateurs] where mail='" + username + "' and pw ='" + password + "'";
     
                // create a connection with sqldatabase 
                SqlConnection con = ConnectionManager.Seconnecter();
     
                // create a sql command which will user connection string and your select statement string 
                SqlCommand comm = new SqlCommand(sqlstring, con);
     
                // create a sqldatabase reader which will execute the above command to get the values from sqldatabase
                SqlDataReader reader;
     
                // execute sql command and store a return values in reade
                reader = comm.ExecuteReader();
     
                // check if reader has any value then return true otherwise return false
                if (reader.Read())
                    return true;
                else
                    return false;
            }

    Note :
    "ConnectionManager" est une classe que j'utilise dans mon application et "seConnecter()" est une methode qui me permet de me connecter a ma base de donnée .

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Ca se paramètre dans le web.config

  3. #3
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Par défaut
    Pourriez vous m'indiquer la procédure svp j'ai vraiment cherché sur le net sans trouver de reponse !

  4. #4
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour,

    Tu n'as pas du bien chercher. Rien que sur Developpez il y a un paquet de post et articles sur le sujet. Exemple : ASP.NET 2.0: Implémenter son propre Membership provider en 30 minutes.

    [Edit] Tu as aussi des vidéos sur le site officiel ASP.NET : http://www.asp.net/web-forms/security [/edit]

  5. #5
    Membre averti
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Par défaut
    merci pour vos réponses les gars !
    j'ai suivit le tutoriel , j'ai créé une classe "CustomMemProvider" qui herite de la classe MemebreshipProvider , j'ai overridé les methodes de la classe et implémenter la fonction ValidateUser . Dans le fichier web.config j'ai ajouté la reférence pour membershipProvider de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <membership defaultProvider="CustomMemProvider">
          <providers>
            <add connectionStringName="notifications_dbConnectionString"
              name="CustomMemProvider" type="CustomMemProvider" />
          </providers>
        </membership>
    jusque la tout se passe bien mais quand je remplie les données du formulaire d'authentification et que j'essaye de m'authentifier j'ai l'erreur suivante qui apparait

    Erreur du serveur dans l'application '/'.
    --------------------------------------------------------------------------------

    Erreur de configuration
    Description : Une erreur s'est produite lors du traitement d'un fichier de configuration requis pour répondre à cette demande. Veuillez consulter ci-dessous les détails relatifs à l'erreur en question, puis modifier votre fichier de configuration de manière appropriée.

    Message d'erreur de l'analyseur: Impossible de charger le type 'CustomMemProvider'.

    Erreur source:


    Ligne 76 : <providers>
    Ligne 77 : <add connectionStringName="notifications_dbConnectionString"
    Ligne 78 : name="CustomMemProvider" type="CustomMemProvider" />
    Ligne 79 : </providers>
    Ligne 80 : </membership>
    j'ai pourtant suivit le tutoriel a la lettre !

  6. #6
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour,

    C'est normal que ça ne fonctionne pas. Tu ne stipules pas le namespace de ton Provider. C'est comme pour faire un register sur un CustomControl dans le Web.config afin d'y avoir accès dans toutes les pages.

    Donc si tu as codé ton CustomProvider dans le Namespace MonSite, le type doit recevoir "MonSite.CustomerProvider" dans le Web.config.

    En espérant t'avoir aidé.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 24/08/2013, 11h01
  2. [JGuard] Utilisation d'une base de donnée
    Par worldchampion57 dans le forum Sécurité
    Réponses: 3
    Dernier message: 09/06/2006, 00h38
  3. [VS2005]Utilisation d'une base de données avec VB 2005
    Par gabrielgarcin dans le forum Windows Forms
    Réponses: 1
    Dernier message: 08/02/2006, 15h46
  4. Réponses: 5
    Dernier message: 13/12/2005, 16h04
  5. Utilisation d'une base de données a distance
    Par newbie57 dans le forum Bases de données
    Réponses: 2
    Dernier message: 27/10/2005, 09h25

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