Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1268 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Authentification composant login

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Authentification composant login

n°1625913
the big be​n
Posté le 17-10-2007 à 19:28:30  profilanswer
 

Bonjour,
 
J'essaie actuellement d'implémenter une sécurité pour un site web et donc je voudrait utiliser les les compsant Login et autres existant déja dans ASP mais sans utiliser de DB et donc tout dans le web.config.
 
Mon but est est de laisser une partie libre et d'avoir un dossier Admin sécurisé.
 
Pour ce j'ai donc un web.Config dans mon repertoire de base contenant:

Code :
  1. <authentication mode="Forms">
  2.       <forms loginUrl="~/Admin/Login.aspx" protection="Encryption" timeout="20">
  3.         <credentials passwordFormat="MD5">
  4.           <user name="ben" password="6875991F9B848D94C8B6DB253849CDDE"/>
  5.         </credentials>
  6.       </forms>
  7.     </authentication>
  8.     <authorization>
  9.       <allow users="*" />     
  10.     </authorization>


Et un autre Web.Config dans mon répertoire Admin.

Code :
  1. <authorization>
  2.         <allow users="ben"/>
  3.         <deny users="*" />
  4.       </authorization>


Mon formulaire Admin/Login.aspx contient bien sur mon composant Login.  
 
Pour la racine tout est ok j accède à ce que je veut et si j essai d'accéder au repertoire admin je tombe effectivement sur la page de login. Mais par contre quand j'essai de me logger il me dit toujours que le login est impossible!
 
Pourtant mon mot de passe est correctement encore en MD5 j ai fait via un site web et via la proc  FormsAuthentication.HashPasswordForStringInConfigFile("benji", "MD5" ); ca me donne la meme chose!
 
Question subsidiare: comment faire pour utiliser les roles dans le Web.Config??
 
D'avance merci
 
Ben

mood
Publicité
Posté le 17-10-2007 à 19:28:30  profilanswer
 

n°1626417
the big be​n
Posté le 18-10-2007 à 14:27:24  profilanswer
 

Personne???
 
J'ai également essayer sans encryption:

Code :
  1. <authentication mode="Forms">
  2.   <forms loginUrl="~/Admin/Login.aspx" protection="None" timeout="20">
  3.    <credentials passwordFormat="Clear">
  4.     <user name="ben" password="benji"/> <!-- 6875991F9B848D94C8B6DB253849CDDE -->
  5.    </credentials>
  6.   </forms>
  7.  </authentication>


 
Mais sans plus de succès

n°1627229
arnaudm57
Posté le 19-10-2007 à 13:59:25  profilanswer
 

Perso j'utilise cela dans le fichier web.config :
 

Code :
  1. <roleManager enabled="true" defaultProvider="CustomizedRoleProvider" cacheRolesInCookie="true">
  2.   <providers>
  3.    <add name="CustomizedRoleProvider" type="classe_RoleProvider"/>
  4.   </providers>
  5.  </roleManager>
  6.  <membership defaultProvider="CustomizedMembershipProvider">
  7.   <providers>
  8.    <add name="CustomizedMembershipProvider" type="classe_MembershipProvider"/>
  9.   </providers>
  10.  </membership>


 
J'ai également défini dans mon dossier App_Code, les classes "classe_MembershipProvider" et "classe_RoleProvider"qui héritent respectivement de MembershipProvider et RoleProvider afin de personnaliser totalement mon controle Login.
J'essayerai de t'en dire + ce soir !

n°1627251
the big be​n
Posté le 19-10-2007 à 14:11:42  profilanswer
 

Mon but serait d'éviter d'utiliser la db et d avoir tout dans le Web.Config

n°1627585
arnaudm57
Posté le 19-10-2007 à 17:54:56  profilanswer
 

Par défaut, si tu ne spécifies rien dans le fichier Web.config, ASP.NET (et plus particulièrement ton contrôle de Login) considère que tu utilises SQL Server et son schéma spécifique pour te connecter. D'après les exemples que j'ai pu voir en faisant une recherche sous Google, beaucoup réimplémente un controle Login a leur manière sans passer par le contrôle ASP.NET déjà dispo.
 
Par ailleurs, tu n'es pas obligé d'utiliser la DB si tu implémentes ton propre Membership.
 
Voir ici, il utilise un fichier texte :  
 
http://ditch.developpez.com/aspnet [...] pprovider/


Message édité par arnaudm57 le 19-10-2007 à 18:02:46
n°1627665
moi23372
Posté le 19-10-2007 à 19:59:34  profilanswer
 

personnellement, réimplémenter son membership est la meilleure solution car tout le mécanisme existe déjà. Pas besoin de faire soit même des vérifications dans tous les sens. .NET le fait pour nous. Alors franchement, oui il faut utiliser les membership pour la sécurité en .NET. Les pages seront ainsi bcp plus sécurisée à tout point de vue.

n°1651711
TranceVibe​s
Posté le 01-12-2007 à 18:51:19  profilanswer
 

Moi j'ai réussi en faisant comme ça. Alors tout d'abord le coté asp:
 

Code :
  1. <asp:Login ID="Login1" runat="server" OnAuthenticate="Login1_Authenticate" DestinationPageUrl="AspLogged.aspx">
  2. <TitleTextStyle BackColor="#5D7B9D" Font-Bold="True" Font-Size="0.9em" ForeColor="White" />
  3. <InstructionTextStyle Font-Italic="True" ForeColor="Black" />
  4. <TextBoxStyle Font-Size="0.8em" />
  5. <LoginButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px"
  6.  Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284775" />
  7. </asp:Login>


 
Ensuite dans la partie C# de mon code, j'ai dû faire ceci:

Code :
  1. protected void Login1_Authenticate(object sender, AuthenticateEventArgs e){
  2.  if (FormsAuthentication.Authenticate(Login1.UserName, Login1.Password))
  3.  {
  4.   FormsAuthentication.RedirectFromLoginPage(Login1.UserNameLabelText, true);
  5.   //Response.Redirect("AspLogged.aspx" );
  6.  }
  7. }


 
Redis-moi si jamais t'as tj des pb, j'pourrai t'envoyer la totalité de mon code.
Bonne chance! :hello:


Message édité par TranceVibes le 01-12-2007 à 19:38:26
n°1651898
moi23372
Posté le 02-12-2007 à 21:04:21  profilanswer
 

mauvaise solution désolé.  
La bonne solution dans son cas c'est d'implémenté sur membership soit même. ça t'assure une réelle sécurité pour utiliser tous ce qui existe. Car la, ça ne te sert à rien du tout pour gérer la sécurité. A moins de faire du marteau burin dans toutes tes pages.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Authentification composant login

 

Sujets relatifs
Tabsheet et composant incluStatus d'un ou plusieurs composant COM+
Recherche de composant HTML WYSIWYG + Image managerVB pb de composant active X
[Résolu] Automatiser le PHP_AUTH_USER pour authentification htaccessRecup donnée apres authentification
[Asp] Login / Mot de passeIRC : authentification par /msg server AUTH userid password
[SQL Server] Retrouver le login / mot de passe du serveurDoc mysql authentification pour apache2
Plus de sujets relatifs à : Authentification composant login


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR