SqlRoleProvider Classe

Définition

Gère le stockage des informations d'appartenance aux rôles pour une application ASP.NET dans une base de données SQL Server.

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
Héritage
SqlRoleProvider

Exemples

L’exemple suivant montre le fichier Web.config pour une application ASP.NET configurée pour utiliser un SqlRoleProvider objet et le SqlMembershipProvider. L’élément authorization est configuré pour autoriser uniquement l’accès aux utilisateurs authentifiés dans le rôle Administrateurs.

<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>

Remarques

Cette classe est utilisée par les Roles classes et RolePrincipal pour fournir des services de gestion des rôles pour une application ASP.NET à l’aide d’une base de données SQL Server. Vous pouvez utiliser la gestion des rôles pour spécifier différents niveaux d’autorisation pour votre application.

Pour utiliser la SqlRoleProvider classe , vous devez d’abord créer la base de données SQL Server utilisée par .SqlRoleProvider Pour créer la base de données utilisée par la SqlRoleProvider classe, exécutez le aspnet_regsql.exe fichier exécutable qui se trouve dans le dossier C:\WINDOWS\Microsoft.NET\Framework\ versionNumber et spécifiez l’option -Ar (par exemple, aspnet_regsql.exe -Ar). La base de données créée est appelée Aspnetdb. Vous pouvez également exécuter aspnet_regsql.exe pour extraire le mode de configuration de l’interface utilisateur graphique et choisir de configurer toutes les fonctionnalités ASP.NET.

Si le fournisseur de rôle est configuré avec une chaîne de connexion qui utilise la sécurité intégrée, le compte de processus de l’application ASP.NET doit disposer des droits pour se connecter à la base de données SQL Server.

Le fichier Machine.config est configuré avec une SqlRoleProvider instance nommée AspNetSqlProvider qui se connecte au SQL Server sur l’ordinateur local. Vous pouvez utiliser cette instance du fournisseur ou spécifier la vôtre dans le fichier Web.config de votre application ASP.NET. Pour utiliser l’instance AspNetSqlProvider, spécifiez AspNetSqlProvider comme dans defaultProvider votre configuration.

Vous pouvez configurer pour SqlRoleProvider utiliser la même base de données et les mêmes informations utilisateur que le SqlMembershipProvider afin d’utiliser une base de données unique pour les informations d’authentification et d’autorisation. Pour utiliser la même base de données pour les informations d’appartenance et de rôle, exécutez l’exécutable aspnet_regsql.exe et installez la fonctionnalité d’appartenance. Ensuite, spécifiez la même chaîne de connexion dans votre configuration pour vos SqlRoleProvider instances et SqlMembershipProvider . Vérifiez également que les deux instances de fournisseur sont configurées avec le même ApplicationName.

Constructeurs

SqlRoleProvider()

Crée une instance de la classe SqlRoleProvider.

Propriétés

ApplicationName

Obtient ou définit le nom de l'application pour laquelle stocker ou récupérer des informations de rôle.

Description

Obtient une description brève et conviviale qui peut s'afficher dans les outils d'administration ou d'autres interfaces utilisateur.

(Hérité de ProviderBase)
Name

Obtient le nom convivial qui référence le fournisseur au cours de la configuration.

(Hérité de ProviderBase)

Méthodes

AddUsersToRoles(String[], String[])

Ajoute le nom des utilisateurs spécifiés à chacun des rôles spécifiés.

CreateRole(String)

Ajoute un nouveau rôle à la base de données des rôles.

DeleteRole(String, Boolean)

Supprime un rôle de la base de données.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
FindUsersInRole(String, String)

Obtient un tableau de noms d’utilisateurs dans un rôle dont le nom d’utilisateur contient le nom d’utilisateur spécifié.

GetAllRoles()

Obtient la liste de tous les rôles pour l'application.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetRolesForUser(String)

Obtient une liste des rôles dans lesquels figure l'utilisateur.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
GetUsersInRole(String)

Obtient une liste des utilisateurs du rôle spécifié.

Initialize(String, NameValueCollection)

Initialise le fournisseur de rôles SQL Server à l'aide des valeurs de propriété spécifiées dans le fichier de configuration de l'application ASP.NET. Cette méthode n'est pas destinée à être utilisée directement depuis votre code.

IsUserInRole(String, String)

Obtient une valeur indiquant si l'utilisateur spécifié figure dans le rôle spécifié.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
RemoveUsersFromRoles(String[], String[])

Supprime les noms d'utilisateurs spécifiés des rôles spécifiés.

RoleExists(String)

Obtient une valeur qui indique si le nom de rôle spécifié existe déjà dans la base de données des rôles.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi