Procedura dettagliata: operazioni di filtro sui nodi della mappa del sito in base ai ruoli di protezione
Aggiornamento: novembre 2007
La limitazione dell'accesso a determinate pagine è un requisito comune per i siti Web. La combinazione della gestione dei ruoli ASP.NET e dell'autorizzazione basata su URL ASP.NET consente di limitare l'accesso ai file Web in base ai ruoli di protezione. Le mappe di siti consentono di completare il processo mediante l'utilizzo di un una funzionalità denominata rimozione della protezione per nascondere i collegamenti di spostamento ai file con accesso limitato, anche questa basata sui ruoli.
Un ruolo è il nome di un gruppo di utenti. Una volta definiti i ruoli, è possibile assegnare singoli account utente a un ruolo. È possibile limitare l'accesso ai file Web e ai nodi delle mappe di sito in base ai ruoli.
Nella procedura vengono illustrate le seguenti operazioni:
Creazione di un sito Web con appartenenza e accesso utente.
Definizione dei ruoli per il sito Web e relativa assegnazione di account utente.
Creazione di regole di autorizzazione basate sull'URL per concedere o negare, in modo selettivo, l'accesso alle pagine.
Creazione di una mappa del sito e attivazione della rimozione della protezione.
Creazione di un menu di spostamento in una pagina Web.
Prerequisiti
Per completare questa procedura dettagliata, è necessario disporre dei seguenti elementi:
Microsoft Visual Web Developer.
.NET Framework.
Internet Information Services (IIS) installato nel computer locale.
In questa procedura dettagliata è anche richiesto un metodo per identificare i singoli account utente. Nelle applicazioni funzionanti, è possibile identificare gli utenti in vari modi, incluso l'account utente Windows di cui dispongono. Tuttavia, in questa procedura dettagliata, l'identificazione dell'utente avviene mediante l'accesso al sito. Pertanto, in questa procedura dettagliata è richiesto un sito configurato per l'utilizzo dell'appartenenza e dell'autenticazione basata su form ASP.NET. Se si dispone di un sito già configurato con l'appartenenza, è possibile utilizzarlo come punto di partenza per questa procedura dettagliata.
Creare un sito Web con appartenenza e accesso utente.
Prima di utilizzare i ruoli e l'appartenenza ASP.NET, è necessario un sito Web disponibile che dovrà essere configurato per l'attivazione dell'appartenenza. Quindi sarà necessario configurare i ruoli. Se è già stata completata Procedura dettagliata: creazione di un sito Web con appartenenza e accesso utente, è possibile utilizzare il sito Web configurato in questa procedura dettagliata.
Creazione di un sito Web
Se in Visual Web Developer è già stato creato un sito Web (ad esempio, Procedura dettagliata: creazione di una pagina Web di base in Visual Web Developer), è possibile utilizzare quel sito Web e passare alla sezione successiva. In caso contrario, creare un sito e una pagina Web nuovi attenendosi alla procedura riportata di seguito.
Per creare un sito Web IIS locale
Aprire Visual Web Developer.
Dal menu File fare clic su Nuovo sito Web.
Viene visualizzata la finestra di dialogo Nuovo sito Web.
In Modelli Visual Studio installati fare clic su Sito Web ASP.NET.
Nell'elenco a discesa Linguaggio fare clic sul linguaggio di programmazione con lui lavorare.
Nell'elenco a discesa Percorso selezionare HTTP.
In alternativa, è possibile selezionare File system se non si dispone di un server IIS disponibile. Tuttavia, l'utilizzo HTTP consente di riprodurre uno scenario di installazione reale e di eseguire il test delle pagine visualizzandole in un browser.
Scegliere Sfoglia.
Verrà visualizzata la finestra di dialogo Scegli percorso. Se nel passaggio precedente è stato selezionato HTTP, il pulsante IIS locale dovrebbe già essere selezionato. In caso contrario, fare clic su IIS locale.
Selezionare il nodo Sito Web predefinito.
Fare clic sull'icona Crea nuova applicazione Web (nell'angolo superiore destro), quindi denominare il nuovo sito Web SiteNavigation.
Fare clic su Apri e scegliere OK.
In Visual Web Developer viene creato il sito Web e aperta una nuova pagina denominata Default.aspx. Per impostazione predefinita, in Visual Web Developer le nuove pagine sono create con un file di codice sottostante corrispondente, in questo caso Default.aspx.cs. È possibile modificare il file quando vengono create nuove pagine successive utilizzando la procedura guidata Aggiungi nuovo elemento.
Nota: In alcuni casi, se era installata una versione precedente di .NET Framework prima di Visual Web Developer, è possibile che si ottenga un errore in cui si indica che il sito Web deve essere configurato per l'utilizzo della versione più recente di .NET Framework. È possibile correggere l'errore scegliendo Sì nella finestra di dialogo visualizzata in modo da attivare ASP.NET versione 2.0 nel server oppure utilizzando IIS Manager. In IIS Manager, fare clic con il pulsante destro del mouse sull'applicazione, selezionare Proprietà e fare clic sulla scheda ASP.NET. Accanto a Versione di ASP.NET, selezionare la versione di .NET Framework installata con Visual Web Developer.
Attivazione dell'appartenenza e creazione di un utente
Se l'appartenenza non è ancora attivata, utilizzare la seguente procedura per attivarla. In caso contrario, passare alla sezione successiva.
Per attivare l'appartenenza
In Visual Web Developer, scegliere Configurazione di ASP.NET dal menu Sito Web.
Viene visualizzato lo Strumento di amministrazione sito Web.
Fare clic sulla scheda Protezione, in Utenti, scegliere Seleziona tipo di autenticazione, fare clic su Da Internet e scegliere Chiudi.
Mediante 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.
Nella scheda Protezione, fare clic su Crea utente.
Si procederà alla creazione di due account utente per l'applicazione.
Nella casella Crea utente, digitare le informazioni che consentono di definire un utente dell'applicazione. Utilizzare i seguenti valori come indicazioni. È possibile utilizzare qualsiasi valore purché si prenda nota dei dati immessi per utilizzarli più avanti nella procedura dettagliata.
Nome utente Utilizzare il nome Customer01, vale a dire il nome del primo account utente.
Password Utilizzare una password a scelta, preferibilmente una password sicura, che contenga almeno otto caratteri e includa lettere maiuscole e minuscole e segni di punteggiatura.
Posta elettronica Utilizzare un indirizzo di posta elettronica formattato in modo corretto. In alternativa, è possibile utilizzare un indirizzo di posta elettronica non esistente dal momento che in questa procedura dettagliata non è incluso l'invio di posta elettronica.
Domanda segreta e Risposta segreta Digitare una domanda e una risposta da utilizzare in seguito, nel caso in cui sia necessario recuperare la password.
Selezionare la casella di controllo Utente attivo, quindi fare clic su Crea utente.
Nella pagina di conferma, fare clic su Continua.
Ripetere i tre passaggi precedenti per creare uno o più account utente denominati Employee01. Quando si creano i ruoli per questi account utente, i nomi da utilizzare dovranno contenere tutte lettere minuscole.
Fare clic sul pulsante Indietro nell'angolo destro della parte inferiore della pagina per ritornare iniziale Protezione.
Creazione di una pagina di accesso utente
Per eseguire il test delle impostazioni di appartenenza e di ruolo che saranno configurate più avanti nella procedura dettagliata, è necessario creare un metodo per consentire l'accesso agli utenti in modo che sia possibile identificarli.
Per creare una pagina predefinita per tutti gli utenti in cui venga visualizzato lo stato di accesso
Aprire la pagina Default.aspx e passare alla visualizzazione Progettazione.
Se non si dispone di una pagina Default.aspx, aggiungerne una alla directory principale del sito Web.
Nota: Accertarsi di denominare la pagina Default.aspx; questo nome sarà utilizzato più avanti nella procedura dettagliata.
Nella Casella degli strumenti, dal gruppo Accesso, trascinare un controllo LoginStatus nella pagina.
Il controllo LoginStatus consente agli utenti di passare automaticamente alla pagina Login.aspx, se non è ancora effettuato l'accesso.
Posizionare il cursore a destra del controllo LoginStatus, premere INVIO, quindi digitare il testo seguente, incluso lo spazio aggiuntivo: Hello .
Nella Casella degli strumenti, dal gruppo Accesso, trascinare un controllo LoginName nella pagina.
Il controllo LoginName consentirà di visualizzare il nome dell'utente, se è connesso.
Salvare e chiudere la pagina.
È stata creata una home page disponibile per tutti gli utenti. Nel passaggio successivo viene creata una pagina di accesso semplice.
Per creare una pagina di accesso
Aggiungere una pagina Login.aspx alla directory principale del sito Web.
Aprire la pagina Login.aspx e passare alla visualizzazione Progettazione.
Nella Casella degli strumenti, dal gruppo Accesso, trascinare un controllo Login nella pagina.
Fare clic con il pulsante destro del mouse sul controllo Login, fare clic su Proprietà, quindi impostare DestinationPageUrl su Default.aspx.
Salvare e chiudere la pagina.
Stabilire ruoli per il sito Web e assegnare gli utenti a quei ruoli.
Prima di utilizzare la rimozione della protezione, è necessario configurare i ruoli utente.
Attivazione dei ruoli
Per garantire il funzionamento della rimozione della protezione, è necessario attivare i ruoli.
Per attivare i ruoli
In Visual Web Developer, nel menu Sito Web fare clic su Configurazione di ASP.NET.
Viene visualizzato lo Strumento di amministrazione sito Web.
Fare clic sulla scheda Protezione, quindi su Attiva ruoli.
Creazione di ruoli e assegnazione di account utente a quei ruoli
A questo punto i ruoli sono attivati, ma per creare le regole di accesso è necessario creare un ruolo e assegnare gli account utente a questo ruolo.
Per creare ruoli e assegnare account utente
Se lo Strumento di amministrazione sito Web non è aperto, effettuare la seguente procedura: in Visual Web Developer, nel menu Sito Web, fare clic su Configurazione di ASP.NET.
Viene visualizzato lo Strumento di amministrazione sito Web.
Fare clic sulla scheda Protezione, quindi su Crea o gestisci ruoli.
Saranno creati due ruoli.
Nella casella Crea nuovo ruolo, digitare customers, quindi fare clic su Aggiungi ruolo.
Ripetere il passaggio precedente per creare un ruolo denominato employees.
Nella casella Nome ruolo, accanto a customers fare clic su Gestisci.
Si passa alla pagina in cui è possibile selezionare gli account utente da un elenco da aggiungere al ruolo customers.
Nella casella Cerca utenti, fare clic su Tutti.
Vengono visualizzati tutti gli account utente per il sito Web. Inoltre, se l'elenco è troppo lungo, è possibile eseguire la ricerca utilizzando la prima lettera del nome dell'utente.
Accanto al nome utente Customer01, selezionare la casella nella colonna Ruolo dell'utente.
L'utente Customer01 è ora un membro del ruolo customers.
Fare clic su Indietro per tornare alla pagina Crea nuovo ruolo.
Ripetere i due passaggi precedenti per aggiungere l'utente Employee01al ruolo employees.
Chiudere la pagina di amministrazione dell'applicazione ASP.NET.
Creare regole per concedere o negare in modo selettivo l'accesso alle pagine
Per eseguire il test della rimozione della protezione, è necessario creare alcune cartelle e pagine per il sito Web e impostarne le autorizzazioni di protezione.
Creazione di cartelle e pagine necessarie per questa procedura dettagliata
Nel sito Web sarà contenuta una struttura della mappa del sito da collegare ad alcune pagine, che è possibile creare ora.
Per creare le cartelle e le pagine necessarie
In Esplora soluzioni, fare clic con il pulsante destro del mouse sulla directory principale del sito Web, scegliere Nuova cartella e denominarla EmployeesOnly.
Nella cartella EmployeesOnly sarà contenuta una pagina accessibile soltanto ad alcuni utenti.
Fare clic con il pulsante destro del mouse sulla directory principale del sito Web, scegliere Nuova cartella e denominarla Customers.
Anche nella cartella Customers sarà contenuta una pagina accessibile soltanto ad alcuni utenti.
Nella cartella EmployeesOnly, creare una nuova pagina denominata Discounts.aspx.
Nella cartella Customers, creare una nuova pagina denominata Support.aspx.
Nella directory principale del sito Web, creare quattro nuove pagine denominate Hardware.aspx, Software.aspx, Training.aspx e Consulting.aspx.
In ciascuna delle nuove pagine create, passare alla visualizzazione Progettazione, digitare il titolo della pagina nella parte superiore, quindi formattare il titolo come <H1> per consentire l'identificazione della pagina quando viene selezionata.
Salvare e chiudere le nuove pagine.
Creazione delle regole di accesso
Nel sito Web in fase di creazione gli utenti potranno accedere a pagine diverse in base al proprio ruolo. Pertanto, è necessario creare alcune regole di accesso con cui determinare quali ruoli possono accedere a determinate cartelle.
Per configurare le regole di accesso per la cartella EmployeesOnly
In Visual Web Developer, nel menu Sito Web fare clic su Configurazione di ASP.NET.
Viene visualizzato lo Strumento di amministrazione sito Web.
Scegliere Gestisci regole di accesso nella scheda Protezione, quindi fare clic su Aggiungi nuova regola di accesso. In tal modo si passa alla pagina Aggiungi nuova regola di accesso.
In Selezionare una directory per questa regola, espandere il nodo principale e scegliere EmployeesOnly.
In La regola si applica a, fare clic su Ruolo, quindi nella casella fare clic su employees.
In Autorizzazioni, scegliere Consenti.
Mediante la regola creata le autorizzazioni di accesso alla cartella EmployeesOnly vengono concesse a tutti gli utenti inclusi nel ruolo employees.
Scegliere OK.
La nuova regola viene visualizzata in una griglia nella tabella Gestisci regole di accesso. Quando un utente richiede una pagina dalla cartella EmployeesOnly, le regole vengono controllate in ordine, dall'alto verso il basso, per determinare se l'utente è autorizzato ad accedere alla pagina. Se l'utente appartiene al ruolo employees, le pagine di questa cartella non saranno visualizzate.
Fare clic sul collegamento Aggiungi nuova regola di accesso.
In La regola si applica a, selezionare Tutti gli utenti.
In Autorizzazioni, selezionare Nega, quindi scegliere OK.
La seconda regola per la cartella EmployeesOnly consente di accertarsi che l'accesso alla cartella sia concesso esclusivamente agli utenti del ruolo employees. Le regole vengono elaborate nell'ordine in cui sono visualizzate nella griglia (dall'alto verso il basso).
La prima regola (Consenti) concede l'accesso agli utenti nel ruolo employees. Con la seconda regola (Nega) viene negato l'accesso a tutti gli altri utenti. È possibile creare tutte le regole Consenti oppure Nega necessarie all'applicazione. Quando un utente richiede una pagina dalla cartella EmployeesOnly, le regole vengono controllate in ordine, dall'alto verso il basso, per determinare se l'utente è autorizzato ad accedere alla pagina.
Nel passaggio successivo viene ripetuta la procedura utilizzata in precedenza per la cartella Customers. Tuttavia, entrambi i ruoli, customers ed employees, possono essere utilizzati per concedere l'accesso alla cartella Customers. Come esempio di uno scenario reale è possibile considerare una società che desidera consentire ai dipendenti dell'assistenza telefonica di accedere alle stesse pagine visualizzate ai clienti.
Per configurare le regole di accesso per la cartella Customers
Fare clic sul collegamento Aggiungi nuova regola di accesso.
In La regola si applica a, selezionare la casella Ruolo, quindi nella casella, fare clic su customers.
In Autorizzazioni, selezionare Consenti, quindi scegliere OK.
La regola creata concede le autorizzazioni di accesso alla cartella Customers a tutti gli utenti inclusi nel ruolo customers.
In Gestisci regole di accesso, fare clic su Customers.
Fare clic sul collegamento Aggiungi nuova regola di accesso.
In La regola si applica a, selezionare la casella Ruolo, quindi nella casella, fare clic su employees.
In Autorizzazioni, selezionare Consenti, quindi scegliere OK.
La regola creata concede le autorizzazioni di accesso alla cartella Customers anche a tutti gli utenti inclusi nel ruolo employees.
In Gestisci regole di accesso, fare clic su Customers.
Fare clic sul collegamento Aggiungi nuova regola di accesso.
In La regola si applica a, selezionare la casella Tutti gli utenti.
In Autorizzazioni, selezionare la casella Nega, quindi scegliere OK.
La prima e la seconda regola per la cartella Customers consentono di accertarsi che l'accesso alla cartella Customers sia concesso esclusivamente agli utenti con un account nel ruolo customers oppure nel ruolo employees. Le regole vengono elaborate nell'ordine in cui sono visualizzate nella griglia (dall'alto verso il basso).
La prima regola (Consenti) concede l'accesso agli utenti con un account nel ruolo members. Con la seconda regola (Nega) viene negato l'accesso a tutti gli altri utenti. È possibile creare tutte le regole Consenti oppure Nega necessarie all'applicazione. Quando un utente richiede una pagina dalla cartella Customers, le regole vengono controllate in ordine, dall'alto verso il basso, per determinare se l'utente è autorizzato ad accedere alla pagina.
Fare clic su Chiudi per ritornare alla scheda Protezione.
Creare una mappa del sito e attivare la rimozione della protezione
In questa parte della procedura dettagliata, verrà creata una mappa del sito per descrivere la struttura di esplorazione del sito e, successivamente, sarà attivata la rimozione della protezione dei nodi della mappa del sito mediane la modifica del file Web.config.
Creazione di una mappa del sito
Per utilizzare il sistema di esplorazione del sito, è necessario un metodo per descrivere la modalità di layout delle pagine nel sito. Il metodo predefinito consiste nella creazione di un file XML in cui è contenuta la gerarchia del sito, inclusi i titoli della pagina e gli URL.
Ciascuna pagina è rappresentata come elemento siteMapNode nella mappa del sito. Il nodo più in alto rappresenta la home page, mentre i nodi figlio rappresentano le pagine più in basso nel sito.
Per creare una mappa del sito
In Esplora soluzioni, fare clic con il pulsante destro del mouse sul nome del sito Web e scegliere Aggiungi nuovo elemento.
Nella finestra di dialogo Aggiungi nuovo elemento:
In Modelli Visual Studio installati fare clic su Mappa del sito.
Accertarsi che il nome nella casella Nome sia Web.sitemap.
Nota: Il file deve essere denominato Web.sitemap e deve essere visualizzato nella directory principale del sito Web.
Fare clic su Aggiungi.
Copiare il contenuto XML riportato di seguito nel file Web.sitemap sovrascrivendo il contenuto predefinito del file XML.
<?xml version="1.0" encoding="utf-8" ?> <siteMap> <siteMapNode title="Home" description="Home" url="~/default.aspx" > <siteMapNode title="Products" description="Our products" roles="*"> <siteMapNode title="Hardware" description="Hardware we offer" url="~/Hardware.aspx" /> <siteMapNode title="Software" description="Software for sale" url="~/Software.aspx" /> <siteMapNode title="Discounts" description="Employee Discounts" url="~/EmployeesOnly/Discounts.aspx" /> </siteMapNode> <siteMapNode title="Services" description="Services we offer" roles="*"> <siteMapNode title="Training" description="Training" url="~/Training.aspx" /> <siteMapNode title="Consulting" description="Consulting" url="~/Consulting.aspx" /> <siteMapNode title="Support" description="Support" url="~/Customers/Support.aspx" /> </siteMapNode> </siteMapNode> </siteMap>
Nel file Web.sitemap è contenuto un insieme di elementi siteMapNode nidificati su tre livelli. La struttura di ciascun elemento è identica; l'unica differenza è costituita dal percorso di ciascuno dei tre elementi all'interno della gerarchia XML.
Gli URL delle pagine definite nel file XML di esempio sono non qualificati, a indicare che tutte le pagine saranno considerate come pagine che dispongono di URL relativi alla directory principale dell'applicazione. Tuttavia, è possibile specificare un URL qualsiasi per una determinata pagina: la struttura logica definita nella mappa del sito non deve corrispondere al layout fisico delle pagine nelle cartelle.
L'attributo roles è impostato soltanto su due nodi nella mappa del sito: Products e Services. Questi due nodi non dispongono di un attributo url. In ASP.NET le regole di accesso di una pagina aspx vengono utilizzate per verificare se il nodo della mappa del sito è visibile a un utente. Se non è presente un attributo url, nessun utente potrà visualizzare la pagina se la rimozione della protezione è attivata. L'impostazione dell'attributo roles su un asterisco (*), oppure su un carattere jolly, consente di allargare l'accesso a tutti gli utenti.
Salvare e chiudere il file.
Attivazione della rimozione della protezione
Nella mappa del sito creata viene utilizzato il provider di mappa del sito predefinito, XmlSiteMapProvider. Per questo motivo, non è necessario che nel file Web.config sia contenuto un elemento Elemento siteMap (schema delle impostazioni ASP.NET), dal momento che in ASP.NET è presente una configurazione intrinseca per le mappe del sito predefinite. Tuttavia, la rimozione della protezione non viene attivata per impostazione predefinita; pertanto, è necessario impostare l'elemento Elemento siteMap (schema delle impostazioni ASP.NET).
Per attivare la rimozione della protezione
In Visual Web Developer, fare clic con il pulsante destro del mouse sulla directory principale del sito Web, quindi su Aggiorna cartella.
In questo modo, il file Web.config viene visualizzato in Esplora soluzioni. Il file Web.config può essere creato selezionando Aggiungi nuovo elemento oppure utilizzando lo strumento Configurazione di ASP.NET come in precedenza in questa procedura dettagliata.
Aprire il file Web.config.
Cercare un elemento Elemento siteMap (schema delle impostazioni ASP.NET), nel caso in cui sia già esistente.
Se l'elemento Elemento siteMap (schema delle impostazioni ASP.NET) non esiste, incollare il codice riportato di seguito all'interno dell'elemento Elemento system.web (schema delle impostazioni ASP.NET), prestando attenzione a non incollarlo all'interno di altri elementi.
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true"> <providers> <add name="XmlSiteMapProvider" description="Default SiteMap provider." type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap" securityTrimmingEnabled="true" /> </providers> </siteMap>
Salvare e chiudere il file Web.config.
La funzionalità di rimozione della protezione utilizza l'autorizzazione basata sull'URL in ogni richiesta per determinare se l'utente deve accedere a un URL associato a un elemento siteMapNode. Queste operazioni aggiuntive riducono le prestazioni a seconda del numero di nodi autorizzati. Quando la funzionalità di rimozione della protezione è attivata, è possibile migliorare le prestazioni nei seguenti modi:
Impostando un limite sul numero di nodi nel file di mappa del sito Quando nei file di mappa del sito sono contenuti più di 150 nodi, è necessario più tempo per eseguire le operazioni di rimozione della protezione.
Impostando l'attributo dei ruoli in modo esplicito sugli elementi siteMapNode Notare che l'impostazione dell'attributo roles su un asterisco (*) deve essere utilizzata per i nodi che possono essere visualizzati in modo sicuro a tutti i client. La presenza di un attributo roles consente ad ASP.NET di ignorare l'autorizzazione basata sull'URL per l'URL associato a siteMapNode se l'utente è membro di uno dei ruoli elencati nell'attributo.
Creare un menu di spostamento in una pagina
Dopo avere creato una mappa del sito e alcune pagine, è possibile aggiungere al sito un sistema di esplorazione.
In alternativa, è possibile utilizzare un controllo SiteMapPath oppure Menu per visualizzare il sistema di esplorazione nel sito. Per ulteriori informazioni, vedere Controlli ASP.NET di spostamento o Procedura dettagliata: aggiunta del sistema di esplorazione a un sito Web.
Creazione di un menu di spostamento con il controllo TreeView
Il controllo TreeView sarà utilizzato per funzionare come menu di spostamento comprimibile.
Per aggiungere un menu di spostamento
Aprire la pagina Default.aspx e passare alla visualizzazione Progettazione.
Nella Casella degli strumenti, dal gruppo Dati, trascinare un controllo SiteMapDataSource nella pagina.
Nella configurazione predefinita, il controllo SiteMapDataSource ottiene le informazioni dal file Web.sitemap creato in precedenza; pertanto, non è necessario specificare informazioni aggiuntive per il controllo.
Nella Casella degli strumenti, dal gruppo Esplorazione, trascinare un controllo TreeView nella pagina.
Viene visualizzato il menu Attività TreeView.
Nella casella Scegli origine dati del menu Attività TreeView, fare clic su SiteMapDataSource1.
Salvare la pagina.
Creazione di un menu di spostamento con il controllo SiteMapPath
Il controllo SiteMapPath sarà utilizzato come visualizzazione di spostamento in stile "breadcrumb" in cui agli utenti viene visualizzato il percorso di ritorno alla pagina principale.
Per aggiungere un menu di spostamento
Aprire la pagina Hardware.aspx e passare alla visualizzazione Progettazione.
Per illustrare la modalità di funzionamento del controllo SiteMapPath, posizionare il controllo in una pagina con un elevato livello di nidificazione.
Se all'interno dei tag <H1> nella pagina è stato aggiunto un titolo, posizionare il cursore sul lato destro e premere INVIO.
Nella Casella degli strumenti, dal gruppo Esplorazione, trascinare un controllo SiteMapPath nella pagina.
Viene visualizzato il menu Attività SiteMapPath, ma non è necessario configurare un'origine dati.
Salvare la pagina.
Test della rimozione della protezione
È ora possibile eseguire il test del sito.
Per eseguire il test della rimozione della protezione
Passare alla pagina Default.aspx, quindi premere CTRL+F5 per eseguirla.
Nel controllo TreeView, i collegamenti Discounts oppure Support non devono essere visualizzati.
Fare clic su Accesso.
Accedere come Customer01, vale a dire un account utente presente nel ruolo customers.
A questo punto, nel controllo TreeView, dovrebbe essere possibile visualizzare il collegamento Support.
Fare clic su Chiusura sessione, quindi su Accesso.
Accedere come Employee01, vale a dire un account utente presente nel ruolo employees.
Nel controllo TreeView dovrebbe essere possibile visualizzare i collegamenti Support e Discounts. In qualità di utente nel ruolo employees dovrebbe essere possibile visualizzare tutti i collegamenti disponibili, in quanto nessuno di questi è limitato per il ruolo employees.
Nella pagina Default.aspx page, fare clic su Hardware per visualizzare il controllo SiteMapPath.
Il controllo SiteMapPath dovrebbe consentire la visualizzazione del percorso dalla home page alla pagina Hardware.
Nello stato corrente del sito Web, la struttura di esplorazione viene visualizzata soltanto nella home page. È possibile aggiungere gli stessi controlli SiteMapDataSource e TreeView a ciascuna pagina nell'applicazione per visualizzare un menu di spostamento in ciascuna pagina. In alternativa, è possibile inserire la struttura di esplorazione in una pagina master in modo che tale struttura sia visualizzata in modo automatico in tutte le pagine a cui fa riferimento il file della pagina master.
Passaggi successivi
In questa procedura dettagliata sono illustrate le funzionalità di base dell'esplorazione del sito ASP.NET: controlli di spostamento, gestione di ruoli e rimozione della protezione. È possibile sperimentare ulteriori funzionalità di spostamento. Ad esempio, è possibile inserire i controlli di spostamento in una pagina master per visualizzarli in tutte le pagine a cui fa riferimento la pagina master. Per informazioni dettagliate, vedere Procedura dettagliata: creazione e utilizzo di pagine master ASP.NET in Visual Web Developer
Vedere anche
Attività
Procedura dettagliata: aggiunta del sistema di esplorazione a un sito Web
Concetti
Cenni preliminari sugli spostamenti all'interno dei siti ASP.NET
Rimozione della protezione della mappa del sito ASP.NET
Protezione del sistema di spostamento all'interno dei siti ASP.NET
Protezione dell'accesso ai dati
Creazione di autorizzazioni personalizzate di accesso al codice