AuthorizationStoreRoleProvider Clase

Definición

Administra el almacenamiento de información de pertenencia a roles para una aplicación de ASP.NET en un almacén de directivas de authorization-manager, ya sea en un archivo XML, en un Active Directory o en un servidor en modo de aplicación 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 Roles y RolePrincipal usan 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 el Microsoft Management Console.

El objeto />

Puede configurar el objeto AuthorizationStoreRoleProvider para usar un archivo XML local o un servidor Active Directory o Active Directory modo de aplicación (ADAM). Al usar un archivo local, el cadena de conexión debe tener un aspecto 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 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 un 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 directorio App_Data. Los archivos almacenados en el App_Data directorio no se atenderán a la Web.

Si usa un servidor de Active Directory o ADAM para el almacén de directivas, el 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 entorno 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 información nueva 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 ASP.NET permisos de lectura y escritura en su directorio de aplicaciones. 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 permisos de código no administrado porque el código de objeto interno AuthorizationStoreRoleProvider usa la interoperabilidad COM.

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

Constructores

Nombre Description
AuthorizationStoreRoleProvider()

Inicializa una nueva instancia de la clase AuthorizationStoreRoleProvider.

Propiedades

Nombre Description
ApplicationName

Obtiene o establece el nombre de la aplicación de almacén de autorización para la que se va a almacenar y recuperar información de rol.

CacheRefreshInterval

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

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

Obtiene o establece el nombre de ámbito del almacén de autorización.

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 al almacén de directivas de authorization-manager de roles.

DeleteRole(String, Boolean)

Quita un rol del almacén de directivas de authorization-manager.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
FindUsersInRole(String, String)

El proveedor de roles del almacén de autorización no admite este método.

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 authorization-manager con los valores de propiedad especificados en el archivo de configuración de la aplicación ASP.NET. 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 el almacén de directivas de authorization-manager.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también