none
Asp Net / Paranormal,souci d'authentification RRS feed

  • Discussion générale

  • Bonjour a tous,

    Voici un petit souci que je rencontre,je ne trouve aucune solution,je suis débutant en Asp.Net.

     

    J'utilise sur une page asp.net le control "login status",j'ai une form "login.aspx" chargé d'établir l'authentification.

    j'ai utilisé l'interface de configuration afin d'y configurer les differents roles et utilisateurs.

    Lorsque je lance mon site,et que j'essaye de me loguer sur la form "login.asp",ca fonctionne,plus ca ne fonctionne plus...ou ca ne fonctionne pas et ca fonctionne...???

    en testant je me suis rendu compte que si j'introduisais des données erronée,1 fois,2 fois...l authentification se fait,le controle "login status" change d'état et ca fonctionne...

    Je ne comprend pas pourquoi,quelqun pourrait il m'expliquer ce phénomène paranormal?????

    voici mon web.config

     

    <configuration>

     

      <system.web>

        <membership defaultProvider="SqlProvider"

         userIsOnlineTimeWindow="15">

          <providers>

            <add

              name="SqlProvider"

              type="System.Web.Security.SqlMembershipProvider"

              connectionStringName="LocalSqlServer"

              applicationName="/"

              enablePasswordRetrieval="false"

              enablePasswordReset="false"

              requiresQuestionAndAnswer="false"

              requiresUniqueEmail="false"

              minRequiredPasswordLength="2"

    minRequiredNonalphanumericCharacters="0"

              />

          </providers>

        </membership>

        <roleManager enabled="true" />

        <authentication mode="Forms" />

        <compilation debug="true"/>

      </system.web>

     

      <system.webServer>

        <validation validateIntegratedModeConfiguration="true"/>

        <modules>

          <remove name="ScriptModule"/>

          <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

        </modules>

        <handlers>

          <remove name="WebServiceHandlerFactory-Integrated"/>

          <remove name="ScriptHandlerFactory"/>

          <remove name="ScriptHandlerFactoryAppServices"/>

          <remove name="ScriptResource"/>

          <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

          <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

          <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

        </handlers>

      </system.webServer>

      <runtime>

        <assemblyBinding appliesTo="v2.0.50727" xmlns="urn:schemas-microsoft-com:asm.v1">

          <dependentAssembly>

            <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>

            <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>

          </dependentAssembly>

          <dependentAssembly>

            <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>

            <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>

          </dependentAssembly>

        </assemblyBinding>

      </runtime>

     

      <!--<profile >

        <properties >

          <add name="DateNaissance" type="System.DateTime"/>

          <add name="InfoUser" type="User" />

          <add name="Theme" type="string"/>

        </properties>

     

      </profile>-->

     

     

     

     

     

    </configuration>

    • Type modifié Ciprian Duduiala mercredi 3 août 2011 06:50 attente de feedback
    jeudi 21 juillet 2011 18:23

Toutes les réponses

  • Bonjour,

    Il se peut que le problème ne réside pas dans votre web.config 

    Voici un bout de code pour l'authentification avec l'interface de configuration

     

     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
     If Not Page.IsPostBack Then
      If Request.IsAuthenticated AndAlso Not String.IsNullOrEmpty(Request.QueryString("ReturnUrl")) Then
    
      Response.Redirect("~/NonAuthorisé.aspx")
      End If
     End If
     End Sub
    
     Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles Login1.Authenticate
    
     If Membership.ValidateUser(Login1.UserName, Login1.Password) Then
    
      Dim usrInfo As MembershipUser = Membership.GetUser(Login1.UserName)
    
      e.Authenticated = True
    
     Else
      e.Authenticated = False
     End If
     End Sub
     
     Protected Sub Login1_LoginError(ByVal sender As Object, ByVal e As System.EventArgs) Handles Login1.LoginError
    
     Login1.FailureText = Resources.traduction.failureText
    
     End Sub
     Protected Sub Login1_LoggingIn(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LoginCancelEventArgs) Handles Login1.LoggingIn
     System.Threading.Thread.Sleep(3000)
     End Sub
     Public Class LoginRedirectByRoleSection
     Inherits ConfigurationSection
     <ConfigurationProperty("roleRedirects")> _
     Public Property RoleRedirects() As RoleRedirectCollection
      Get
      Return DirectCast(Me("roleRedirects"), RoleRedirectCollection)
      End Get
      Set(ByVal value As RoleRedirectCollection)
      Me("roleRedirects") = value
      End Set
     End Property
     End Class
     Public Class RoleRedirectCollection
     Inherits ConfigurationElementCollection
     Default Public ReadOnly Property Item(ByVal index As Integer) As RoleRedirect
      Get
      Return DirectCast(BaseGet(index), RoleRedirect)
      End Get
     End Property
    
     Protected Overrides Function CreateNewElement() As ConfigurationElement
      Return New RoleRedirect()
     End Function
     Protected Overrides Function GetElementKey(ByVal element As ConfigurationElement) As Object
      Return DirectCast(element, RoleRedirect).Role
     End Function
     End Class
     Public Class RoleRedirect
     Inherits ConfigurationElement
     <ConfigurationProperty("role", IsRequired:=True)> _
     Public Property Role() As String
      Get
      Return DirectCast(Me("role"), String)
      End Get
      Set(ByVal value As String)
      Me("role") = value
      End Set
     End Property
     <ConfigurationProperty("url", IsRequired:=True)> _
     Public Property Url() As String
      Get
      Return DirectCast(Me("url"), String)
      End Get
      Set(ByVal value As String)
      Me("url") = value
      End Set
     End Property
     End Class
     Private Sub RedirectLogin(ByVal username As String)
     Dim roleRedirectSection As LoginRedirectByRoleSection = DirectCast(ConfigurationManager.GetSection("loginRedirectByRole"), LoginRedirectByRoleSection)
     For Each roleRedirect As RoleRedirect In roleRedirectSection.RoleRedirects
      If Roles.IsUserInRole(username, roleRedirect.Role) Then
      Response.Redirect(roleRedirect.Url)
      End If
     Next
     End Sub
    
    
    


    et dans le  web.config 

     

    	<authentication mode="Forms">
    			<forms timeout="60"/>
    		</authentication>
    


     

     


    Best Regards...Please mark as answer if my post is helpful

    mardi 26 juillet 2011 08:36
  • Bonjour, BioDev,

     

    Est-ce que vous avez testé la solution proposée ? Merci pour partager avec nous les résultats, afin que d'autres personnes avec le même problème puissent profiter de cette solution.

     

    Cordialement,

     

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    lundi 1 août 2011 09:10
  • Je test cette solution,a +
    lo
    mercredi 23 novembre 2011 10:22