SqlRoleProvider Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee beheert u de opslag van informatie over het rollidmaatschap voor een ASP.NET toepassing in een SQL Server-database.
public ref class SqlRoleProvider : System::Web::Security::RoleProvider
public class SqlRoleProvider : System.Web.Security.RoleProvider
type SqlRoleProvider = class
inherit RoleProvider
Public Class SqlRoleProvider
Inherits RoleProvider
- Overname
Voorbeelden
In het volgende voorbeeld ziet u het bestand Web.config voor een ASP.NET-toepassing die is geconfigureerd voor het gebruik van een SqlRoleProvider-object en het SqlMembershipProvider. Het authorization element is zo geconfigureerd dat alleen toegang is toegestaan voor geverifieerde gebruikers in de rol Administrators.
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
</connectionStrings>
<system.web>
<authentication mode="Forms" >
<forms loginUrl="logincs.aspx"
name=".ASPXFORMSAUTH" />
</authentication>
<authorization>
<deny users="?" />
<allow roles="Administrators" />
<deny users="*" />
</authorization>
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="false"
requiresQuestionAndAnswer="false"
passwordFormat="Hashed"
applicationName="SampleApplication" />
</providers>
</membership>
<roleManager defaultProvider="SqlProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="true"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="SqlServices"
applicationName="SampleApplication" />
</providers>
</roleManager>
</system.web>
</configuration>
Opmerkingen
Deze klasse wordt gebruikt door de klassen Roles en RolePrincipal om functiebeheerservices te bieden voor een ASP.NET-toepassing met behulp van een SQL Server-database. U kunt rollenbeheer gebruiken om verschillende autorisatieniveaus voor uw toepassing op te geven.
Als u de klasse SqlRoleProvider wilt gebruiken, moet u eerst de SQL Server-database maken die wordt gebruikt door de SqlRoleProvider. Als u de database wilt maken die wordt gebruikt door de klasse SqlRoleProvider, voert u het uitvoerbare bestand aspnet_regsql.exe uit in de map C:\WINDOWS\Microsoft.NET\Framework\ versionNumber en geeft u de optie -Ar op (bijvoorbeeld aspnet_regsql.exe -Ar). De gemaakte database heet Aspnetdb. U kunt ook aspnet_regsql.exe uitvoeren om de GUI-configuratiemodus op te halen en ervoor kiezen om alle ASP.NET functies te configureren.
Als de rolprovider is geconfigureerd met een verbindingsreeks die gebruikmaakt van geïntegreerde beveiliging, moet het procesaccount van de ASP.NET-toepassing rechten hebben om verbinding te maken met de SQL Server-database.
Het Machine.config-bestand is geconfigureerd met een SqlRoleProvider-exemplaar met de naam AspNetSqlProvider dat verbinding maakt met de SQL Server op de lokale computer. U kunt dit exemplaar van de provider gebruiken of uw eigen exemplaar opgeven in het Web.config-bestand voor uw ASP.NET toepassing. Als u het AspNetSqlProvider-exemplaar wilt gebruiken, geeft u AspNetSqlProvider op als de defaultProvider in uw configuratie.
U kunt configureren SqlRoleProvider dat dezelfde database en gebruikersgegevens worden gebruikt als SqlMembershipProvider voor het gebruik van één database voor verificatie- en autorisatiegegevens. Als u dezelfde database wilt gebruiken voor lidmaatschaps- en rolgegevens, voert u het uitvoerbare aspnet_regsql.exe uit en installeert u de lidmaatschapsfunctie. Geef vervolgens dezelfde verbindingsreeks op in uw configuratie voor zowel uw SqlRoleProvider als SqlMembershipProvider-exemplaren. Zorg er ook voor dat beide providerexemplaren zijn geconfigureerd met hetzelfde ApplicationName.
Constructors
| Name | Description |
|---|---|
| SqlRoleProvider() |
Hiermee maakt u een exemplaar van de SqlRoleProvider klasse. |
Eigenschappen
| Name | Description |
|---|---|
| ApplicationName |
Hiermee haalt u de naam op van de toepassing waarvoor rolgegevens moeten worden opgeslagen en opgehaald. |
| Description |
Hiermee krijgt u een korte, beschrijvende beschrijving die geschikt is voor weergave in beheerhulpprogramma's of andere gebruikersinterfaces (UIS's). (Overgenomen van ProviderBase) |
| Name |
Hiermee haalt u de beschrijvende naam op die wordt gebruikt om tijdens de configuratie naar de provider te verwijzen. (Overgenomen van ProviderBase) |
Methoden
| Name | Description |
|---|---|
| AddUsersToRoles(String[], String[]) |
Voegt de opgegeven gebruikersnamen toe aan elk van de opgegeven rollen. |
| CreateRole(String) |
Voegt een nieuwe rol toe aan de roldatabase. |
| DeleteRole(String, Boolean) |
Hiermee verwijdert u een rol uit de roldatabase. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| FindUsersInRole(String, String) |
Hiermee haalt u een matrix met gebruikersnamen op in een rol waarin de gebruikersnaam de opgegeven gebruikersnaam bevat die overeenkomt. |
| GetAllRoles() |
Hiermee haalt u een lijst op met alle rollen voor de toepassing. |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetRolesForUser(String) |
Hiermee haalt u een lijst op met de rollen waarin een gebruiker zich bevindt. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| GetUsersInRole(String) |
Hiermee haalt u een lijst op met gebruikers in de opgegeven rol. |
| Initialize(String, NameValueCollection) |
Initialiseert de SQL Server rolprovider met de eigenschapswaarden die zijn opgegeven in het configuratiebestand van de ASP.NET toepassing. Deze methode is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt. |
| IsUserInRole(String, String) |
Hiermee wordt een waarde opgehaald die aangeeft of de opgegeven gebruiker de opgegeven rol heeft. |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| RemoveUsersFromRoles(String[], String[]) |
Hiermee verwijdert u de opgegeven gebruikersnamen uit de opgegeven rollen. |
| RoleExists(String) |
Hiermee wordt een waarde opgehaald die aangeeft of de opgegeven rolnaam al bestaat in de roldatabase. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |