Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Vue d'ensemble des contrôles de connexion ASP.NET

ASP.NET fournit des fonctionnalités d'ouverture de session (authentification) fiables pour les applications Web ASP.NET sans demander de programmation. Les modèles de projet Visual Studio par défaut destinés aux applications Web et aux sites Web incluent des pages prégénérées qui permettent aux utilisateurs d'enregistrer un nouveau compte, de se connecter et de modifier leurs mots de passe. Pour plus d'informations sur l'utilisation des modèles de page de connexion prédéfinis, consultez Procédure pas à pas : création d'un site Web ASP.NET avec une connexion utilisateur de base.

Vous pouvez également créer vos propres pages auxquelles vous pouvez ajouter des contrôles de connexion ASP.NET pour ajouter les fonctionnalités de connexion. Pour utiliser les contrôles de connexion, créez des pages Web puis ajoutez-leur les contrôles de connexion depuis la Boîte à outils.

En général, vous restreignez l'accès aux pages ASP.NET en les mettant dans un dossier protégé. Vous configurez alors le dossier de manière à refuser l'accès aux utilisateurs anonymes (utilisateurs qui ne s'identifient pas) et accorder l'accès aux utilisateurs authentifiés (identifiés). (Le modèle de projet par défaut pour les projets Web inclut un dossier nommé Comptes qui est déjà configuré pour autoriser l'accès uniquement aux utilisateurs connectés.) Éventuellement, vous pouvez assigner des utilisateurs à des rôles puis autoriser les utilisateurs à accéder à des pages Web spécifiques par rôle.

Par défaut, les contrôles de connexion s'intègrent à l'appartenance d'ASP.NET et à l'authentification par formulaire d'ASP.NET pour aider à automatiser l'authentification utilisateur pour un site Web. Pour plus d'informations sur l'utilisation de l'appartenance d'ASP.NET avec l'authentification par formulaire, consultez Introduction à l'appartenance (membership).

Par défaut, les contrôles de connexion ASP.NET fonctionnent en texte brut sur HTTP. Si vous êtes soucieux de la sécurité, utilisez HTTPS avec le chiffrement SSL. Pour plus d'informations sur SSL, consultez Configuration de SSL sur un serveur Web ou un site Web dans la documentation IIS.

RemarqueRemarque

Les contrôles de connexion peuvent ne pas fonctionner correctement si le Method de la page Web ASP.NET est modifié de POST (valeur par défaut) à GET.

Cette rubrique décrit chaque contrôle de connexion ASP.NET et fournit des liens vers la documentation de référence du contrôle.

Cette rubrique contient les sections suivantes :

Lorsque vous utilisez le modèle Visual Studio par défaut pour créer un site Web ou une application Web, des pages prenant en charge les fonctionnalités de connexion sont créées dans le dossier Account. Par défaut, les pages dans le dossier Compte ne sont pas accessibles aux utilisateurs anonymes, sauf la page d'inscription (Register.aspx) et la page de connexion (Login.aspx). Les paramètres permettant de définir l'accès aux pages du dossier Account peuvent être modifiés dans le fichier Web.config de ce dossier. Les paramètres qui définissent l'accès à la page de connexion peuvent être configurés dans le fichier Web.config racine.

L'illustration suivante montre le contenu du dossier Compte.

Dossier Compte

Le tableau suivant répertorie le contenu du dossier Compte :

Page

Description

Connexion.aspx

Permet aux utilisateurs qui ont un compte de se connecter en fournissant un nom d'utilisateur et un mot de passe. Cette page inclut un lien vers la page d'inscription. La page Login.aspx est accessible aux utilisateurs anonymes.

Contient le contrôle Login.

L'illustration suivante montre la page de connexion dans le navigateur.

Modèle de page de connexion

Register.aspx

Permet aux utilisateurs d'enregistrer et créer un compte. Cette page est accessible aux utilisateurs anonymes et aux utilisateurs authentifiés.

Contient le contrôle CreateUserWizard.

L'illustration suivante montre la page de création de compte (inscription) dans le navigateur.

ChangePassword.aspx

Permet aux utilisateurs connectés de modifier leur mot de passe. Cette page est uniquement accessible aux utilisateurs authentifiés.

Contient le contrôle ChangePassword.

L'illustration suivante montre la page de modification de mot de passe dans le navigateur.

Modèle de page de modification du mot de passe

ChangePasswordSuccess.aspx

Affiche un message qui indique que le mot de passe a été modifié avec succès. Cette page est uniquement accessible aux utilisateurs authentifiés.

Cette page n'utilise pas de contrôles de connexion ASP.NET.

Web.config

Contient les paramètres qui définissent l'accès aux pages dans le dossier Compte.

Fonctionnalité de connexion dans la page maître

Lorsque vous utilisez le modèle Visual Studio par défaut pour créer un site Web ou une application Web, la page maître par défaut (Site.master) contient les contrôles suivants qui fournissent les fonctionnalités de connexion.

La page Site.master inclut également un lien hypertexte vers la page de connexion, qui est accessible à tous les utilisateurs.

Stockage des informations de connexion

Les informations de connexion (appartenance) sont stockées dans une base de données. Par défaut, c'est une base de données locale dans le fichier ASPNETDB.mdf dans le dossier App_Data de l'application Web. Vous pouvez créer la base de données de plusieurs façons :

  • Vous pouvez utiliser l'Outil Administration de site Web pour configurer manuellement l'appartenance et les rôles, ce qui crée automatiquement la base de données. Pour plus d'informations, consultez Procédure pas à pas : création d'un site Web avec appartenance et connexion utilisateur.

  • Lorsque le premier utilisateur s'inscrit et crée un compte, et si la base de données n'existe pas déjà, ASP.NET crée automatiquement la base de données. Cette option ne permet pas de spécifier des rôles pour un utilisateur.

Modification des attributs d'appartenance

Les paramètres pour l'appartenance ASP.NET se trouvent dans la section membership du fichier Web.config racine. Dans la section providers, vous pouvez modifier des attributs tels que le nombre de tentatives d'ouverture de session non valide à autoriser, la longueur de mot de passe, etc. Pour plus d'informations, consultez Introduction à l'appartenance (membership).

Le contrôle Login affiche une interface utilisateur pour l'authentification utilisateur. Le contrôle Login contient des zones de texte pour le nom d'utilisateur et le mot de passe, et une case à cocher qui autorise les utilisateurs à indiquer s'ils souhaitent que le serveur stocke leur identité à l'aide de l'appartenance d'ASP.NET et être automatiquement authentifiés lors de leur prochaine visite du site.

Le contrôle Login possède des propriétés pour l'affichage personnalisé, les messages personnalisés et les liens vers d'autres pages où les utilisateurs peuvent modifier leur mot de passe ou récupérer un mot de passe oublié. Le contrôle Login peut être utilisé comme contrôle autonome sur une page d'accueil ou principale, ou vous pouvez l'utiliser sur une page de connexion dédiée.

Si vous utilisez le contrôle Login avec l'appartenance d'ASP.NET, vous n'avez pas besoin d'écrire le code pour exécuter l'authentification. Cependant, si vous souhaitez créer votre propre logique d'authentification, vous pouvez gérer l'événement Authenticate du contrôle Login et ajouter le code d'authentification personnalisé.

Le contrôle LoginView vous permet d'afficher des informations différentes aux utilisateurs anonymes et aux utilisateurs connectés. Le contrôle affiche l'un des deux modèles : AnonymousTemplate ou LoggedInTemplate. Dans les modèles, vous pouvez ajouter un balisage et des contrôles qui affichent les informations appropriées selon qu'il s'agit d'utilisateurs anonymes ou d'utilisateurs authentifiés.

Le contrôle LoginView inclut aussi des événements pour ViewChanging et ViewChanged, qui vous permettent d'écrire des gestionnaires prenant en compte l'instant où l'utilisateur se connecte et modifie l'état.

Le contrôle LoginStatus affiche un lien d'ouverture de session pour les utilisateurs non authentifiés et un lien de fermeture de session pour les utilisateurs authentifiés. Le lien d'ouverture de session conduit l'utilisateur vers une page de connexion. Le lien de fermeture de session réinitialise l'identité de l'utilisateur en cours comme utilisateur anonyme.

Vous pouvez personnaliser l'apparence du contrôle LoginStatus en définissant les propriétés LoginText et LoginImageUrl.

Le contrôle LoginName affiche le nom de connexion d'un utilisateur si ce dernier s'est connecté à l'aide de l'appartenance d'ASP.NET. Si votre site utilise l'authentification Windows intégrée, une autre solution consiste à ce que le contrôle affiche le nom de compte Windows de l'utilisateur.

Le contrôle PasswordRecovery autorise la récupération des mots de passe utilisateur sur la base de l'adresse de messagerie utilisée lors de la création du compte. Le contrôle PasswordRecovery envoie un message électronique contenant un mot de passe à l'utilisateur.

Vous pouvez configurer l'appartenance d'ASP.NET pour stocker les mots de passe à l'aide du chiffrement non réversible. Dans ce cas, le contrôle PasswordRecovery génère un nouveau mot de passe au lieu d'envoyer le mot de passe original à l'utilisateur.

Vous pouvez également configurer l'appartenance pour inclure une question de sécurité à laquelle l'utilisateur doit répondre pour récupérer un mot de passe. Dans ce cas, le contrôle PasswordRecovery pose la question et vérifie la réponse avant de récupérer le mot de passe.

Le contrôle PasswordRecovery nécessite que votre application puisse envoyer le message électronique vers un serveur SMTP (Simple Mail Transfer Protocol). Vous pouvez personnaliser le texte et format du message électronique envoyé à l'utilisateur en définissant la propriété MailDefinition.

RemarqueRemarque

Les informations de mot de passe envoyées dans un message électronique sont envoyées sous forme de texte clair.

L'exemple suivant affiche un contrôle PasswordRecovery déclaré dans une page ASP.NET avec les paramètres de propriété MailDefinition pour personnaliser le message électronique.

<asp:PasswordRecovery ID="PasswordRecovery1" Runat="server" 
    SubmitButtonText="Get Password" SubmitButtonType="Link">
  <MailDefinition From="administrator@Contoso.com" 
    Subject="Your new password"
    BodyFileName="PasswordMail.txt" />
</asp:PasswordRecovery>

Le contrôle CreateUserWizard rassemble les informations des utilisateurs potentiels. Par défaut, le contrôle CreateUserWizard ajoute le nouvel utilisateur au système d'appartenance (membership) d'ASP.NET.

Le contrôle CreateUserWizard recueille les informations utilisateur suivantes :

  • Nom d'utilisateur

  • Mot de passe

  • Confirmation du mot de passe

  • Adresse de messagerie

  • Question de sécurité

  • Réponse de sécurité

Ces informations sont utilisées pour authentifier les utilisateurs et récupérer leurs mots de passe, si nécessaire.

RemarqueRemarque

Le contrôle CreateUserWizard est hérité du contrôle Wizard.

L'exemple suivant affiche une déclaration ASP.NET typique pour le contrôle CreateUserWizard :

<asp:CreateUserWizard ID="CreateUserWizard1" Runat="server" 
    ContinueDestinationPageUrl="~/Default.aspx">
  <WizardSteps>
    <asp:CreateUserWizardStep Runat="server" 
      Title="Sign Up for Your New Account">
    </asp:CreateUserWizardStep>
    <asp:CompleteWizardStep Runat="server" 
      Title="Complete">
    </asp:CompleteWizardStep>
  </WizardSteps>
</asp:CreateUserWizard>

Le contrôle ChangePassword permet aux utilisateurs de modifier leur mot de passe. L'utilisateur doit d'abord fournir le mot de passe d'origine, puis créer et confirmer le nouveau mot de passe. Si le mot de passe d'origine est correct, le nouveau mot de passe devient le mot de passe de l'utilisateur. Le contrôle inclut aussi l'assistance pour l'envoi d'un message électronique relatif au nouveau mot de passe.

Le contrôle ChangePassword inclut deux affichages à base de modèles et proposés à l'utilisateur. Le premier est ChangePasswordTemplate, qui affiche l'interface utilisateur employée pour rassembler les données requises pour modifier le mot de passe de l'utilisateur. Le deuxième modèle est SuccessTemplate, qui définit l'interface utilisateur affichée après qu'un mot de passe de l'utilisateur a été modifié avec succès.

Le contrôle ChangePassword fonctionne avec les utilisateurs authentifiés et non authentifiés. Si un utilisateur n'a pas été authentifié, le contrôle l'invite à entrer un nom de connexion. Si l'utilisateur est authentifié, le contrôle remplit la zone de texte avec son nom de connexion.

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft. Tous droits réservés.