Asp.net - forcer le passage par une page d'identification avant l'entrée sur le site asp.net

Soyez le premier à donner votre avis sur cette source.

Snippet vu 25 738 fois - Téléchargée 36 fois

Contenu du snippet

Cet exemple est une des trois possibilités d'authentification prévue sur ASP.NET, ainsi nous verrons dans cet exemple la plus classique sur Internet, l'authentification par formulaire simple (Login/Pass).
Ceci se fait par le paramétrage du fichier WEB.CONFIG, et la création d'un fichier d'identification (login.aspx).

Source / Exemple :

' ------ Dans web.config -----------

<authentication mode="Forms">
  <forms name=".ASPXUSERDEMO" loginUrl="login.aspx" protection="All" timeout="60" ></forms>
</authentication>
' Oblige le passage par la page login.aspx pour s'identifier lors de l'arrivée sur toutes les pages du projet

<authorization>
 <deny users="?" ></deny>
 <allow users="*" ></allow>
</authorization>
' Autorisation a tous les utilisateurs identifiés, interdiction au non connus

' -------- Page Login.aspx ------------

<form method="post" runat="server">
<table cellSpacing="0" cellPadding="2" align="center" border="0">
<TR><TD>Login :</TD>
<TD><asp:textbox id="login" runat="server"></asp:textbox></TD>
</TR>
<TR><TD><DIV align="center">Mot de Passe :</DIV></TD>
<TD><asp:textbox id="pass" runat="server" TextMode="Password"></asp:textbox></TD>
</TR>
</table><br><br>
<asp:button id="Button1" runat="server" Text="Envoyer"></asp:button>
<P><P><P><asp:label id="Label1" runat="server"></asp:label></P>
</FORM>

' --------Page Login.aspx.vb ---------------
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 ' Vérification de l'authentification
 Dim ODBCConnSite As String = "films"
 Dim TmpReaderType As OdbcDataReader
 Dim SQL As String = "Select * FROM password WHERE password.login='" & login.Text & "' AND password.pass='" & pass.Text & "'"

  TmpReaderType = MyODBCReader(SQL, ODBCConnSite)
  If TmpReaderType.Read Then
    FormsAuthentication.RedirectFromLoginPage(login.Text, False)
  Else
    Label1.Text = "Les éléments fournis ne permettent pas de vous authentifier."
  End If
End Sub

' Cet exemple s'appuie sur une requette lancée sur une table et dont le résultat est un Datareader, ainsi si on peut lire ce reader (TmpReaderType.Read) rendra TRUE et validera l'authetification. A l'inverse elle restera sur cette même page et affichera le texte dans le label.




PS: afin d'utiliser la fonction de requettage sur la base des Login/Mdp, voyez ici :
- http://www.asp-php.net/scripts/asp.net/lib_class_mysql.php

Bon développement

Romelard Fabrice (Alias F___)

A voir également

Ajouter un commentaire Commentaires
tounsi87 Messages postés 1 Date d'inscription mardi 18 décembre 2007 Statut Membre Dernière intervention 21 décembre 2007
21 déc. 2007 à 22:17
merci
de saint meen Messages postés 1 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 13 octobre 2006
13 oct. 2006 à 05:08
Merci à CodesSources de laisser tous ces vieux posts toujours pratiques !
delfossf Messages postés 1 Date d'inscription mardi 28 juin 2005 Statut Membre Dernière intervention 30 juin 2006
30 juin 2006 à 04:38
Ce post est assez vieux mais je te remercie beaucoup, tu m'as fait gagné énormément de temps.
hisham91 Messages postés 57 Date d'inscription lundi 26 avril 2004 Statut Membre Dernière intervention 23 janvier 2013
16 nov. 2004 à 16:21
Puré je suis pas sorti de l'auberge :) votre dernière réaction date de 9 janvier 04

aucune chance :'(
hisham91 Messages postés 57 Date d'inscription lundi 26 avril 2004 Statut Membre Dernière intervention 23 janvier 2013
16 nov. 2004 à 16:19
Salut,

J'essai désespéremment de codé en c#.net bref je veux récupérer une valeur de ma BDD et le faire afficher dans un "label" cependant les label et textbox n'ont pas de propriété permettant de les relier à une base de données comme le font les listbox et dropdownlist ! Franchement sa me dit rien de migrer mes appli ASP vers ASP.Net ...

PLEEEEEAAAASSSE can you help me ??

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.