Come implementare la protezione basata sui ruoli con autenticazione basata su form nell'applicazione ASP.NET utilizzando Visual Basic .NET

Traduzione articoli Traduzione articoli
Identificativo articolo: 306238 - Visualizza i prodotti a cui si riferisce l?articolo.
Questo articolo è stato precedentemente pubblicato con il codice di riferimento I306238
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene descritto come implementare la protezione basata sui ruoli in un'applicazione ASP.NET che implementa l'autenticazione basata su form utilizzando Visual Basic .NET.

Requisiti

Questo articolo si presuppone che sia stata implementata l'autenticazione basata su form in un'applicazione ASP.NET.Per ulteriori informazioni, fare clic il numero articolo per visualizzare l'articolo della Microsoft Knowledge Base:
308157 Implementazione dell'autenticazione basata su form nell'applicazione ASP.NET utilizzando Visual Basic .NET

Assegnare i ruoli per l'autenticazione utente

Poiché gli utenti dei moduli non sono generalmente utenti Microsoft Windows, non hanno alcun ruolo associato per impostazione predefinita. Pertanto, è necessario collegare i ruoli dell'utente autenticante all'identità dell'utente che è possibile implementare la protezione basata sui ruoli all'interno del codice.

Utilizzare il codice di esempio in questa sezione per implementare la protezione basata sui ruoli nell'applicazione. Questo esempio di codice vengono assegnati ruoli predefiniti per l'autenticazione utente. A seconda di come si memorizzano i dati utente, è possibile implementare il metodo per recuperare i ruoli dell'utente autenticato e associare tali ruoli all'identità di autenticazione dell'utente, illustrato nell'esempio di codice che seguono.

Copiare il codice seguente nel file Global. asax dell'applicazione esistente per assegnare i ruoli all'utente autenticante nel gestore eventi Application_AuthenticateRequest :
Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
if (not(HttpContext.Current.User is Nothing)) then
    if HttpContext.Current.User.Identity.AuthenticationType = "Forms" then
        Dim id as System.Web.Security.FormsIdentity
        id = HttpContext.Current.User.Identity

        Dim MyRoles(2) As String
        MyRoles(0) = "Manager"
        MyRoles(1) = "Admin"
        HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(id,MyRoles) 
    End if
End if
End sub
				

Verificare i ruoli utente e implementare la logica di programma nelle pagine ASPX

Di seguito viene illustrato come implementare e controllare la logica del programma in base ai ruoli a cui appartiene l'utente che esegue l'autenticazione.
  1. Creare una nuova pagina aspx denominata Sample e incollare il codice seguente:
    <%@ Page Language="VB" %>
    <%@ Import Namespace="System.Web" %>
    
      <script runat=server>
        Sub Page_Load(Src As Object, E As EventArgs)
    	if User.IsInRole("Admin") then
    		Response.Write ("You are an Administrator")
    	Else
    		Response.Write ("You do not have any role assigned")
    	End if
        End Sub
    
      </script>
    					
  2. Salvare Sample dell'applicazione. Passare alla pagina per eseguire il test.

Riferimenti

Per una panoramica sulla protezione ASP.NET, vedere il seguente articolo della Microsoft Knowledge Base:
306590 INFORMAZIONI: Cenni preliminari sulla protezione ASP.NET
Per ulteriori informazioni sulla protezione basata sui ruoli, vedere la seguente documentazione del Software Development Kit (SDK) di.NET Framework:
Protezione basata sui ruoli
aspx (vs.71) http://msdn.microsoft.com/en-us/library/52kd59t0
Il documentazione e codice sorgente sul seguente sito Web MSDN contiene inoltre informazioni sulla protezione basata sui ruoli:
IBuySpy Developer Solutions
http://msdn.microsoft.com/en-us/library/ms978480.aspx
Per ulteriori informazioni, consultare la documentazione seguente:
Reilly, Douglas J. Progettazione di applicazioni Microsoft ASP.NET. Microsoft Press, 2001.

Esposito Dino. Creazione di soluzioni Web con ASP.NET e ADO.NET. Microsoft Press, 2001.
Microsoft fornisce informazioni di contatto di terze parti per facilitare l'individuazione del supporto tecnico. Le informazioni di contatto modifica senza preavviso. Microsoft non garantisce l'accuratezza delle informazioni per contattare altri produttori.

Proprietà

Identificativo articolo: 306238 - Ultima modifica: mercoledì 24 ottobre 2012 - Revisione: 1.0
Le informazioni in questo articolo si applicano a:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Chiavi: 
kbproductlink kbhowtomaster kbsecurity kbmt KB306238 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 306238
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com