Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den ASP.NET rollprovidern (tillsammans med ASP.NET-medlemskapsprovidern) är en funktion som gör det möjligt för ASP.NET utvecklare att skapa webbplatser som gör det möjligt för användare att skapa ett konto med en webbplats och tilldelas roller i auktoriseringssyfte. Med den här funktionen kan alla användare upprätta ett konto med webbplatsen och logga in för exklusiv åtkomst till webbplatsen och dess tjänster. Detta står i kontrast till Windows-säkerhet, vilket kräver att användare har konton i en Windows-domän. I stället kan alla användare som anger sina autentiseringsuppgifter (kombinationen användarnamn/lösenord) använda webbplatsen och dess tjänster.
Ett exempelprogram finns i Medlemskap och rollprovider. Mer information om funktionen ASP.NET medlemskapsprovider finns i Så här använder du ASP.NET-medlemskapsprovidern.
Rollproviderfunktionen använder en SQL Server-databas för att lagra användarinformation. Utvecklare av Windows Communication Foundation (WCF) kan dra nytta av dessa funktioner i säkerhetssyfte. När de är integrerade i ett WCF-program måste användarna ange en kombination av användarnamn/lösenord till WCF-klientprogrammet. Om du vill göra det möjligt för WCF att använda databasen måste du skapa en instans av ServiceAuthorizationBehavior klassen, ange dess PrincipalPermissionMode egenskap till UseAspNetRolesoch lägga till instansen i samlingen med beteenden till ServiceHost den som är värd för tjänsten.
Konfigurera rollprovidern
Under elementet
<system.web>i filen Web.config lägger du till ett<roleManager>element och anger dessenabledattribut tilltrue.Ange attributet
defaultProvidertillSqlRoleProvider.Lägg till ett
<providers>element som underordnat<roleManager>element.Som underordnad elementet
<providers>lägger du till ett<add>element med följande attribut inställda på lämpliga värden:name,type,connectionStringNameochapplicationName, enligt följande exempel.<!-- Configure the Sql Role Provider. --> <roleManager enabled ="true" defaultProvider ="SqlRoleProvider" > <providers> <add name ="SqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="SqlConn" applicationName="MembershipAndRoleProviderSample"/> </providers> </roleManager>
Konfigurera tjänsten för att använda rollprovidern
I filen Web.config lägger du till ett system.serviceModel-element>.<
Lägg till ett <beteendeelement> i elementet
<system.ServiceModel>.Lägg till en serviceBehaviors> i -elementet
<behaviors>.<Lägg till ett <beteendeelement> och ange
nameattributet till ett lämpligt värde.Lägg till en serviceAuthorization> i elementet
<behavior>.<Ange attributet
principalPermissionModetillUseAspNetRoles.Ange attributet
roleProviderNametillSqlRoleProvider. I följande exempel visas ett fragment av konfigurationen.<behaviors> <serviceBehaviors> <behavior name="CalculatorServiceBehavior"> <serviceAuthorization principalPermissionMode ="UseAspNetRoles" roleProviderName ="SqlRoleProvider" /> </behavior> </serviceBehaviors> </behaviors>