SqlRoleProvider Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Administra el almacenamiento de información de pertenencia a roles para una aplicación de ASP.NET en una base de datos de 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
- Herencia
Ejemplos
En el ejemplo siguiente se muestra el archivo Web.config de una aplicación de ASP.NET configurada para usar un objeto /> authorization elemento está configurado para permitir solo el acceso a los usuarios autenticados en el rol Administradores.
<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>
Comentarios
Las clases Roles y RolePrincipal usan esta clase para proporcionar servicios de administración de roles para una aplicación de ASP.NET mediante una base de datos de SQL Server. Puede usar la administración de roles para especificar distintos niveles de autorización para la aplicación.
Para usar la clase /> aspnet_regsql.exe encontrado en la carpeta C:\WINDOWS\Microsoft.NET\Framework\ versionNumber y especifique la opción -Ar (por ejemplo, aspnet_regsql.exe -Ar). La base de datos creada se denomina Aspnetdb. Como alternativa, ejecute aspnet_regsql.exe para extraer el modo de configuración de gui y elija configurar todas las características de ASP.NET.
Si el proveedor de roles está configurado con un cadena de conexión que usa la seguridad integrada, la cuenta de proceso de la aplicación de ASP.NET debe tener derechos para conectarse a la base de datos de SQL Server.
El archivo Machine.config se configura con una instancia de />
Puede configurar para SqlRoleProvider usar la misma información de base de datos y usuario que para SqlMembershipProvider usar una base de datos única para la información de autenticación y autorización. Para usar la misma base de datos para la información de pertenencia y rol, ejecute el archivo ejecutable aspnet_regsql.exe e instale la característica de pertenencia. A continuación, especifique el mismo cadena de conexión en la configuración para las instancias de /> /
Constructores
| Nombre | Description |
|---|---|
| SqlRoleProvider() |
Crea una instancia de la clase SqlRoleProvider. |
Propiedades
| Nombre | Description |
|---|---|
| ApplicationName |
Obtiene o establece el nombre de la aplicación para la que se va a almacenar y recuperar información de rol. |
| Description |
Obtiene una breve descripción fácil de mostrar en herramientas administrativas u otras interfaces de usuario (UIs). (Heredado de ProviderBase) |
| Name |
Obtiene el nombre descriptivo que se usa para hacer referencia al proveedor durante la configuración. (Heredado de ProviderBase) |
Métodos
| Nombre | Description |
|---|---|
| AddUsersToRoles(String[], String[]) |
Agrega los nombres de usuario especificados a cada uno de los roles especificados. |
| CreateRole(String) |
Agrega un nuevo rol a la base de datos de roles. |
| DeleteRole(String, Boolean) |
Quita un rol de la base de datos de roles. |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| FindUsersInRole(String, String) |
Obtiene una matriz de nombres de usuario en un rol donde el nombre de usuario contiene el nombre de usuario especificado que debe coincidir. |
| GetAllRoles() |
Obtiene una lista de todos los roles de la aplicación. |
| GetHashCode() |
Actúa como la función hash predeterminada. (Heredado de Object) |
| GetRolesForUser(String) |
Obtiene una lista de los roles en los que está un usuario. |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| GetUsersInRole(String) |
Obtiene una lista de usuarios en el rol especificado. |
| Initialize(String, NameValueCollection) |
Inicializa el proveedor de roles de SQL Server con los valores de propiedad especificados en el archivo de configuración de ASP.NET aplicación. Este método no está pensado para usarse directamente desde el código. |
| IsUserInRole(String, String) |
Obtiene un valor que indica si el usuario especificado está en el rol especificado. |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| RemoveUsersFromRoles(String[], String[]) |
Quita los nombres de usuario especificados de los roles especificados. |
| RoleExists(String) |
Obtiene un valor que indica si el nombre de rol especificado ya existe en la base de datos de roles. |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |