AuthorizationStoreRoleProvider Clase

Definición

Administra el almacenamiento de la información de pertenencia de roles para una aplicación ASP.NET en un almacén de directivas del administrador de autorizaciones, o en un archivo XML, en un Active Directory, o en un servidor de modo de aplicaciones Active Directory.

public ref class AuthorizationStoreRoleProvider : System::Web::Security::RoleProvider
public class AuthorizationStoreRoleProvider : System.Web.Security.RoleProvider
type AuthorizationStoreRoleProvider = class
    inherit RoleProvider
Public Class AuthorizationStoreRoleProvider
Inherits RoleProvider
Herencia
AuthorizationStoreRoleProvider

Ejemplos

En el ejemplo de código siguiente se muestra un archivo Web.config establecido para usar para la AuthorizationStoreRoleProvider administración de roles.

<configuration>  
  <connectionStrings>  
    <add name="AuthorizationServices" connectionString="msxml://~\App_Data\SampleStore.xml" />  
  </connectionStrings>  

  <system.web>  

    <authentication mode="Windows" />  
    <identity impersonate="true" />  

    <roleManager defaultProvider="AuthorizationStoreRoleProvider"   
      enabled="true"  
      cacheRolesInCookie="true"  
      cookieName=".ASPROLES"  
      cookieTimeout="30"  
      cookiePath="/"  
      cookieRequireSSL="false"  
      cookieSlidingExpiration="true"  
      cookieProtection="All" >  
      <providers>  
        <clear />  
          <add  
            name="AuthorizationStoreRoleProvider"  
            type="System.Web.Security.AuthorizationStoreRoleProvider"  
            connectionStringName="AuthorizationServices"  
            applicationName="SampleApplication"   
            cacheRefreshInterval="60"  
            scopeName="" />  
      </providers>  
    </roleManager>  

  </system.web>  
</configuration>  

Comentarios

Las clases y RolePrincipal usan Roles esta clase para proporcionar servicios de administración de roles para una aplicación de ASP.NET mediante un almacén de authorization-manager. Puede usar la administración de roles para especificar distintos niveles de autorización para la aplicación. Se puede acceder al administrador de autorización mediante la consola de administración de Microsoft.

El AuthorizationStoreRoleProvider objeto funciona con los modos de autenticación de formularios y autenticación de Windows.

Puede configurar el AuthorizationStoreRoleProvider objeto para que use un archivo XML local o un servidor de Active Directory o modo de aplicación de Active Directory (ADAM). Cuando se usa un archivo local, la cadena de conexión debe ser similar al ejemplo siguiente.

msxml://<path to xml file>  

Si el archivo local se almacena en el árbol de directorios de una aplicación web de ASP.NET, puede usar el carácter de tilde ("~") para indicar el directorio raíz. Por ejemplo, para indicar que el archivo local se almacena en el directorio de datos de la aplicación web, usaría una cadena de conexión similar al ejemplo siguiente.

msxml://~\App_Data\datafilename.xml

Importante

Almacenar un archivo de datos XML en el directorio de la aplicación web es una amenaza de seguridad potencial. De forma predeterminada, IIS proporcionará archivos de datos XML a la Web. Para mejorar la seguridad al usar un archivo de datos local en una aplicación de ASP.NET, debe almacenar el archivo de datos en el App_Data directorio . Los archivos almacenados en el App_Data directorio no se servirán en la Web.

Si usa un servidor Active Directory o ADAM para el almacén de directivas, la cadena de conexión debe ser similar al ejemplo siguiente.

msldap://myserver/CN=MyAzManStore,OU=MyOU,DC=MyDomain,DC=MyDC,DC=Com

Las excepciones enumeradas en la documentación de AuthorizationStoreRoleProvider los métodos de objeto son las excepciones que genera el AuthorizationStoreRoleProvider objeto . Dado que el proveedor se basa en el entorno de ejecución del Administrador de autenticación subyacente, se puede producir una COMException excepción cada vez que el AuthorizationStoreRoleProvider objeto reenvía una llamada de método al tiempo de ejecución del Administrador de autenticación.

Importante

El AuthorizationStoreRoleProvider objeto tiene los siguientes requisitos para ejecutarse en entornos de confianza parcial:

Cuando se usa un almacén de directivas basado en archivos en una aplicación de ASP.NET, los permisos de E/S de archivo concedidos por el nivel de confianza actual determinan si el proveedor permite las acciones de lectura y escritura. La aplicación ASP.NET debe tener permiso de lectura en el archivo para leer datos del almacén de directivas y debe tener permiso de escritura para guardar nueva información o actualizar la información existente en el almacén de directivas. El archivo de directiva de confianza media predeterminado proporciona a una aplicación de ASP.NET permisos de lectura y escritura en su directorio de aplicación. El archivo de directiva de confianza baja predeterminado solo proporciona un permiso de lectura de aplicación ASP.NET en su directorio de aplicaciones. Además, la identidad del proceso en la que se ejecuta la aplicación ASP.NET debe tener permisos del sistema de archivos para leer o escribir el archivo de directiva.

Cuando se usa un servidor Active Directory o ADAM, la aplicación ASP.NET necesita permiso de código no administrado porque el código de objeto interno AuthorizationStoreRoleProvider usa la interoperabilidad COM.

Cuando se usa el AuthorizationStoreRoleProvider objeto fuera de ASP.NET, el código de llamada necesita permiso de código no administrado.

Constructores

AuthorizationStoreRoleProvider()

Inicializa una nueva instancia de la clase AuthorizationStoreRoleProvider.

Propiedades

ApplicationName

Obtiene o establece el nombre de la aplicación de almacenamiento de autorizaciones para la que se va a almacenar y recuperar información de roles.

CacheRefreshInterval

Obtiene el número de minutos entre las actualizaciones de la caché de los datos del almacén de directivas.

Description

Obtiene una descripción breve y fácil de comprender apropiada para mostrarla en las herramientas administrativas u otras interfaces de usuario.

(Heredado de ProviderBase)
Name

Obtiene el nombre descriptivo utilizado para hacer referencia al proveedor durante la configuración.

(Heredado de ProviderBase)
ScopeName

Obtiene o establece el nombre de ámbito para el almacén de autorizaciones.

Métodos

AddUsersToRoles(String[], String[])

Agrega los nombres de usuario especificados a cada una de los roles especificados.

CreateRole(String)

Agrega una nuevo rol al almacén de directivas del administrador de autorizaciones del rol.

DeleteRole(String, Boolean)

Quita un rol del almacén de directivas del administrador de autorizaciones.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
FindUsersInRole(String, String)

Este método no lo admite el proveedor de roles del almacén de autorizaciones.

GetAllRoles()

Obtiene una lista de todas los roles de la aplicación.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetRolesForUser(String)

Obtiene una lista de los roles en que está incluido un usuario.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetUsersInRole(String)

Obtiene una lista de usuarios incluidos en el rol especificado.

Initialize(String, NameValueCollection)

Inicializa el proveedor de roles del administrador de autorizaciones con los valores de propiedades especificados en el archivo de configuración de la aplicación ASP.NET. Este método no está pensado para usarse directamente desde su código.

IsUserInRole(String, String)

Obtiene un valor que indica si el usuario especificado está incluido en el rol especificado.

MemberwiseClone()

Crea una copia superficial del Object actual.

(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 del rol especificado ya existe en el almacén de directivas del administrador de autorizaciones.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también