Condividi tramite


Procedura dettagliata: creazione di un sito Web con appartenenza e accesso utente

Aggiornamento: novembre 2007

In genere, nei siti Web, la visualizzazione di determinate pagine è consentita solo ad alcuni membri oppure a utenti autenticati. In quel caso, nell'applicazione viene richiesto all'utente di specificare un nome e una password. Inoltre, nell'applicazione deve essere incluso un metodo per nascondere le informazioni agli utenti anonimi (utenti non connessi). In questa procedura dettagliata viene illustrato come utilizzare i controlli ASP.NET e i servizi di appartenenza ASP.NET per creare un'applicazione che esegua tutte queste operazioni. Per ulteriori informazioni, vedere la classe Introduzione all'appartenenza.

Di seguito sono elencate le attività illustrate nella procedura dettagliata:

  • Configurazione di un'applicazione in modo che includa i servizi di appartenenza ASP.NET e modalità di definizione degli utenti.

  • Utilizzo dei controlli di accesso per ottenere le credenziali dell'utente e per visualizzare informazioni agli utenti connessi.

  • Protezione di una o più pagine contenute nell'applicazione per consentirne la visualizzazione soltanto agli utenti connessi.

  • Procedura per consentire ai nuovi utenti la registrazione al sito.

  • Procedura per consentire agli utenti membri la modifica delle password.

Prerequisiti

Per completare questa procedura dettagliata è necessario:

  • Microsoft Visual Web Developer.

  • Microsoft Internet Information Services (IIS) installato nel computer locale.

  • SQL Server Express Edition installato nel computer locale.

  • Microsoft Data Access Components (MDAC) 2.7 o versione successiva. Se si utilizza Microsoft Windows XP o Windows Server 2003, si dispone già di MDAC 2.7. Tuttavia, se si utilizza Microsoft Windows 2000, potrebbe essere necessario aggiornare la versione di MDAC già installata nel computer. Per ulteriori informazioni, vedere l'articolo "Microsoft Data Access Components (MDAC) Installation" in MSDN Library.

  • Accesso a un server di posta elettronica che consente di inoltrare messaggi di posta elettronica (non è necessario che si tratti di un server in grado di ricevere messaggi). IIS include il server virtuale SMTP predefinito, un server di posta elettronica indicato per questa procedura dettagliata. Per ulteriori informazioni sulla configurazione di questo server, vedere Procedura: installare e configurare server virtuali SMTP in IIS 6.0. Se si lavora in una rete locale, verificare con l'amministratore di rete le informazioni relative all'accesso a un server di posta elettronica.

Creazione del sito Web

Se è già stato creato un sito Web in Microsoft Visual Studio (ad esempio, utilizzando l'argomento Procedura dettagliata: creazione di una pagina Web di base in Visual Web Developer ), è possibile utilizzare quel sito Web e passare alla "Configurazione dell'appartenenza" più avanti nella procedura dettagliata. In caso contrario, creare un sito e una pagina Web nuovi attenendosi alla procedura riportata di seguito.

Per creare un sito Web IIS locale

  1. Aprire Visual Studio.

  2. Scegliere Nuovosito Web dal menu File.

    Viene visualizzata la finestra di dialogo Nuovo sito Web.

  3. In Modelli Visual Studio installati fare clic su Sito Web ASP.NET.

  4. Nella casella di riepilogo Percorso, selezionare HTTP. Scegliere Sfoglia.

    Verrà visualizzata la finestra di dialogo Scegli percorso.

  5. Selezionare IIS locale.

  6. Aprire Server Web locali.

  7. Selezionare Sito Web predefinito.

  8. Fare clic sull'icona Crea nuova applicazione Web (Pulsante Crea nuova applicazione Web) riportata sopra l'elenco dei siti Web, quindi denominare il nuovo sito Web membership.

  9. Scegliere Apri.

    La finestra di dialogo Scegli percorso viene chiusa.

  10. Nella casella Linguaggio, fare clic sul linguaggio di programmazione da utilizzare.

    Il linguaggio di programmazione scelto sarà il linguaggio predefinito per il sito Web; tuttavia, è possibile impostare i linguaggi di programmazione per ogni pagina singolarmente.

  11. Scegliere OK nella finestra di dialogo Nuovo sito Web.

    In Visual Web Developer saranno creati il sito Web e una nuova pagina denominata Default.aspx.

Configurazione dell'appartenenza

Più avanti nella procedura dettagliata, saranno inserite delle pagine in una sottodirectory protetta. È necessario creare la sottodirectory in questa fase in modo da poterne configurare la sicurezza più avanti nella procedura dettagliata.

Per aggiungere una nuova cartella al sito Web

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del sito Web, quindi scegliere Nuova cartella.

  2. Denominare la cartella MemberPages.

Prima di utilizzare l'appartenenza ASP.NET, è necessario configurare l'applicazione in modo da attivare l'appartenenza e configurare gli utenti. È possibile utilizzare lo Strumento di amministrazione sito Web in cui è fornita un'interfaccia simile a una procedura guidata per eseguire le impostazioni di configurazione. Al termine dell'installazione guidata, il sistema crea nella cartella App_Data del progetto un database SQL Server denominato ASPNETDB.MDF.

Per questa procedura dettagliata, sarà definito un singolo utente.

Per creare un utente di appartenenza

  1. Dal menu Sito Web scegliere Configurazione di ASP.NET.

  2. Selezionare la scheda Sicurezza, fare clic sul collegamento Utilizzare la Configurazione guidata sicurezza per configurare la sicurezza mediante passaggi successivi e fare clic su Avanti.

  3. Procedere al passaggio 2 della procedura guidata e selezionare l'opzione Da Internet.

    Nella procedura guidata viene visualizzata una pagina in cui è possibile selezionare il metodo di autenticazione che sarà utilizzato nel sito Web. In questa opzione viene specificato che nell'applicazione sarà utilizzata l'autenticazione basata su form, mediante la quale gli utenti avranno accesso all'applicazione utilizzando una pagina di accesso che sarà creata più avanti nella procedura dettagliata.

  4. Fare clic su Avanti.

    Nella procedura dettagliata viene visualizzato un messaggio che indica che le informazioni relative all'utente saranno memorizzate utilizzando Impostazioni avanzate provider. Per impostazione predefinita, le informazioni di appartenenza vengono memorizzate in un file di database di Microsoft SQL Server Express nella cartella App_Data del sito Web in uso.

  5. Fare clic su Avanti.

    Nella procedura guidata viene visualizzata un'opzione che consente di creare i ruoli. Questo passaggio sarà eseguito in una fase separata più avanti nella procedura. Pertanto, non selezionare la casella di controllo Attivare i ruoli per il sito Web.

  6. Fare clic su Avanti.

    Nella procedura guidata viene visualizzata una pagina in cui è possibile creare nuovi utenti.

  7. Immettere le informazioni che definiscono un utente dell'applicazione. Utilizzare i valori riportati di seguito come indicazioni. È possibile utilizzare qualsiasi valore, tuttavia è necessario accertarsi di prendere nota delle voci in quanto potrebbero essere richieste più avanti nella procedura dettagliata.

    • Nome utente: il nome dell'utente(senza spazi) oppure un nome di esempio.

    • Password: una password. È richiesta una password complessa (che includa lettere maiuscole e minuscole, segni di punteggiatura e sia composta almeno da otto caratteri).

    • Posta elettronica: l'indirizzo di posta elettronica personale. Più avanti nella procedura dettagliata sarà inviato un messaggio di posta elettronica all'indirizzo di posta elettronica personale; pertanto è necessario un indirizzo di posta elettronica valido.

    • Domanda segreta e Risposta segreta: digitare una domanda e una risposta da utilizzare in seguito in caso sia necessario recuperare la password.

  8. Fare clic su Crea utente.

    Nella procedura guidata viene visualizzata una pagina di conferma.

    Nota:

    Lasciare aperto lo Strumento Amministrazione sito Web.

Nella procedura dettagliata è stata precedentemente creata una cartella denominata MemberPages. In questa parte della procedura dettagliata sarà creata un regola per accertarsi che soltanto gli utenti connessi possano accedere alle pagine contenute in quella cartella.

Per impostare le regole di accesso per la sottodirectory MemberPages

  1. Nella procedura guidata, scegliere Avanti.

    Verrà visualizzata una pagina che consente di creare le regole di accesso.

  2. Nella casella Aggiungi nuova regola di accesso espandere il nodo relativo il sito Web in uso.

  3. Selezionare MemberPages, la cartella creata in precedenza.

  4. In La regola si applica a, selezionare Utenti anonimi.

  5. In Autorizzazioni, scegliere Nega.

    Mediante regola che si sta creando, viene negato l'accesso agli utenti anonimi, vale a dire gli utenti non connessi.

  6. Scegliere Aggiungi questa regola.

    La nuova regola viene visualizzata nella griglia seguente. Quando un utente richiede una pagina dalla sottodirectory MemberPages, vengono controllate le regole per determinare se l'utente è autorizzato ad accedere alla pagina.

  7. Fare clic su Fine.

    La procedura guidata è terminata. La procedura guidata viene chiusa e si ritorna alla scheda Sicurezza dello Strumento di amministrazione sito Web.

Configurazione dell'applicazione per la posta elettronica

Per una parte di questa procedura dettagliata, dovrà essere possibile inviare messaggi di posta elettronica mediante l'applicazione. Per inviare messaggi, è necessario che l'applicazione disponga dell'accesso a un server SMTP (Simple Mail Transport Protocol), che consente di inoltrare i messaggi di posta elettronica dall'applicazione a un destinatario di posta elettronica.

IIS include il server virtuale SMTP predefinito come componente opzionale, indicato per questa procedura dettagliata. Per ulteriori informazioni sulla configurazione di questo server, vedere Procedura: installare e configurare server virtuali SMTP in IIS 6.0. Se si lavora in una rete locale, verificare con l'amministratore di rete le informazioni relative all'accesso a un server di posta elettronica.

Dopo aver configurato oppure definito le modalità di accesso a un server SMTP, sarà necessario configurare l'applicazione per inviare messaggi di posta elettronica a quel server. È possibile eseguire tale procedura creando una voce nel file Web.config del sito Web che contenga una serie di impostazioni per determinare la modalità di esecuzione dell'applicazione.

Per configurare l'applicazione in modo che venga utilizzato un server SMTP specifico

  1. Nello Strumento di amministrazione sito Web, fare clic sulla scheda Applicazione.

  2. In Impostazioni SMTP, scegliere Configura impostazioni posta SMTP.

    Nello strumento viene visualizzata una pagina in cui è possibile configurare la posta elettronica.

  3. Se si utilizza il server virtuale SMTP presente nel computer, immettere localhost come Nome server; in caso contrario, inserire il nome server appropriato.

    Includere le informazioni relative al numero di porta e all'autenticazione in base ai requisiti del server SMPT. Contattare l'amministratore per ulteriori informazioni sulle modalità di configurazione di queste impostazioni.

  4. Nella casella Da, digitare un indirizzo di posta elettronica valido.

  5. Fare clic su Salva e nella pagina di conferma scegliere OK.

    Lo Strumento di amministrazione sito Web consente di creare un file Web.config, a meno che non esista già uno, con le impostazioni effettuate.

    Nota:

    Il file Web.config sarà visualizzato in Esplora soluzioni soltanto dopo l'aggiornamento della visualizzazione.

  6. Chiudere lo Strumento di amministrazione sito Web.

Registrazione dell'utente

Per consentire all'applicazione di eseguire determinate azioni, ad esempio visualizzare o nascondere informazioni, in base all'identità dell'utente, è necessario definire l'identità dell'utente. Per ottenere l'identità dell'utente, è necessario che l'utente effettui l'accesso.

In questa procedura dettagliata, alla home page verrà aggiunto un collegamento che consente agli utenti di visualizzare una pagina di accesso, quindi sarà creata la pagina di accesso.

Per creare una home page con un pulsante di accesso

  1. Aprire o passare alla pagina Default.aspx del sito in uso. Se non si dispone di una pagina Default.aspx, è possibile aggiungerne una oppure utilizzare una pagina diversa.

  2. Passare alla visualizzazione Progettazione.

  3. Digitare un testo statico, ad esempio Welcome to our site e, nella barra degli strumenti Formattazione, utilizzare l'elenco a discesa Formato blocco per formattare il testo come Intestazione 1.

  4. Dal gruppoAccesso della Casella degli strumenti, trascinare un controllo LoginStatus nella pagina.

Per impostazione predefinita, viene eseguito il rendering del controllo LoginStatus come collegamento. Quando gli utenti fanno clic su questo controllo, nell'applicazione viene visualizzata una pagina di accesso. È ora possibile creare la pagina di accesso.

Per creare una pagina di accesso

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sull'applicazione Web e quindi scegliere Aggiungi nuovo elemento. Aggiungere un Web Form denominato Login.aspx al sito.

    Nota:

    Per questa procedura dettagliata, la pagina dovrà essere denominata Login.aspx. Per impostazione predefinita, l'autenticazione basata su form è configurata per essere utilizzata in una pagina con questo nome. È possibile modificare la pagina di accesso predefinita, vale a dire la pagina a cui sono reindirizzati gli utenti, nel file Web.config; tuttavia, in questa procedura dettagliata tale operazione non sarà eseguita.

  2. Nella pagina Login.aspx passare alla visualizzazione Progettazione.

  3. Dal gruppo Accesso della Casella degli strumenti, trascinare un controllo Login nella pagina.

    Si tratta di un controllo singolo tramite il quale vengono richieste e convalidate le credenziali dell'utente.

Visualizzazione di errori di accesso

Nel controllo Login è inclusa una convalida per consentire agli utenti l'inserimento di informazioni corrette. Se, ad esempio, l'utente non inserisce la password, un controllo di convalida visualizza un asterisco (*) accanto alla casella Password. È possibile fornire informazioni più complete per gli errori di accesso aggiungendo un controllo ValidationSummary alla pagina.

Per visualizzare errori di accesso dettagliati

  1. Dal gruppo Convalida della Casella degli strumenti, trascinare un controllo ValidationSummary nella pagina.

  2. Nella finestra Proprietà del controllo ValidationSummary, impostare la proprietà ValidationGroup su Login1, l'ID predefinito del controllo Login aggiunto in precedenza.

Visualizzazione di informazioni per utenti connessi

A questo punto verrà modificata la home page per personalizzare la visualizzazione in base allo stato di connessione dell'utente. Gli utenti anonimi visualizzeranno un messaggio generico che invita ad effettuare l'accesso. Gli utenti connessi visualizzeranno un messaggio introduttivo con il proprio nome di connessione.

Per personalizzare la visualizzazione per gli utenti connessi

  1. Passare alla pagina Default.aspx oppure aprirla.

  2. Dal gruppo Accesso della Casella degli strumenti, trascinare un controllo LoginView nella pagina.

    Il controllo LoginView viene visualizzato con il relativo modello AnonymousTemplate aperto. Tale modello consente di definire il contenuto che verrà visualizzato agli utenti prima dell'accesso.

  3. Fare clic sull'area di modifica del controllo LoginView per attivare la modifica.

  4. Nell'area di modifica del modello AnonymousTemplate del controllo LoginView digitare You are not logged in. Click the Login link to sign in.

  5. Nel pannello Attività LoginView, dell'elenco Visualizzazioni, fare clic su LoggedInTemplate. Se il pannello Attività LoginView non è visualizzato, fare clic con il pulsante destro del mouse sull'intestazione del controllo LoginView e selezionare Mostra smart tag.

    In questa fase viene definito il contenuto che sarà visualizzato agli utenti già connessi.

  6. Fare clic sull'area di modifica del controllo LoginView per attivare la modifica, quindi digitare You are logged in. Welcome,.

  7. Dal gruppo Accesso della Casella degli strumenti, trascinare un controllo LoginName nel modello dopo il testo.

Esecuzione del test dell'accesso

È ora possibile eseguire il test della funzione di accesso dell'applicazione.

Per eseguire il test dell'accesso

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse su Default.aspx e quindi scegliere Imposta come pagina iniziale.

    In tal modo, nel momento in cui il sito Web viene eseguito, la pagina Default.aspx viene visualizzata per prima.

  2. Premere CTRL+F5 per eseguire il sito Web.

    La home page (Default.aspx) viene visualizzata nel browser, mostrando il collegamento Accesso e il messaggio generico.

  3. Fare clic sul collegamento Accesso.

    Verrà visualizzata la pagina di accesso creata.

  4. Digitare il nome di accesso dell'utente creato in precedenza nella procedura dettagliata, quindi fare clic su Accedi. Non inserire ancora la password.

    Viene visualizzato un asterisco (*) accanto alla casella Password, mentre nel controllo ValidationSummary viene visualizzato un messaggio di errore.

  5. Digitare un nome utente e una password, quindi fare clic su Accedi.

    Se le credenziali inserite sono corrette, si ritornerà alla home page. A questo punto, nella pagina verranno visualizzati un collegamento Chiusura sessione, il nome utente e il messaggio introduttivo definito per l'utente connesso.

  6. Chiudere il browser.

Limitazione dell'accesso alle pagine riservate ai membri

In genere, in molti siti Web vengono configurate pagine che possono essere visualizzate soltanto da utenti connessi. In precedenza, nella procedura dettagliata è stata creata la sottodirectory MemberPages e una regola che limita l'accesso alle pagine contenute nella sottodirectory. In questa sezione della procedura dettagliata, sarà aggiunta una pagina alla sottodirectory protetta e verrà eseguito il test della regola di accesso.

Per creare la pagina riservata ai membri

  1. In Esplora soluzioni, fare clic con il pulsante destro del mouse sulla cartella MemberPages, quindi su Aggiungi nuovo elemento e aggiungere un nuovo Web Form denominato Members.aspx.

    Nota:

    Accertarsi che la pagina venga creata all'interno della cartella MemberPages.

  2. Nella visualizzazione Progettazione aggiungere un testo alla pagina, ad esempio Welcome, members! Il testo esatto non è importante purché sia possibile riconosca la pagina quando questa viene visualizzata nel browser.

È ora possibile aggiungere un collegamento dalla home page alla pagina riservata a i membri. In un'applicazione reale, è probabile che il collegamento della pagina riservata ai membri venga inserito nel modello di connessione del controllo LoginView. In questo modo, gli utenti che visitano il sito non visualizzeranno il collegamento fino a quando non saranno connessi. Tuttavia, per questa procedura dettagliata, il collegamento deve essere disponibile per tutti gli utenti in modo che siano in grado di vedere l'effetto del tentativo di visualizzazione di una pagina riservata ai membri senza prima aver effettuato l'accesso.

Per aggiungere un collegamento alla pagina riservata ai membri

  1. Passare alla pagina Default.aspx oppure aprirla.

  2. Dal gruppo Standard della Casella degli strumenti, trascinare un controllo HyperLink nella pagina.

  3. Nella finestra Proprietà del controllo HyperLink, impostare la proprietà Text su Members page e la proprietà href su ~/MemberPages/Members.aspx per puntare alla pagina creata in precedenza.

Esecuzione del test della pagina riservata ai membri

È possibile eseguire il test della pagina riservata ai membri accedendo sia come utente anonimo, sia come utente connesso.

Per eseguire il test della pagina riservata ai membri

  1. Premere CTRL+F5 per eseguire il sito Web.

  2. Quando nel browser viene visualizzata la pagina Default.aspx, no effettuare l'accesso. Al contrario, fare clic sul collegamento Members page.

    Dal momento che l'accesso alla pagina riservata ai membri è negato agli utenti anonimi, viene effettuato il reindirizzamento alla pagina Login.aspx.

  3. Nella pagina di accesso digitare il nome utente e la password utilizzati in precedenza nella procedura dettagliata per eseguire l'accesso.

    Dal momento che il nome utente inserito è stato autorizzato ad accedere alla pagina, viene effettuato il reindirizzamento alla pagina Members.aspx.

  4. Chiudere la finestra del browser.

Creazione di nuovi utenti

Nella prima parte della procedura dettagliata, è stato creato un utente con lo Strumento di amministrazione sito Web. Questa tecnica è utile se si utilizza un elenco di utenti piccolo e definito, ad esempio, quando si creano gli utenti di un team di piccole dimensioni. Tuttavia, in molti siti Web agli utenti è consentito effettuare la registrazione in modo autonomo. ASP.NET include il controllo CreateUserWizard che consente di eseguire la stessa azione effettuata in precedenza mediante lo Strumento di amministrazione sito Web.

In questa parte della procedura dettagliata, verrà aggiunta una funzionalità che consente agli utenti di registrarsi nel sito Web. Per iniziare, verrà creata una pagina di registrazione.

Per creare una pagina di registrazione

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del sito Web, quindi su Aggiungi nuovo elemento ed aggiungere un nuovo Web Form denominato Register.aspx.

    Nota:

    Accertarsi che la pagina sia creata nella directory principale del sito Web, non nella cartella MemberPages.

  2. Nella pagina Register.aspx, passare alla visualizzazione Progettazione e digitare nella pagina un testo statico, ad esempio Register. Nella barra degli strumenti Formattazione, utilizzare l'elenco a discesa Formato blocco per formattare il testo come Intestazione 1.

  3. Dal gruppo Accesso della Casella degli strumenti, trascinare un controllo CreateUserWizard nella pagina.

  4. Nella finestra Proprietà del controllo CreateUserWizard, impostare la proprietà ContinueDestinationPageUrl su ~/Default.aspx.

    In tal modo, quando gli utenti fanno clic su Continua dopo la creazione di un utente, il controllo ritorna alla home page.

  5. Dal gruppo Standard della Casella degli strumenti, trascinare un controllo HyperLink nella pagina. Nella finestra Proprietà del controllo HyperLink, impostare la proprietà Text su Home e la proprietà href su ~/Default.aspx.

È ora possibile aggiungere alla home page un collegamento che consente di visualizzare la pagina di registrazione. Per questa procedura dettagliata, supporre di voler visualizzare il collegamento di registrazione soltanto agli utenti non connessi.

Per creare un collegamento di registrazione nella home page

  1. Passare alla pagina Default.aspx oppure aprirla.

  2. Fare clic con il pulsante destro del mouse sul controllo LoginViewaggiunto in precedenza e selezionare Mostra smart tag. Nel pannello Attività LoginView selezionare AnonymousTemplate dalla casella di riepilogo Visualizzazioni per attivare la modifica nel modello anonimo.

  3. Dal gruppo Standard della Casella degli strumenti, trascinare un controllo HyperLink nel modello anonimo. Nella finestra Proprietà del controllo HyperLink, impostare la proprietà Text su Register e la proprietà href su Register.aspx. Il collegamento Registra verrà visualizzato soltanto agli utenti non connessi.

È ora possibile eseguire il test del processo di registrazione.

Per eseguire il test della registrazione

  1. Premere CTRL+F5 per eseguire il sito Web e visualizzare la pagina Default.aspx.

    Dal momento che non si è connessi, viene visualizzata la pagina contenente il collegamento Registra.

  2. Fare clic sul collegamento Registra.

    Viene visualizzata la pagina di registrazione.

  3. Nelle caselle di testo, immettere un nuovo utente, una password sicura, un indirizzo di posta elettronica e una domanda e una risposta segrete. Sono necessarie tutte e cinque le informazioni.

  4. Fare clic su Crea utente.

    Viene visualizzato un messaggio di conferma.

  5. Fare clic sul pulsante Continua.

    L'utente ritorna alla home page come utente connesso. Notare che il collegamento Accesso è stato modificato in Chiusura sessione e che le informazioni visualizzate nel controllo Login provengono dalla proprietà LoggedInTemplate e non dalla proprietà AnonymousTemplate.

  6. Fare clic sul collegamento Chiusura sessione.

    La pagina viene modificata e vengono visualizzate le informazioni per gli utenti anonimi.

  7. Fare clic sul collegamento Accesso.

  8. Immettere le credenziali dell'utente appena creato.

    Viene effettuata la connessione come nuovo utente.

  9. Chiudere la finestra del browser.

Modifica delle password

È possibile che gli utenti decidano di modificare le proprie password; tuttavia, spesso risulta poco pratico effettuare tale operazione manualmente. Pertanto, è possibile utilizzare un altro controllo ASP.NET per consentire la modifica delle password da parte degli utenti. Per cambiare una password, gli utenti dovranno innanzitutto conoscere la password esistente.

In questa procedura dettagliata, sarà aggiunta una pagina in cui gli utenti connessi potranno modificare la propria password.

Per creare una pagina di modifica della password

  1. In Esplora soluzioni, fare clic con il pulsante destro del mouse sulla cartella MemberPages, quindi su Aggiungi nuovo elemento e aggiungere un nuovo Web Form denominato ChangePassword.aspx.

    Nota:

    Accertarsi che la pagina sia creata all'interno della cartella MemberPages.

    La pagina viene inserita nella cartella riservata ai membri in quanto solo gli utenti connessi potranno modificare la password.

  2. Nella pagina ChangePassword.aspx, passare alla visualizzazione Progettazione e digitare un testo statico, ad esempio Change Password. Nella barra degli strumenti Formattazione, utilizzare l'elenco a discesa Formato blocco per formattare il testo come Intestazione 1.

  3. Dal gruppo Accesso della Casella degli strumenti, trascinare un controllo ChangePassword nella pagina.

  4. Nella finestra Proprietà del controllo ChangePassword, impostare la proprietà ContinueDestinationPageUrl su ~/Default.aspx.

  5. In tal modo, quando gli utenti fanno clic su Continua dopo la modifica di una password, il controllo ritorna alla home page.

È ora possibile aggiungere alla home page un collegamento che consente di visualizzare la pagina di modifica della password. Il collegamento verrà reso disponibile solo per gli utenti connessi.

Per creare un collegamento di modifica della password nella home page

  1. Passare alla pagina Default.aspx oppure aprirla.

  2. Fare clic con il pulsante destro del mouse sul controllo LoginView, quindi scegliere Mostra smart tag. Nell'elenco Visualizzazioni del menu Attività LoginView, fare clic su LoggedInTemplate.

    Mediante il controllo LoginView viene attivata la modalità di modifica del contenuto visualizzato agli utenti connessi.

  3. Dal gruppo Standard della Casella degli strumenti, trascinare un controllo HyperLink nell'area di modifica. Nella finestra Proprietà del controllo HyperLink, impostare la proprietà Text su Change password e la proprietà href su ~/MemberPages/ChangePassword.aspx.

    Il collegamento Modifica password verrà visualizzato soltanto agli utenti connessi, al contrario del collegamento Registra creato in precedenza.

È ora possibile eseguire il test del processo di modifica della password.

Per eseguire il test della modifica della password

  1. Premere CTRL+F5 per eseguire il sito Web.

  2. Nella pagina Default.aspx, fare clic sul collegamento Accesso e accedere con le credenziali di uno degli utenti creati.

    Al termine dell'operazione, l'utente ritornerà alla home page come utente connesso.

  3. Fare clic sul collegamento Cambia password.

  4. Nella pagina di modifica della password, inserire la vecchia password e quella nuova, quindi fare clic su Cambia password.

  5. Scegliere Continua.

  6. Nella home page, fare clic su Chiusura sessione.

  7. Fare clic sul collegamento Accesso.

  8. Immettere la nuova password.

    L'utente viene connesso con la nuova password.

  9. Chiudere la finestra del browser.

Recupero di una password

Talvolta gli utenti dimenticano le proprie password. È possibile aggiungere al sito Web una pagina di recupero password in modo da rendere possibile nuovamente l'accesso al sito Web. Il recupero della password può essere effettuato in due modi:

  • Invio agli utenti della password scelta in precedenza (oppure creata al momento della configurazione del sito). Per questa opzione è richiesta la memorizzazione della password nel sito mediante crittografia reversibile.

  • Invio agli utenti di una nuova password che può essere modificata mediante la pagina Cambia password creata in precedenza. Per questa opzione è utile la memorizzazione della password nel sito Web mediante uno schema di crittografia non reversibile, ad esempio l'hashing.

Nota:

Non è consigliabile restituire una password in testo non crittografato tramite posta elettronica per i siti che richiedono un livello di sicurezza elevato. Per i siti a sicurezza elevata, è consigliabile restituire le password tramite crittografia, ad esempio SSL (Secure Sockets Layer).

Per impostazione predefinita, il sistema di appartenenze ASP.NET protegge le password tramite hashing, rendendone quindi impossibile il recupero. Pertanto, in questa parte della procedura dettagliata, tramite il sito Web sarà inviata agli utenti una nuova password.

Nota:

Per il recupero della password è necessario che il sito Web consenta l'invio di messaggi di posta elettronica. Se non è possibile configurare il sito Web per l'invio di posta elettronica (seguendo le indicazioni della sezione precedente "Configurazione dell'applicazione per la posta elettronica" della procedura dettagliata), non sarà possibile aggiungere al sito Web la funzione di recupero della password.

Per aggiungere il recupero della password

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del sito Web, quindi su Aggiungi nuovo elemento e aggiungere un nuovo Web Form denominato RecoverPassword.aspx.

    Nota:

    Accertarsi che la pagina sia creata nella directory principale del sito Web, non nella cartella MemberPages.

  2. Nella pagina RecoverPassword.aspx, passare alla visualizzazione Progettazione e digitare nella pagina un testo statico, ad esempio Reset my password to a new value. Nella barra degli strumenti Formattazione, utilizzare l'elenco a discesa Formato blocco per formattare il testo come Intestazione 1.

  3. Dal gruppo Accesso della Casella degli strumenti, trascinare un controllo PasswordRecovery nella pagina.

  4. Dal gruppo Standard della Casella degli strumenti, trascinare un controllo HyperLink nella pagina. Nella finestra Proprietà del controllo HyperLink, impostare la proprietà Text su Home e la proprietà href su ~/Default.aspx.

  5. Passare alla pagina Default.aspx.

  6. Fare clic con il pulsante destro del mouse sul controllo LoginView, quindi scegliere Mostra smart tag. Nell'elenco Visualizzazioni del menu Attività LoginView, fare clic su AnonymousTemplate.

    Mediante il controllo LoginView viene attivata la modalità di modifica del contenuto visualizzato agli utenti non connessi.

  7. Dal gruppo Standard della Casella degli strumenti, trascinare un controllo HyperLink nel modello. Nella finestra Proprietà del controllo HyperLink, impostare la proprietà Text su Forgot your password? e la proprietà href su ~/RecoverPassword.aspx.

È ora possibile eseguire il test del recupero della password.

Per eseguire il test del recupero della password

  1. Premere CTRL+F5 per eseguire il sito Web.

  2. Per impostazione predefinita l'utente non è connesso, pertanto non sarà visualizzato il modello anonimo del controllo LoginView.

  3. Fare clic sul collegamento Password dimenticata.

    Viene visualizzata la pagina RecoverPassword.aspx.

  4. Digitare il nome utente e fare clic su Invia.

    Viene visualizzata la domanda segreta e viene richiesto di digitare la risposta segreta.

  5. Digitare la risposta segreta e fare clic su Invia.

    Se la risposta immessa è corretta, nel sito Web sarà reimpostata la password e sarà inviato un messaggio di posta elettronica contenente la nuova password.

Passaggi successivi

In questa procedura dettagliata è stato illustrato uno scenario semplice ma completo per la creazione di un'applicazione in cui sono richieste la credenziali dell'utente, sono visualizzate le informazioni per gli utenti connessi, si esegue il recupero di una password dimenticata e si limita l'accesso alle pagine. Le tecniche e i controlli illustrati nella procedura dettagliata consento di creare pagine e applicazioni più sofisticate. Può, ad esempio, essere necessario:

Vedere anche

Concetti

Introduzione all'appartenenza