Freigeben über


Exemplarische Vorgehensweise zu Ansprüchen: Erstellen der formularbasierten Authentifizierung für anspruchsbasierte SharePoint 2010-Webanwendungen mithilfe von ASP.NET SQL-Mitgliedschafts- und Rollenanbietern

Zusammenfassung:  Lernen Sie, formularbasierte Authentifizierung für anspruchsbasierte Webanwendungen mithilfe von ASP.NET SQL-Mitgliedschafts- und Rollenanbietern zu erstellen.

Letzte Änderung: Freitag, 18. Januar 2013

Gilt für: Business Connectivity Services | Open XML | SharePoint Designer 2010 | SharePoint Foundation 2010 | SharePoint Online | SharePoint Server 2010 | Visual Studio

Inhalt dieses Artikels
Übersicht über das Authentifizieren anspruchsbasierter Webanwendungen mithilfe von ASP.NET SQL-Mitgliedschafts- und Rollenanbietern
Schritt 1: Erstellen einer SharePoint-Webanwendung
Schritt 2: Vorbereiten der Datenbank für die Verwendung eines ASP.NET-Mitgliedschafts- und Rollenanbieters für die Webanwendung
Schritt 3: Konfigurieren eines Mitgliedschafts- und Rollenanbieters für die SharePoint-Webanwendung
Schritt 4: Hinzufügen von Benutzern und Rollen zur Datenbank des Mitgliedschafts- und Rollenanbieters
Schritt 5: Testen der formularbasierten Authentifizierung
Schritt 6: (Optional) Problembehandlung bei Konfigurations- und Ausnahmefehlern
Schritt 7: Anzeigen der Ansprüche
Schritt 8: Hinzufügen weiterer Benutzer und Rollen
Schlussbemerkung
Weitere Ressourcen

Bereitgestellt von:  Andy Li, Microsoft Corporation

Inhalt

  • Übersicht über das Authentifizieren anspruchsbasierter Webanwendungen mithilfe von ASP.NET SQL-Mitgliedschafts- und Rollenanbietern

  • Schritt 1: Erstellen einer SharePoint-Webanwendung

  • Schritt 2: Vorbereiten der Datenbank für die Verwendung eines ASP.NET-Mitgliedschafts- und Rollenanbieters für die Webanwendung

  • Schritt 3: Konfigurieren eines Mitgliedschafts- und Rollenanbieters für die SharePoint-Webanwendung

  • Schritt 4: Hinzufügen von Benutzern und Rollen zur Datenbank des Mitgliedschafts- und Rollenanbieters

  • Schritt 5: Testen der formularbasierten Authentifizierung

  • Schritt 6: (Optional) Problembehandlung bei Konfigurations- und Ausnahmefehlern

  • Schritt 7: Anzeigen der Ansprüche

  • Schritt 8: Hinzufügen weiterer Benutzer und Rollen

  • Schlussbemerkung

  • Weitere Ressourcen

Klicken Sie, um Code abzurufen. Code zum Herunterladen: ClaimsExample-CreateFormsBasedAuthentication

Übersicht über das Authentifizieren anspruchsbasierter Webanwendungen mithilfe von ASP.NET SQL-Mitgliedschafts- und Rollenanbietern

In dieser exemplarischen Vorgehensweise erstellen Sie eine anspruchsbasierte Webanwendung mithilfe eines Microsoft ASP.NET-Mitgliedschafts- und Rollenanbieters als Authentifizierungsanbieter.

Die formularbasierte Authentifizierung stellt eine benutzerdefinierte Identitätsverwaltung in Microsoft SharePoint 2010 bereit, indem ein Mitgliedschaftsanbieter implementiert wird, der die Schnittstellen zum Identifizieren und Authentifizieren einzelner Benutzer definiert, und ein Rollen-Manager, der die Schnittstellen zum Gruppieren einzelner Benutzer in logische Gruppen und Rollen definiert.

In diesem Artikel wird davon ausgegangen, dass Sie mit der formularbasierten Authentifizierung vertraut sind. Weitere Informationen zur formularbasierten Authentifizierung finden Sie unter Formularbasierte Authentifizierung in SharePoint-Produkten und -Technologien (Teil 1): Einführung.

Schritt 1: Erstellen einer SharePoint-Webanwendung

HinweisHinweis

Wenn Sie den Befehlszeilenbefehl aus diesem Artikel kopieren und versuchen ihn auszuführen, treten möglicherweise Fehler auf. Dies liegt daran, dass einige Zeichen bei der Formatierung in Sonderzeichen konvertiert wurden. Beispielsweise ist ein Bindestrich (-), den Sie aus diesem Artikel kopieren, möglicherweise in einem Eingabeaufforderungsfenster nicht zulässig.

So erstellen Sie eine SharePoint-Webanwendung

  1. Wechseln Sie zur Seite SharePoint 2010-Zentraladministration.

  2. Klicken Sie im Abschnitt Anwendungsverwaltung auf Webanwendungen verwalten.

  3. Klicken Sie auf dem Menüband auf Neu.

  4. Klicken Sie im Dialogfeld Neue Webanwendung erstellen unter Authentifizierung auf Anspruchsbasierte Authentifizierung.

  5. Ändern Sie im Abschnitt IIS-Website unter Neue IIS-Website erstellen den Eintrag im Feld Name in SharePoint – SQL FBA.

  6. Ändern Sie die Nummer im Feld Port in 200.

  7. Führen Sie im Abschnitt Forderungsauthentifizierungstypen folgende Schritte aus:

    • Aktivieren Sie Formularbasierte Authentifizierung (FBA) aktivieren.

    • Deaktivieren Sie andere Authentifizierungsmodi.

  8. Geben Sie in den Feldern für den Mitgliedschaftsanbieter und den Rollen-Manager die folgenden Namen ein:

    • Name des ASP.NET-Mitgliedschaftsanbieters: aspnetmembership

    • Name des ASP.NET-Rollen-Managers: aspnetrolemanager

      HinweisHinweis

      Wir haben die Mitgliedschafts- und Rollenanbieter noch nicht eingerichtet. Dies geschieht in nachfolgenden Schritten.

  9. Ändern Sie den Wert URL in http://intranet.contoso.com:200.

  10. Ändern Sie im Abschnitt Datenbankname und Authentifizierung den Datenbanknamen in WSS_Content_200.

  11. Übernehmen Sie für die anderen Einstellungen die Standardwerte.

  12. Klicken Sie auf OK, um die Webanwendung zu erstellen.

Schritt 2: Vorbereiten der Datenbank für die Verwendung eines ASP.NET-Mitgliedschafts- und Rollenanbieters für die Webanwendung

In diesem Schritt bereiten wir die Microsoft SQL Server-Datenbank manuell für die ASP.NET-Mitgliedschafts- und Rollenanbieter vor. Für diese Konfiguration stehen auch Tools zur Verfügung. Wir durchlaufen die Schritte jedoch manuell, damit Sie Einblick in alle an der Konfiguration beteiligten Anbieterkomponenten erhalten.

HinweisHinweis

Vom Microsoft SQL Server-Mitgliedschaftsanbieter werden Benutzerinformationen in einer SQL Server-Datenbank gespeichert. Sie können einen SQL Server-Benutzerspeicher manuell erstellen, indem Sie Aspnet_regsql.exe an der Befehlszeile ausführen. Alternativ können Sie Aspnet_regsql.exe im Assistentenmodus ausführen (siehe ASP.NET SQL Server-Registrierungstool (Aspnet_regsql.exe)) oder das ASP.NET-Konfigurationstool verwenden. Sie finden das Tool ASP.NET-Konfiguration unter dem Menü Website in Microsoft Visual Studio.

So bereiten Sie die Datenbank für die Verwendung eines ASP.NET-Mitgliedschafts- und Rollenanbieters für die Webanwendung vor

  1. Starten Sie Microsoft SQL Server Management Studio, und stellen Sie eine Verbindung mit der lokalen Serverinstanz her.

  2. Fügen Sie eine neue Datenbank mit dem Namen aspnetdb_claim hinzu, wie in Abbildung 1 dargestellt.

    Abbildung 1. Erstellen einer neuen Datenbank mit dem Namen "aspnetdb_claim"

    Erstellen einer neuen Datenbank

  3. Erstellen Sie mithilfe von aspnet_regsql.exe die Mitgliedsdatenbank. Öffnen Sie ein Eingabeaufforderungsfenster. Führen Sie den folgenden Befehlszeilenbefehl aus, um zum Verzeichnis von Microsoft .NET Framework 2.0 zu wechseln.

    cd C:\Windows\Microsoft.NET\Framework64\v2.0.50727

  4. Führen Sie den folgenden Befehl aus, wie in Abbildung 2 dargestellt.

    aspnet_regsql -S DEMO2010A -E -A mr –d aspnetdb_claim

    –S    Gibt den Server an. In diesem Beispiel handelt es sich um einen lokalen Server.

    –E    Gibt an, dass die Windows-Authentifizierung zum Herstellen der Verbindung mit SQL Server verwendet werden soll.

    –A mr   Gibt an, dass das Mitgliedschafts- und Rollenfeature hinzugefügt werden soll.

    –d    Gibt den Datenbanknamen an.

    Abbildung 2. Erstellen der Mitgliedsdatenbank mithilfe von "aspnet_regsql.exe"

    Erstellen einer Mitgliedsdatenbank mithilfe von 'aspnet_regsql.exe'

  5. Erweitern Sie den Knoten aspnetdb_claim, und überprüfen Sie, ob alle Tabellen erstellt wurden.

    Abbildung 3. Erweiterter aspnetdb_claim-Knoten

    Erweiterter aspnetdb_claim-Knoten

  6. Gewähren Sie dem Anwendungspoolkonto der Webanwendung Datenbankzugriff. Da die Webanwendung contoso\adminstrator zur Anmeldung verwendet, sollte sie automatisch über Vollzugriff auf die Datenbank verfügen.

Schritt 3: Konfigurieren eines Mitgliedschafts- und Rollenanbieters für die SharePoint-Webanwendung

Sie müssen drei web.config-Dateien ändern:

  • Zentraladministration: Zulassen der Suche nach Websitesammlungen

  • Sicherheitstokendienst: Zulassen der Anmeldung und Ausstellen von Token

  • FBA-Webanwendung: Zulassen der Suche in der lokalen Webanwendung

So konfigurieren Sie einen Mitgliedschafts- und Rollenanbieter für die SharePoint-Webanwendung

  1. Fügen Sie in der web.config-Datei für die Webanwendung mit SQL-formularbasierter Authentifizierung nach dem schließenden </configSections>-Tag die folgende Verbindungszeichenfolge hinzu.

    HinweisHinweis

    Wenn Sie Text aus dem folgenden Beispiel kopieren und einfügen, werden möglicherweise Tabstopp- oder Leerzeichen hinzugefügt. Stellen Sie beim Ändern von web.config sicher, dass keine Tabstopp- oder Leerzeichen hinzugefügt werden.

    Nach dem Hinzufügen der Verbindungszeichenfolge sollte die web.config-Datei dem folgenden Beispiel gleichen.

    <connectionStrings>
      <add name="MyLocalSQLServer"
           connectionString="Initial Catalog=aspnetdb_claim;data source=DEMO2010A;Integrated Security=SSPI;" />
    </connectionStrings>
    
  2. Wiederholen Sie den vorherigen Schritt für die Websites Zentraladministration und SecurityTokenServiceApplication.

    Die Website SecurityTokenServiceApplication befindet sich unter der Website SharePoint-Webdienste, wie in Abbildung 4 dargestellt.

    Abbildung 4. Position der SecurityTokenServiceApplication-Website

    Speicherort der SecurityTokenServiceApplication-Website

  3. Kehren Sie zur Website der Webanwendung mit formularbasierter Authentifizierung (http://intranet.contoso.com:200) zurück, und öffnen Sie die web.config-Datei erneut.

  4. Fügen Sie den folgenden Code innerhalb des <Providers>-Tags hinzu, das sich unter dem <membership>-Tag befindet (siehe Abbildung 5).

      <add name="aspnetmembership" 
                 connectionStringName="MyLocalSQLServer" 
                 applicationName="MyAppName" 
                 type="System.Web.Security.SqlMembershipProvider, 
                 System.Web, Version=2.0.0.0, Culture=neutral, 
                 PublicKeyToken=b03f5f7f11d50a3a" />
    

    Abbildung 5. Anbieterwerte in der web.config-Datei der FBA-Webanwendung

    Werte der Anbieter

  5. Fügen Sie das folgende Rollen-Manager-Element zum <Providers>-Tag hinzu, das sich unter dem <RoleManager>-Abschnitt befindet (siehe Abbildung 6).

            <add name="aspnetrolemanager" 
                 type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
                 connectionStringName="MyLocalSQLServer"
                 applicationName="MyAppName" />
    

    Abbildung 6. Rollen-Manager-Werte in der web.config-Datei der FBA-Webanwendung

    Werte des Rollen-Managers

    HinweisHinweis

    Das applicationName-Attribut gibt den Anwendungsnamen für die Webanwendung an. Dieser Name wird vom ASP.NET-Mitgliedschafts- und Rollenanbieter verwendet, um Benutzer eindeutig zu identifizieren.

  6. Wiederholen Sie die Schritte 1 bis 5 in diesem Verfahren für die Websites Zentraladministration und SecurityTokenServiceApplication.

    HinweisHinweis

    Da die web.config-Datei für die Website des SharePoint-Sicherheitsdiensts (Security Token Service, STS) keinen <system.web>-Abschnitt enthält, müssen Sie diesen manuell hinzufügen. Die Website SecurityTokenServiceApplication befindet sich unter der Website SharePoint-Webdienste, wie in Abbildung 4 dargestellt. Als Beispiel für die fertigen web.config-Dateien können Sie die Konfigurationsdateien aus dem zu diesem Artikel gehörigen Download (ClaimsExample-CreateFormsBasedAuthentication) öffnen.

Schritt 4: Hinzufügen von Benutzern und Rollen zur Datenbank des Mitgliedschafts- und Rollenanbieters

Fügen Sie nun der Datenbank des Mitgliedschafts- und Rollenanbieters Benutzer und Rollen hinzu.

So fügen Sie der Datenbank des Mitgliedschafts- und Rollenanbieters Benutzer und Rollen hinzu

  1. Starten Sie Microsoft SQL Server Management Studio, und führen Sie die folgende Abfrage für die aspnetdb_claim-Datenbank aus, wie in Abbildung 7 dargestellt.

    declare @now datetime
    set @now= GETDATE()
    exec aspnet_Membership_CreateUser 'MyAppName','admin1','pass@word1',
        '','admin1@contoso.com','','',1,@now,@now,0,0,null
    

    Abbildung 7. Abfragen der aspnetdb_claim-Datenbank

    Abfragen der aspnetdb_claim-Datenbank

  2. Führen Sie die folgende Abfrage aus, um der Rolle Admin den Benutzer admin1 hinzuzufügen, wie in Abbildung 8 dargestellt.

    EXEC aspnet_Roles_CreateRole 'MyAppName', 'Admin'
    EXEC aspnet_UsersInRoles_AddUsersToRoles 'MyAppName', 'admin1', 'Admin', 8 
    

    Abbildung 8. Hinzufügen des Benutzers "admin1" zur Administratorrolle

    Hinzufügen von Benutzer 'admin1' zur Administratorrolle

Schritt 5: Testen der formularbasierten Authentifizierung

Testen Sie nun die formularbasierte Authentifizierung.

So testen Sie die formularbasierte Authentifizierung

  1. Klicken Sie auf der Website für die Zentraladministration unter Anwendungsverwaltung auf Websitesammlung erstellen.

  2. Wählen Sie in der Dropdownliste Webanwendung die FBA-Webanwendung http://intranet.contoso.com:200 aus (siehe Abbildung 9).

    Abbildung 9. Konfigurieren der Webanwendung

    Konfigurieren der Webanwendung

  3. Ändern Sie den Wert im Feld Titel in FBA Site.

  4. Klicken Sie im Feld Benutzername auf Durchsuchen, und suchen Sie den oben hinzugefügten Benutzer.

  5. Geben Sie im Suchfeld admin1 ein, und klicken Sie dann auf die Suchschaltfläche, wie in Abbildung 10 dargestellt.

    Abbildung 10. Personenauswahl

    Personenauswahl

  6. Doppelklicken Sie im Ergebnisbereich auf den Benutzer admin1. Dadurch kehren Sie zur Seite zum Erstellen der Websitesammlung zurück.

  7. Klicken Sie auf OK, um die Websitesammlung zu erstellen.

  8. Wechseln Sie zu http://intranet.contoso.com:200. Die Anmeldeseite sollte angezeigt werden, wie in Abbildung 11 dargestellt.

    Abbildung 11. Anmeldeseite

    Anmeldeseite

  9. Geben Sie die folgenden Anmeldeinformationen ein, und klicken Sie dann auf Anmelden.

    • Benutzername: admin1

    • Kennwort: pass@word1

  10. Beachten Sie, dass nach der Anmeldung in der rechten oberen Ecke der Benutzername admin1 angezeigt wird, wie in Abbildung 12 dargestellt.

    Abbildung 12. SharePoint-Website nach der Authentifizierung von Benutzer "admin1"

    SharePoint-Website nach der Authentifizierung von Benutzer "admin1"

Schritt 6: (Optional) Problembehandlung bei Konfigurations- und Ausnahmefehlern

Abbildung 13 zeigt den Fehler, der auftritt, wenn in die web.config-Datei die falschen Konfigurationen eingegeben werden. Bedenken Sie, dass Sie alle web.config-Dateien für alle SharePoint-Prozesse bearbeiten müssen. Der zu diesem Artikel gehörige Download enthält drei web.config-Dateien als Referenz. Abbildung 14 zeigt einen Ausnahmefehler.

Abbildung 13. Fehler in der Konfiguration des Mitgliedschaftsanbieters

Konfigurationsfehler des Mitgliedschaftsanbieters

Abbildung 14. Ausnahmefehler

Unbehandelter Ausnahmefehler

Bei Auftreten eines Ausnahmefehlers müssen Sie im <serviceBehaviors>-Abschnitt den includeExceptionDetailInFaults-Wert hinzufügen, wie in Abbildung 15 dargestellt.

Abbildung 15. Hinzufügen des includeExceptionDetailInFaults-Werts im <serviceBehaviors>-Abschnitt

Hinzufügen eines includeExceptionDetailInFaults-Werts

Schritt 7: Anzeigen der Ansprüche

Zeigen Sie als Nächstes die Ansprüche an.

So zeigen Sie die Ansprüche an

  1. Erstellen Sie ein Webpart, und ersetzen Sie die RenderContent-Funktion durch den folgenden Code. Unter Umständen müssen Sie einen Verweis auf Microsoft.IdentityModel.dll sowie den Namespace Microsoft.IdentityModel.Claims hinzufügen.

            protected override void RenderContents(HtmlTextWriter writer)
            {
                try
                {
                    IClaimsIdentity currentIdentity = System.Threading.Thread.CurrentPrincipal.Identity as IClaimsIdentity;
                    writer.Write("---Subject:" + currentIdentity.Name + "<BR/>");
    
                    foreach (Claim claim in currentIdentity.Claims)
                    {
                        writer.Write("   ClaimType: " + claim.ClaimType + "<BR/>");
                        writer.Write("   ClaimValue: " + claim.Value + "<BR/");
                        writer.Write("   ClaimValueTypes: " + claim.ValueType + "<BR/>");
                        writer.Write("   Issuer: " + claim.Issuer + "<BR/");
                        writer.Write("   OriginalIssuer: " + claim.OriginalIssuer + "<BR/>");
                        writer.Write("   Properties: " + claim.Properties.Count.ToString() + "<BR/>");
                    }
                }
                catch (Exception ex)
                {
                    writer.Write("exception occurred: " + ex.Message);
                }
    
            }
    
  2. Stellen Sie die Lösung bereit, und fügen Sie der Homepage der Webanwendung FBA Site das Webpart hinzu (siehe Abbildung 16).

    Abbildung 16. Informationen zu Anspruchstyp und Anspruchswert

    Informationen zu Anspruchstyp und Anspruchswert

  3. Beachten Sie die folgenden beiden Ansprüche.

    ClaimType: https://schemas.microsoft.com/sharepoint/2009/08/claims/userid
    ClaimValue: 0#.f|aspnetmembership|admin1
    ClaimType: https://schemas.microsoft.com/ws/2008/06/identity/claims/role
    ClaimValue: Admin
    

    Der Rollenanspruch wird vom ASP.NET-Rollenanbieter abgerufen. Erinnern Sie sich, dass Admin der Name der Rolle ist, die wir dem Benutzer zugewiesen haben. Die Rolle lautet admin1, wenn wir die SQL-Abfrage ausführen, um die Rolle für den Benutzer hinzuzufügen.

Schritt 8: Hinzufügen weiterer Benutzer und Rollen

Fügen Sie als Nächstes weitere Benutzer und Rollen hinzu.

So fügen Sie weitere Benutzer und Rollen hinzu

  1. Führen Sie die folgende SQL-Abfrage aus, um dem Anbieter weitere Benutzer und Rollen hinzuzufügen.

    declare @now datetime
    set @now= GETDATE()
    
    exec aspnet_Membership_CreateUser 'MyAppName','bob','pass@word1',
        '','bob@contoso.com','','',1,@now,@now,0,0,null
    exec aspnet_Membership_CreateUser 'MyAppName','mary','pass@word1',
        '','mary@contoso.com','','',1,@now,@now,0,0,null
    exec aspnet_Membership_CreateUser 'MyAppName','jack','pass@word1',
    '','jack@contoso.com','','',1,@now,@now,0,0,null
    
    EXEC aspnet_Roles_CreateRole 'MyAppName', 'Employee'
    EXEC aspnet_Roles_CreateRole 'MyAppName', 'TeamManager'
    EXEC aspnet_Roles_CreateRole 'MyAppName', 'CEO'
    
    EXEC aspnet_UsersInRoles_AddUsersToRoles 'MyAppName', 'bob', 'Employee', 8 
    EXEC aspnet_UsersInRoles_AddUsersToRoles 'MyAppName', 'mary', 'TeamManager', 8 
    EXEC aspnet_UsersInRoles_AddUsersToRoles 'MyAppName', 'jack', 'CEO', 8 
    EXEC aspnet_UsersInRoles_AddUsersToRoles 'MyAppName', 'jack', 'Admin', 8 
    
  2. Wählen Sie auf dem Menüband unter Websiteaktionen den Eintrag Websiteberechtigungen aus, und klicken Sie dann auf Berechtigungen erteilen. Klicken Sie auf das Symbol Durchsuchen, um das Dialogfeld Personenauswahl zu öffnen. Stellen Sie sicher, dass Sie weiterhin als admin1 angemeldet sind.

  3. Wählen Sie Formularauthentifizierung aus, wie in Abbildung 17 dargestellt.

    Abbildung 17. Personenauswahl mit Suchergebnissen

    Personenauswahl mit Suchergebnissen

  4. Geben Sie im Suchfeld bob ein, wie in Abbildung 17 dargestellt, und klicken Sie dann auf Suchen. Es sollte ein Datensatz zurückgegeben werden.

  5. Doppelklicken Sie auf den Eintrag bob, um ihn dem Feld Hinzufügen -> hinzuzufügen.

  6. Klicken Sie auf OK.

  7. Wiederholen Sie die Schritte 4 bis 6, um den Benutzer mary hinzuzufügen.

  8. Wählen Sie im Dropdownfeld den Eintrag FBA Site Members aus, wie in Abbildung 18 dargestellt.

    Abbildung 18. Erteilen von Berechtigungen für Benutzer

    Erteilen von Berechtigungen für Benutzer

  9. Klicken Sie auf OK.

  10. Klicken Sie auf dem Menüband auf Berechtigungen erteilen.

  11. Klicken Sie auf Durchsuchen, um die Personenauswahl zu starten.

  12. Wählen Sie auf der linken Seite erneut Formularauthentifizierung aus, wie weiter oben in Abbildung 17 dargestellt.

  13. Geben Sie im Suchfeld ceo ein. Es sollte ein Datensatz zurückgegeben werden, wie in Abbildung 19 dargestellt.

    HinweisHinweis

    Im Beispiel in diesem Artikel ist ceo eine Rolle vom ASP.NET-Rollenanbieter. Wir haben diese Rolle am Anfang von Schritt 8 mit einer SQL-Abfrage hinzugefügt.

    Abbildung 19. Suche nach einer Rolle mit dem Namen "ceo"

    Suche nach einer Rolle mit dem Namen 'ceo'

  14. Doppelklicken Sie auf den Eintrag ceo, um ihn auf der Seite Berechtigungen erteilen hinzuzufügen.

  15. Erteilen Sie der Rolle ceo Vollzugriff, wie in Abbildung 20 dargestellt.

    Abbildung 20. Erteilen von Vollzugriff für "ceo"

    Erteilen von Vollzugriff für 'ceo'

  16. Klicken Sie rechts oben auf der Seite auf admin1, und wählen Sie dann Als anderer Benutzer anmelden aus, wie in Abbildung 21 dargestellt.

    Abbildung 21. Anmelden als anderer Benutzer

    Anmelden als anderer Benutzer

    Versuchen Sie, sich als Benutzer bob bei der Website anzumelden, und dann als Benutzer mary. Beachten Sie, dass von dem Webpart der richtige Rollenanspruch vom Rollenanbieter angezeigt wird.

  17. Versuchen Sie, sich als jack anzumelden. Beachten Sie, dass dem Benutzer jack die folgenden beiden Ansprüche zugewiesen werden.

    Anspruchstyp (ClaimType): https://schemas.microsoft.com/ws/2008/06/identity/claims/role

    Anspruchswert (ClaimValue): Admin

    Anspruchstyp (ClaimType): https://schemas.microsoft.com/ws/2008/06/identity/claims/role

    Anspruchswert (ClaimValue): ceo

    Die beiden Ansprüche stimmen mit den Rollen überein, die zuvor in der SQL-Abfrage zugewiesen wurden. Beachten Sie, dass wir die Berechtigung der Rolle ceo zugewiesen haben. Solange der Benutzer über einen ceo-Anspruch verfügt, sollte er somit in der Lage sein, sich bei der Website anzumelden, und die entsprechende Berechtigung besitzen.

Schlussbemerkung

In dieser exemplarischen Vorgehensweise lernen Sie, formularbasierte Authentifizierung für anspruchsbasierte Webanwendungen mithilfe von ASP.NET SQL-Mitgliedschafts- und Rollenanbietern zu erstellen.

Weitere Ressourcen

Weitere Informationen finden Sie in den folgenden Ressourcen: