none
Echec de connexion en ligne avec le controle login RRS feed

  • Question

  •  

    Bonjour,

     

    Le problème semble commun à plusieurs personnes dont j'ai vu le post sur différents forums mais jusqu'ici je n'ai trouvé aucune solution qui fonctionne.

    J'ai développé une petite application web en utilisant la framework 3.5 avec Visual Web Developper 2008.

    Cette application utilise les controles login proposé qui gére automatiquement une base sqlexpress ASPNETDB.MDF.

    Tout fonctionne parfaitement en local avec le serveur d'évaluation fourni avec VWD 2008.

    Par contre dès que je la mets en ligne, lors de la tentative d'identification, j'obtiens la réponse :

    "Votre tentative de connexion a échoué. Réessayez."

    Le serveur est sous Windows 2003 Web Edition et IIS 6.

    Le paramétrage semble identique que sur d'autres sites fonctionnant en asp.net sur le même serveur bien que ceux-ci n'utilisent pas les controles login.

    Plusieurs tuto semblent dire que le problème vient d'un paramétrage dans le web.config. Il faudrait rajouter la section <membership> et définir l'attribut applicationname en utilsant le même nom que ce que l'on trouve dans la table aspnet_Applications  de la base ASPNETDB.MDF comme indiqué ici :

     

    Code Snippet

    <membership defaultProvider="MyMembershipSqlProvider">
    <providers>
    <add
    name="MyMembershipSqlProvider"
    type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    connectionStringName="LocalSqlServer"
    applicationName="/siteweb"/>
    </providers>
    </membership>

     

     

    Voici les liens vers les tuto :

    http://ghismodotnet.blogspot.com/2007_04_01_archive.html

    http://weblogs.asp.net/scottgu/archive/2006/04/22/Always-set-the-_2200_applicationName_2200_-property-when-configuring-ASP.NET-2.0-Membership-and-other-Providers.aspx

     

    Le problème est que dans ma base aspnet_Applications  il n'y a qu'un "/" d'indiqué et j'ai beau essayer de mettre un nom que je fais coïncider avec l'attribut applicationname , mais rien n'y fait, cela ne marche toujours pas.

    Je cherchje désespérement une piste pour débloquer ce problème.

     

    Merci de toute réponse.

     

    lundi 5 janvier 2009 06:09

Réponses

  • Merci pour cette suggestion.

     

    Mais j'ai entre temps trouvé la solution :

     

    En fait, sur une machine XP, l'utilisateur ASP.NET doit avoir les droits sur la bdd pour que le control login fonctionne.

    Or sous Windows 2003 Server, c'est l'utilisateur SERVICE RESEAU avec les droits en modification et écriture qui doit être ajouté !

    Il fallait le savoir...

     

    (bien sur, les paramètres concernant MyMembershipSqlProvider doivent aussi être gérés dans le web.config)

     

    lundi 19 janvier 2009 13:00

Toutes les réponses

  • Bonjour.

    J'ai eu le même problème il y a un certain temps.

    La solution (si mes souvenirs sont bons) était, avant la ligne

       <add  name="MyMembershipSqlProvider" .... />

    d'ajouter

      <remove name="MyMembershipSqlProvider">   ou   <clear/>

     

    et je crois aussi (mais là je suis moins sûr) d'avoir

      applicationName="/"

     

    En espérant que cela peut vous aider.

    L.

     

     

    vendredi 16 janvier 2009 13:30
  • Merci pour cette suggestion.

     

    Mais j'ai entre temps trouvé la solution :

     

    En fait, sur une machine XP, l'utilisateur ASP.NET doit avoir les droits sur la bdd pour que le control login fonctionne.

    Or sous Windows 2003 Server, c'est l'utilisateur SERVICE RESEAU avec les droits en modification et écriture qui doit être ajouté !

    Il fallait le savoir...

     

    (bien sur, les paramètres concernant MyMembershipSqlProvider doivent aussi être gérés dans le web.config)

     

    lundi 19 janvier 2009 13:00