Share via


Procédure pas à pas : création d'un site Web avec appartenance et connexion utilisateur

Mise à jour : novembre 2007

La limitation de l'autorisation de consulter certaines pages à quelques membres et à d'autres utilisateurs authentifiés est une condition de sécurité courante des sites Web. Dans ce cas, l'application doit inviter l'utilisateur à entrer un nom et un mot de passe. L'application doit également inclure une façon de masquer les informations provenant d'utilisateurs anonymes (utilisateurs qui ne sont pas connectés). Cette procédure pas à pas vous illustre comment utiliser des contrôles ASP.NET et les services d'appartenance d'ASP.NET pour créer une application qui effectue toutes ces tâches. Pour plus d'informations, consultez Introduction à l'appartenance (membership).

Cette procédure pas à pas illustre les tâches suivantes :

  • Configuration d'une application afin d'inclure des services d'appartenance d'ASP.NET et définition des utilisateurs.

  • Utilisation de contrôles de connexion afin d'obtenir les informations d'identification de l'utilisateur et d'afficher les informations aux utilisateurs connectés.

  • Protection d'une ou plusieurs pages dans votre application afin que seuls les utilisateurs connectés puissent les consulter.

  • Autorisation d'inscription à votre site accordée à de nouveaux utilisateurs.

  • Autorisation de modification et de réinitialisation de leurs mots de passe.

Composants requis

Pour exécuter cette procédure pas à pas, vous avez besoin de :

  • Microsoft Visual Web Developer.

  • Services IIS (Microsoft Internet Information Services) installés localement sur votre ordinateur.

  • SQL Server Express installé en local sur votre ordinateur.

  • Microsoft Data Access Components (MDAC) version 2.7 ou ultérieure. Si vous utilisez Microsoft Windows XP ou Windows Server 2003, MDAC 2.7 est déjà installé. Toutefois, si vous utilisez Microsoft Windows 2000, vous devez peut-être mettre à niveau les composants MDAC déjà installés sur votre ordinateur. Pour plus d'informations, consultez l'article « Microsoft Data Access Components (MDAC) Installation » dans MSDN Library.

  • Accéder à un serveur de messagerie qui peut transférer des messages électroniques. (Il n'est pas nécessaire que le serveur soit capable de recevoir des messages.) IIS inclut le serveur virtuel SMTP par défaut, un serveur de messagerie qui convient à cette procédure pas à pas. Pour plus d'informations sur la configuration de ce serveur, consultez Comment : installer et configurer des serveurs virtuels SMTP dans IIS 6.0. Si vous travaillez sur un réseau local, contactez votre administrateur réseau pour plus d'informations sur l'accès à un serveur de messagerie.

Création du site Web

Si vous avez déjà créé un site Web dans Microsoft Visual Studio (par exemple, à l'aide de la rubrique Procédure pas à pas : création d'une page Web de base dans Visual Web Developer), vous pouvez utiliser ce site et passer à l'étape « Configuration de l'appartenance » de cette procédure. Sinon, créez un site et une page Web en suivant ces étapes.

Pour créer un site Web IIS local

  1. Ouvrez Visual Studio.

  2. Dans le menu Fichier, cliquez sur Nouveausite Web.

    La boîte de dialogue Nouveau site Web s'affiche.

  3. Sous Modèles Visual Studio installés, sélectionnez Site Web ASP.NET.

  4. Dans la zone de liste Emplacement, cliquez sur HTTP. Cliquez sur Parcourir.

    La boîte de dialogue Choisir un emplacement s'affiche.

  5. Sélectionnez Serveur IIS local.

  6. Ouvrez Serveurs Web locaux.

  7. Sélectionnez Site Web par défaut.

  8. Cliquez sur l'icône Créer une application Web (Bouton Créer une application Web) au-dessus de la liste de sites Web puis nommez le nouveau site Web appartenance.

  9. Cliquez sur Ouvrir.

    La boîte de dialogue Choisir un emplacement s'affiche.

  10. Dans la zone Langages, cliquez sur le langage de programmation que vous préférez utiliser.

    Le langage de programmation que vous choisissez sera la valeur par défaut pour votre site Web, mais vous pouvez définir individuellement les langages de programmation pour chaque page.

  11. Cliquer sur OK dans la boîte de dialogue Nouveau site Web

    Visual Web Developer crée le site Web et une page nommée Default.aspx.

Configuration de l'appartenance

À une étape ultérieure de cette procédure, vous mettrez des pages dans un sous-répertoire qui est protégé. Vous devez créer le sous-répertoire maintenant afin que vous puissiez configurer sa sécurité ultérieurement dans la procédure pas à pas.

Pour ajouter un nouveau dossier au site Web

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le nom de votre site Web, puis cliquez sur Nouveau dossier.

  2. Nommez le dossier PagesMembres.

Avant d'utiliser l'appartenance d'ASP.NET, vous devez configurer votre application afin d'activer l'appartenance et de définir des utilisateurs. Vous pouvez utiliser l'outil Administration de site Web qui fournit une interface assistant pour définir des paramètres de configuration. Lorsque vous complétez l'Assistant Installation, une base de données SQL Server nommée ASPNETDB.MDF est créée dans le dossier App_Data du projet.

Pour cette procédure pas à pas, vous définirez un mono-utilisateur.

Pour créer un utilisateur d'appartenance

  1. Dans le menu Site Web, cliquez sur Configuration ASP.NET.

  2. Sélectionnez l'onglet Sécurité, cliquez sur le lien vers Utilisez l'Assistant Installation de sécurité pour configurer la sécurité étape par étape, puis cliquez sur Suivant.

  3. Passez à l'étape 2 de l'Assistant et sélectionnez l'option À partir d'Internet.

    L'Assistant affiche une page dans laquelle vous pouvez sélectionner la méthode d'authentification que votre site Web utilisera. Cette option spécifie que votre application utilisera l'authentification par formulaire, dans laquelle les utilisateurs se connecteront à l'application à l'aide d'une page de connexion que vous créerez à une étape ultérieure de cette procédure.

  4. Cliquez sur Suivant.

    L'Assistant affiche un message qui déclare que les informations utilisateur seront stockées à l'aide de Paramètres avancés des fournisseurs. Par défaut, les informations d'appartenance sont stockées dans un fichier de base de données Microsoft SQL Server Express dans le dossier App_Data de votre site Web.

  5. Cliquez sur Suivant.

    L'Assistant affiche une option pour créer des rôles. Vous effectuerez cette étape séparément à une étape ultérieure de cette procédure pas à pas. Par conséquent, n'activez pas la case à cocher Active les rôles pour ce site Web.

  6. Cliquez sur Suivant.

    L'Assistant affiche une page dans laquelle vous pouvez créer de nouveaux utilisateurs.

  7. Entrez les informations qui définissent un utilisateur de votre application. Utilisez les valeurs suivantes comme indications (vous pouvez utiliser toutes valeurs que vous souhaitez, mais assurez-vous de noter vos entrées pour une étape ultérieure de la procédure pas à pas) :

    • Nom d'utilisateur   Votre nom (sans espaces) ou un nom d'exemple.

    • Mot de passe   Un mot de passe. Un mot de passe fort est requis (mot de passe qui inclut des majuscules et des minuscules, un signe de ponctuation et qui comprend au moins huit caractères).

    • Adresse de messagerie   Votre adresse de messagerie personnelle. À une étape ultérieure de cette procédure pas à pas, vous vous enverrez un message électronique, vous avez donc besoin d'une adresse de messagerie valable.

    • Question de sécurité et Réponse de sécurité   Tapez une question et une réponse à la question qui puissent être utilisées ultérieurement si vous avez besoin de récupérer votre mot de passe.

  8. Cliquez sur Créer un utilisateur.

    L'Assistant affiche une page de confirmation.

    Remarque :

    Gardez l'outil Administration de site Web ouvert.

Précédemment dans la procédure pas à pas, vous avez créé un dossier nommé PagesMembres. Dans cette partie de la procédure pas à pas, vous créerez une règle qui assure que seuls les utilisateurs connectés peuvent accéder aux pages de ce dossier.

Pour définir des règles d'accès pour le sous-répertoire PagesMembres

  1. Dans l'Assistant, cliquez sur Suivant.

    L'Assistant affiche une page qui vous permet de créer des règles d'accès.

  2. Dans la zone Ajouter une nouvelle règle d'accès, développez le nœud de votre site Web.

  3. Sélectionnez PagesMembres, le dossier que vous avez créé précédemment.

  4. Sous La règle s'applique à, sélectionnez Utilisateurs anonymes.

  5. Sous Autorisation, sélectionnez Refuser.

    La règle que vous créez refuse l'accès aux utilisateurs anonymes, c'est-à-dire les utilisateurs qui ne sont pas connectés.

  6. Cliquez sur Ajouter cette règle.

    La nouvelle règle est affichée dans la grille au-dessous. Lorsque les utilisateurs demandent une page du sous-répertoire PagesMembres, les règles sont vérifiées pour déterminer si l'accès à la page est autorisé à l'utilisateur.

  7. Cliquez sur Terminer.

    Vous en avez maintenant fini avec l'Assistant. L'Assistant ferme et vous revenez à l'onglet Sécurité de l'outil Administration de site Web.

Configuration de l'application pour la messagerie électronique

Pour la partie de cette procédure pas à pas, l'application doit être capable d'envoyer des messages électroniques. Pour envoyer des messages, votre application doit avoir accès à un serveur SMTP (Simple Mail Transfer Protocol) qui transfère des messages électroniques de votre application à un destinataire de messagerie électronique.

IIS inclut le serveur virtuel SMTP par défaut comme composant facultatif, ce qui convient à cette procédure pas à pas. Pour plus d'informations sur la configuration de ce serveur, consultez Comment : installer et configurer des serveurs virtuels SMTP dans IIS 6.0. Si vous travaillez sur un réseau local, contactez votre administrateur réseau pour plus d'informations sur l'accès à un serveur de messagerie.

Après avoir configuré un serveur SMTP ou déterminé comment y accéder, vous devez configurer votre application pour router des messages électroniques vers ce serveur. Vous pouvez le faire en créant une entrée dans le fichier Web.config de votre site Web qui contient une série de paramètres qui déterminent l'exécution de votre application.

Pour configurer l'application afin d'utiliser un serveur SMTP spécifique

  1. Dans l'outil Administration de site Web, cliquez sur l'onglet Application.

  2. Sous Paramètres SMTP, cliquez sur Configurer les paramètres de messagerie SMTP.

    L'outil affiche une page dans laquelle vous pouvez configurer la messagerie électronique.

  3. Si vous utilisez le serveur virtuel SMTP qui est sur votre ordinateur, entrez localhost comme Nom du serveur ; sinon, entrez le nom de serveur approprié.

    Incluez les informations relatives au numéro de port et à l'authentification selon la configuration requise de votre serveur SMTP. Consultez votre administrateur pour plus d'informations sur la configuration de ces paramètres.

  4. Dans la zone De, tapez une adresse de messagerie valide.

  5. Cliquez sur Enregistrer et dans la page de confirmation, cliquez sur OK.

    L'outil Administration de site Web crée un fichier Web.config (s'il n'existe pas déjà) avec les paramètres que vous avez définis.

    Remarque :

    Le fichier Web.config n'apparaîtra pas dans l'Explorateur de solutions avant que vous actualisiez l'affichage.

  6. Fermez l'outil Administration de site Web.

Connexion de l'utilisateur

Dans le cadre de votre application, vous devez établir l'identité de l'utilisateur afin que l'application puisse effectuer des actions, telles que l'affichage ou le masquage des informations, selon l'identité de l'utilisateur. Pour obtenir l'identité de l'utilisateur, l'utilisateur doit être connecté.

Dans cette procédure pas à pas, vous ajouterez un lien sur la page d'accueil qui mène les utilisateurs à une page de connexion, puis vous créerez la page de connexion.

Pour créer une page d'accueil avec un bouton de connexion

  1. Ouvrez ou basculez vers la page Default.aspx de votre site. (Si vous n'avez pas de page Default.aspx, vous pouvez en ajouter une ou utiliser une page différente.)

  2. Basculez en mode Design.

  3. Tapez le texte statique tel que Bienvenue sur notre site et dans la barre d'outils Mise en forme, utilisez la liste déroulante Format du bloc pour mettre en forme le texte en Heading 1.

  4. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle LoginStatus sur la page.

Par défaut, le contrôle LoginStatus est affiché comme un lien. Lorsque les utilisateurs cliquent sur ce dernier, l'application affiche une page de connexion. Vous pouvez à présent créer la page de connexion.

Pour créer une page de connexion

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur votre application Web, puis sélectionnez Ajouter un nouvel élément. Ajoutez un Formulaire Web nommé Login.aspx à votre site.

    Remarque :

    Pour cette procédure pas à pas, la page doit être nommée Login.aspx. Par défaut, l'authentification par formulaire est configurée pour utiliser une page portant ce nom. Même si vous n'aurez pas à le faire dans cette procédure pas à pas, il est possible de modifier la page de connexion par défaut, c'est-à-dire la page vers laquelle les utilisateurs sont redirigés, dans le fichier Web.config.

  2. Dans la page Login.aspx, basculez en mode Design.

  3. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle Login sur la page.

    Le contrôle Login est un contrôle unique qui invitera l'utilisateur à entrer les informations d'identification et les validera.

Affichage des erreurs de connexion

Le contrôle Login inclut la validation qui aide les utilisateurs à entrer des informations correctes. Par exemple, si un utilisateur ignore le mot de passe, un contrôle de validateur affiche un astérisque (*) en regard de la zone Mot de passe. Vous pouvez fournir des informations plus complètes sur les erreurs de connexion en ajoutant un contrôle ValidationSummary à la page.

Pour afficher des informations détaillées sur les erreurs de connexion

  1. À partir du groupe Validation de la Boîte à outils, faites glisser un contrôle ValidationSummary sur la page.

  2. Dans la fenêtre Propriétés pour le contrôle ValidationSummary, affectez Login1, qui est l'ID par défaut du contrôle Login que vous avez ajouté précédemment, à la propriété ValidationGroup .

Affichage d'informations pour les utilisateurs connectés

Vous allez maintenant modifier la page d'accueil pour personnaliser l'affichage selon que l'utilisateur est connecté ou non. Les utilisateurs anonymes verront un message générique qui les invite à se connecter. Les utilisateurs connectés verront un message qui les accueille par leur nom de connexion.

Pour personnaliser l'affichage pour les utilisateurs connectés

  1. Basculez vers la page Default.aspx ou ouvrez-la.

  2. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle LoginView sur la page.

    Le contrôle LoginView est affiché avec son modèle AnonymousTemplate ouvert. Ce modèle vous permet de définir le contenu que les utilisateurs verront avant qu'ils se soient connectés.

  3. Cliquez sur la zone d'édition du contrôle LoginView pour activer l'édition.

  4. Dans la zone d'édition du modèle AnonymousTemplate du contrôle LoginView, tapez Vous n'êtes pas connecté. Cliquez sur le lien Connexion pour vous inscrire.

  5. Dans le panneau Tâches LoginView, dans la liste Affichages, cliquez sur LoggedInTemplate. Si vous ne voyez pas le panneau Tâches LoginView, cliquez avec le bouton droit sur le titre du contrôle LoginView et sélectionnez Afficher la balise active.

    Vous définissez à présent le contenu qui sera affiché aux utilisateurs qui se sont déjà connectés.

  6. Cliquez sur la zone d'édition du contrôle LoginView pour activer l'édition, puis tapez Vous êtes connecté. Bienvenue,

  7. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle LoginName sur le modèle après le texte.

Test de la connexion

Vous pouvez à présent tester la fonction de connexion de votre application.

Pour tester la connexion

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur Default.aspx, puis cliquez sur Définir comme page de démarrage.

    Cela configure le site Web de sorte que, lorsque vous exécutez le site, la page Default.aspx apparaisse en premier.

  2. Appuyez sur CTRL+F5 pour exécuter le site Web.

    La page d'accueil (Default.aspx) s'affiche dans le navigateur, en affichant le lien Connexion et le message générique.

  3. Cliquez sur le lien Connexion.

    La page de connexion que vous avez créée est affichée.

  4. Tapez le nom de connexion de l'utilisateur que vous avez créé précédemment dans la procédure pas à pas, puis cliquez sur Se connecter. (N'entrez pas encore de mot de passe.)

    Un astérisque (*) est affiché en regard de la zone Mot de passe et un message d'erreur est affiché dans le contrôle ValidationSummary.

  5. Entrez un nom d'utilisateur et un mot de passe puis cliquez sur Se connecter.

    Si vous avez entré des informations d'identification correctes, vous revenez à la page d'accueil. La page affiche maintenant un lien Déconnexion, votre nom d'utilisateur et le message d'accueil que vous avez défini pour l'utilisateur connecté.

  6. Fermez le navigateur.

Limitation de l'accès aux pages réservées aux membres

Une tâche type dans de nombreux sites Web consiste à configurer des pages afin que seuls les utilisateurs connectés puissent les consulter. Précédemment dans cette procédure pas à pas, vous avez créé le sous-répertoire PagesMembres ainsi qu'une règle qui limite l'accès aux pages dans le sous-répertoire. Dans cette section de la procédure pas à pas, vous ajouterez une page au sous-répertoire protégé et testerez la règle d'accès.

Pour créer les pages réservées aux membres

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le dossier PagesMembres, cliquez sur Ajouter un nouvel élément et ajoutez un nouveau formulaire Web nommé Members.aspx.

    Remarque :

    Veillez à créer la page dans le dossier PagesMembres.

  2. En mode Design, ajoutez le texte à la page, comme Bienvenue aux membres ! Le texte exact importe peu, tant que vous serez en mesure de reconnaître cette page lorsque vous la verrez dans le navigateur.

Vous pouvez à présent ajouter un lien vers les pages réservées aux membres à partir de la page d'accueil. Dans une application réelle, vous mettriez probablement le lien des pages réservées aux membres dans le modèle connecté du contrôle LoginView. De cette façon, les visiteurs de votre site ne verraient pas le lien avant de s'être connectés. Pour cette procédure pas à pas, toutefois, vous rendrez le lien disponible à tous les utilisateurs afin que vous puissiez voir ce qui se passe lorsque vous essayez de consulter des pages réservées aux membres sans être connecté.

Pour ajouter un lien vers les pages réservées aux membres

  1. Basculez vers la page Default.aspx ou ouvrez-la.

  2. À partir du groupe Standard de la Boîte à outils, faites glisser un contrôle HyperLink sur la page.

  3. Dans la fenêtre Propriétés pour le contrôle HyperLink, affectez page Membres à la propriété Text et ~/PagesMembres/Members.aspx à la propriété href pour indiquer la page que vous avez créée précédemment.

Test de la page réservée aux membres

Vous pouvez tester les pages réservées aux membres en y accédant comme utilisateur anonyme ou utilisateur connecté.

Pour tester les pages réservées aux membres

  1. Appuyez sur CTRL+F5 pour exécuter le site Web.

  2. Lorsque la page Default.aspx s'affiche dans le navigateur, ne vous connectez pas. À la place, cliquez sur le lien page Membres.

    Vous êtes redirigés vers la page Login.aspx parce que l'accès à la page des membres est refusé pour les utilisateurs anonymes.

  3. Dans la page de connexion, entrer le nom d'utilisateur et le mot de passe que vous avez utilisés précédemment dans la procédure pas à pas pour vous connecter.

    Vous êtes redirigés vers la page Members.aspx car le nom d'utilisateur avec lequel vous vous êtes connecté a été autorisé à accéder à la page.

  4. Fermez la fenêtre de navigateur.

Création d'utilisateurs.

Dans la première partie de la procédure pas à pas, vous avez créé un utilisateur avec l'outil Administration de site Web. Cette stratégie est utile si vous utilisez une petite liste définie d'utilisateurs ; par exemple, si vous créez des utilisateurs pour une petite équipe. Dans de nombreux sites Web, toutefois, les utilisateurs sont autorisés à s'inscrire. ASP.NET inclut le contrôle CreateUserWizard qui exécute la même tâche que vous avez effectué précédemment à l'aide de l'outil Administration de site Web.

Dans cette partie de la procédure pas à pas, vous ajouterez une fonctionnalité qui permet aux utilisateurs de s'inscrire sur votre site Web. Pour commencer, vous créerez une page d'inscription.

Pour créer une page d'inscription

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le nom de votre site Web, cliquez sur Ajouter un nouvel élément et ajoutez un nouveau formulaire Web nommé Register.aspx.

    Remarque :

    Veillez à créer la page à la racine du site Web et non dans le dossier PagesMembres.

  2. Dans la page Register.aspx, basculez en mode Design et tapez le texte statique tel que Inscription dans la page. Dans la barre d'outils Mise en forme, utilisez la liste déroulante Format du bloc pour mettre en forme le texte en Heading 1.

  3. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle CreateUserWizard sur la page.

  4. Dans la fenêtre Propriétés pour le contrôle CreateUserWizard, affectez ~/Default.aspx à la propriété ContinueDestinationPageUrl.

    Cela configure le contrôle afin que lorsque les utilisateurs cliquent sur Continuer après avoir créé un utilisateur, le contrôle retourne à la page d'accueil.

  5. À partir du groupe Standard de la Boîte à outils, faites glisser un contrôle HyperLink sur la page. Dans la fenêtre Propriétés pour le contrôle HyperLink, affectez Accueil à la propriété Text et ~/Default.aspx à la propriété href.

Vous pouvez à présent ajouter un lien vers la page d'accueil qui affiche la page d'inscription. Pour cette procédure pas à pas, supposez que vous souhaitez afficher le lien d'inscription uniquement aux utilisateurs qui ne sont pas connectés.

Pour créer un lien d'inscription sur la page d'accueil

  1. Basculez vers la page Default.aspx ou ouvrez-la.

  2. Cliquez avec le bouton droit sur le contrôle LoginView ajouté précédemment, puis sélectionnez Afficher la balise active. Dans le panneau Tâches LoginView, sélectionnez AnonymousTemplate dans la zone de liste Affichages pour activer l'édition dans le modèle anonyme.

  3. À partir du groupe Standard de la Boîte à outils, faites glisser un contrôle HyperLink sur le modèle anonyme. Dans la fenêtre Propriétés pour le contrôle HyperLink, affectez Inscription à la propriété Text et Register.aspx à la propriété href. Le lien Inscription sera affiché uniquement aux utilisateurs qui ne sont pas connectés.

Vous pouvez à présent tester le processus d'inscription.

Pour tester l'inscription

  1. Appuyez sur CTRL+F5 pour exécuter le site Web et afficher la page Default.aspx.

    Étant donné que vous n'êtes pas connecté, la page contenant le lien Inscription est affichée.

  2. Cliquez sur le lien Inscription.

    La page d'inscription est affichée.

  3. Dans les zones de texte, entrez un nouveau nom d'utilisateur, un mot de passe fort, une adresse de messagerie, une question de sécurité et sa réponse. (Les cinq renseignements sont requis.)

  4. Cliquez sur Créer un utilisateur.

    Un message de confirmation est affiché.

  5. Cliquez sur le bouton Continuer.

    Vous revenez à la page d'accueil en tant qu'utilisateur connecté. Notez que le lien Connexion s'est transformé en Déconnexion et que les informations affichées dans le contrôle Login proviennent de la propriété LoggedInTemplate et non de la propriété AnonymousTemplate.

  6. Cliquez sur le lien Connexion.

    La page change pour afficher les informations pour les utilisateurs anonymes.

  7. Cliquez sur le lien Connexion.

  8. Entrez les informations d'identification de l'utilisateur que vous venez de créer.

    Vous êtes connecté en tant que nouvel utilisateur.

  9. Fermez la fenêtre de navigateur.

Modification de mots de passe

Il arrive que les utilisateurs souhaitent modifier leur mot de passe et il est souvent difficile d'effectuer cette tâche manuellement. Vous pouvez donc utiliser un autre contrôle ASP.NET pour permettre aux utilisateurs de modifier leur mot de passe seuls. Pour modifier un mot de passe, les utilisateurs doivent connaître leur mot de passe.

Dans cette procédure pas à pas, vous ajouterez une page dans laquelle les utilisateurs connectés peuvent modifier leur mot de passe.

Pour créer une page de modification de mot de passe

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le dossier PagesMembres, cliquez sur Ajouter un nouvel élément et ajoutez un nouveau formulaire Web nommé ChangePassword.aspx.

    Remarque :

    Veillez à créer la page dans le dossier PagesMembres.

    Vous mettez la page dans le dossier réservé aux membres parce que seuls les utilisateurs connectés peuvent modifier leur mot de passe.

  2. Dans la page ChangePassword.aspx, basculez en mode Design et tapez du texte statique tel que Modifier le mot de passe. Dans la barre d'outils Mise en forme, utilisez la liste déroulante Format du bloc pour mettre en forme le texte en Heading 1.

  3. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle ChangePassword sur la page.

  4. Dans la fenêtre Propriétés pour le contrôle ChangePassword, affectez ~/Default.aspx à la propriété ContinueDestinationPageUrl.

  5. Cela configure le contrôle de sorte que, lorsque les utilisateurs cliquent sur Continuer après avoir modifié un mot de passe, le contrôle retourne à la page d'accueil.

Vous pouvez à présent ajouter un lien vers la page d'accueil qui affiche la page de modification de mot de passe. Vous rendrez le lien disponible uniquement aux utilisateurs qui sont connectés.

Pour créer un lien de modification de mot de passe sur la page d'accueil

  1. Basculez vers la page Default.aspx ou ouvrez-la.

  2. Cliquez avec le bouton droit sur le contrôle LoginView, puis cliquez sur Afficher la balise active. Dans le menu Tâches LoginView, dans la liste Affichages, cliquez sur LoggedInTemplate.

    Cela bascule le contrôle LoginView en mode édition pour le contenu qui s'affichera aux utilisateurs qui sont connectés.

  3. À partir du groupe Standard de la Boîte à outils, faites glisser un contrôle HyperLink sur la zone d'édition. Dans la fenêtre Propriétés, pour le contrôle HyperLink, affectez Modifier le mot de passe à la propriété Text et ~/PagesMembres/ChangePassword.aspx à la propriété href.

    Le lien Modifier le mot de passe sera affiché uniquement aux utilisateurs qui sont connectés, contrairement au lien Inscription que vous avez créé précédemment.

Vous pouvez à présent tester le processus de modification de mot de passe.

Pour tester la modification de mot de passe

  1. Appuyez sur CTRL+F5 pour exécuter le site Web.

  2. Dans la page Default.aspx, cliquez sur le lien Connexion et connectez-vous en tant qu'un des utilisateurs que vous avez créés.

    Lorsque vous avez terminé, vous revenez à la page d'accueil en tant qu'utilisateur connecté.

  3. Cliquez sur le lien Modifier le mot de passe.

  4. Dans la page de modification de mot de passe, entrez l'ancien mot de passe et le nouveau mot de passe, puis cliquez sur Modifier le mot de passe.

  5. Cliquez sur Continuer.

  6. Dans la page d'accueil, cliquez sur Déconnexion.

  7. Cliquez sur le lien Connexion.

  8. Entrez le nouveau mot de passe.

    Vous vous connectez avec le nouveau mot de passe.

  9. Fermez la fenêtre de navigateur.

Récupération d'un mot de passe

Il arrive que les utilisateurs oublient leur mot de passe. Vous pouvez ajouter une page de récupération du mot de passe à votre site Web afin qu'ils puissent de nouveau se connecter à votre site. La récupération de mot de passe peut prendre deux formes :

  • Vous pouvez envoyer aux utilisateurs le mot de passe qu'ils ont sélectionné (ou que vous avez créé pour eux lorsque vous avez configuré le site). Cette option requiert que le site stocke le mot de passe en utilisant le chiffrement réversible.

  • Vous pouvez envoyer aux utilisateurs un nouveau mot de passe qu'ils peuvent modifier à l'aide de la page Modifier le mot de passe que vous avez créée précédemment. Cette option est utile si le site Web stocke des mots de passe à l'aide d'une méthode de chiffrement non réversible telle que le hachage.

Remarque :

Retourner un mot de passe en texte clair par message électronique n'est pas recommandé pour les sites qui requièrent un niveau élevé de sécurité. Pour les sites au niveau de sécurité élevé, il est recommandé de retourner des mots de passe chiffrés, avec SSL (Secure Sockets Layer) par exemple.

Par défaut, le système d'appartenance (membership) d'ASP.NET sécurise des mots de passe par hachage, ce qui signifie que les mots de passe ne peuvent pas être récupérés. Par conséquent, dans cette partie de la procédure pas à pas, votre site Web enverra un nouveau mot de passe aux utilisateurs.

Remarque :

La récupération de mot de passe requiert que votre site Web puisse envoyer des messages électroniques. Si vous n'êtes pas en mesure de configurer votre site Web pour envoyer des messages (comme l'explique « Configuration de l'application pour la messagerie électronique » dans cette procédure pas à pas), vous ne serez pas en mesure d'ajouter la récupération de mot de passe à votre site.

Pour ajouter la récupération de mot de passe

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le nom de votre site Web, cliquez sur Ajouter un nouvel élément et ajoutez un nouveau formulaire Web nommé RecoverPassword.aspx.

    Remarque :

    Veillez à créer la page à la racine du site Web et non dans le dossier PagesMembres.

  2. Dans la page RecoverPassword.aspx, basculez en mode Design et tapez du texte statique tel que Redéfinir la valeur de mon mot de passe. Dans la barre d'outils Mise en forme, utilisez la liste déroulante Format du bloc pour mettre en forme le texte en Heading 1.

  3. À partir du groupe Connexion de la Boîte à outils, faites glisser un contrôle PasswordRecovery sur la page.

  4. À partir du groupe Standard de la Boîte à outils, faites glisser un contrôle HyperLink sur la page. Dans la fenêtre Propriétés pour le contrôle HyperLink, affectez Accueil à la propriété Text et ~/Default.aspx à la propriété href.

  5. Basculez vers la page Default.aspx.

  6. Cliquez avec le bouton droit sur le contrôle LoginView, puis cliquez sur Afficher la balise active. Dans le menu Tâches LoginView, dans la liste Affichages, cliquez sur AnonymousTemplate.

    Cela bascule le contrôle LoginView en mode édition pour le contenu qui s'affichera aux utilisateurs qui ne sont pas connectés.

  7. À partir du groupe Standard de la Boîte à outils, faites glisser un contrôle HyperLink sur le modèle. Dans la fenêtre Propriétés, pour le contrôle HyperLink, affectez Vous avez oublié votre mot de passe ? à la propriété Text et ~/RecoverPassword.aspx à la propriété href.

Vous pouvez à présent tester la récupération de mot de passe.

Pour tester la récupération de mot de passe

  1. Appuyez sur CTRL+F5 pour exécuter le site Web.

  2. Par défaut, vous n'êtes pas connecté, vous consultez donc le modèle anonyme du contrôle LoginView.

  3. Cliquez sur le lien Vous avez oublié votre mot de passe ?.

    La page RecoverPassword.aspx s'affiche.

  4. Tapez votre nom d'utilisateur et cliquez sur Envoyer.

    La question de sécurité est affichée et vous êtes invités à taper la réponse à la question de sécurité.

  5. Tapez la réponse et cliquez sur Envoyer.

    Si vous avez entré une réponse correcte, le site Web réinitialise votre mot de passe et vous envoie un message électronique avec le nouveau mot de passe.

Étapes suivantes

Cette procédure pas à pas a illustré un scénario simple mais complet de création d'une application qui invite les utilisateurs à entrer des informations d'identification, affiche des informations aux utilisateurs connectés, permet aux utilisateurs de récupérer un mot de passe oublié et limite l'accès aux pages. Vous pouvez créer des pages et des applications plus sophistiquées en utilisant les techniques et les contrôles illustrés dans cette procédure pas à pas. Vous pouvez, par exemple, souhaiter effectuer les opérations suivantes :

Voir aussi

Concepts

Introduction à l'appartenance (membership)