Wie implementieren rollenbasierte Sicherheit mit formularbasierte Authentifizierung in Ihrer Anwendung ASP.NET mit Visual Basic .NET

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 306238 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D306238
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt, wie Sie rollenbasierte Sicherheit in einer ASP.NET Anwendung zu implementieren, die formularbasierte Authentifizierung mit Visual Basic .NET implementiert.

Anforderungen

In diesem Artikel wird davon ausgegangen, dass Sie die formularbasierte Authentifizierung auf einer ASP.NET Anwendung bereits implementiert haben.Weitere Informationen klicken Sie auf die nachstehende Artikelnummer klicken, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
308157 Formularbasierte Authentifizierung in Ihrer Anwendung ASP.NET mit Visual Basic .NET implementieren

Zuweisen von Rollen an den authentifizierenden Benutzer

Da Benutzer Formulare in der Regel nicht Microsoft Windows-Benutzer sind, müssen sie keine Rollen standardmäßig zugeordnet. Daher müssen Sie die Rollen des authentifizierenden Benutzers der Identität des Benutzers zuordnen, damit Sie innerhalb des Codes die rollenbasierte Sicherheit implementieren können.

Verwenden Sie den Beispielcode in diesem Abschnitt rollenbasierte Sicherheit in Ihrer Anwendung zu implementieren. Dieser Beispielcode den authentifizierenden Benutzer vordefinierte Rollen zugewiesen. Je nachdem, wie Sie Ihre Daten speichern, können Sie eine eigene Methode zum Abrufen der Rollen für den authentifizierten Benutzer und Identität des authentifizierenden Benutzers in der folgende Beispielcode veranschaulicht diese Rollen zuordnen implementieren.

Kopieren Sie folgenden Code in der Datei "Global.asax" Ihrer Anwendung die Rollen auf dem authentifizierenden Benutzer im Ereignishandler Application_AuthenticateRequest zuweisen:
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
				

Überprüfen der Benutzerrollen und Implementieren der Programmlogik in Ihre ASPX-Seiten

Die folgenden Schritte veranschaulichen, wie die Implementierung und Steuerung der Programmlogik basierend auf den Rollen, die der authentifizierende Benutzer gehört.
  1. Erstellen Sie eine neue ASPX-Seite mit dem Namen "Sample.aspx", und fügen Sie folgenden Code:
    <%@ 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. Speichern Sie "Sample.aspx" in der vorhandenen Anwendung. Navigieren Sie zu der Seite zu testen.

Informationsquellen

Eine Übersicht über ASP.NET-Sicherheit finden Sie im folgenden Artikel der Microsoft Knowledge Base:
306590 INFO: ASP.NET-Sicherheit (Übersicht)
Weitere Informationen zu rollenbasierter Sicherheit finden Sie in der Dokumentation des.NET Framework Software Development Kit (SDK):
Rollenbasierte Sicherheit
http://msdn.Microsoft.com/en-us/library/52kd59t0 (werden) aspx
Der Dokumentation und Quelle Code in der folgenden MSDN-Website enthält außerdem Informationen zu rollenbasierter Sicherheit:
IBuySpy Developer Solutions
http://msdn.Microsoft.com/en-us/library/ms978480.aspx
Weitere Informationen finden Sie in den folgenden Büchern:
Reilly, Douglas J. Entwerfen von Anwendungen mit Microsoft ASP.NET. Microsoft Press, 2001.

Esposito, Dino. Erstellen von Web-Lösungen mit ASP.NET und ADO.NET. Microsoft Press, 2001.
Microsoft stellt Kontaktinformationen von Drittanbietern Sie technischen Support zu helfen. Diese Kontaktinformationen kann ohne vorherige Ankündigung ändern. Microsoft garantiert nicht die Richtigkeit dieser Kontaktinformationen von Drittanbietern.

Eigenschaften

Artikel-ID: 306238 - Geändert am: Mittwoch, 24. Oktober 2012 - Version: 1.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Keywords: 
kbproductlink kbhowtomaster kbsecurity kbmt KB306238 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 306238
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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