Comparteix a través de


ClientRoleProvider Clase

Definición

Obtiene información de roles para aplicaciones basadas en Windows de un servicio de roles de Microsoft Ajax.

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

Ejemplos

En el código de ejemplo siguiente se muestra cómo usar esta propiedad para establecer mediante programación la ubicación del servicio de roles.

private void SetRolesServiceLocation()
{
    ((ClientRoleProvider)System.Web.Security.Roles.Provider).ServiceUri = 
        "http://localhost:55555/AppServices/Role_JSON_AppService.axd";
}
Private Sub SetRolesServiceLocation()
    CType(System.Web.Security.Roles.Provider,  _
        ClientRoleProvider).ServiceUri = _
        "http://localhost:55555/AppServices/Role_JSON_AppService.axd"
End Sub

Comentarios

Puede usar los servicios de aplicación cliente para recuperar información de roles de un servicio de roles existente configurando la aplicación para usar la clase ClientRoleProvider. Después de la configuración, puede determinar si un usuario autenticado está en un rol determinado llamando al método IsInRole del IPrincipal devuelto por la propiedad staticThread.CurrentPrincipal. Para que las aplicaciones configuradas usen servicios de aplicaciones cliente, esta propiedad devuelve un ClientRolePrincipal. Dado que esta clase implementa la interfaz IPrincipal, no es necesario hacer referencia a ella explícitamente. El método ClientRolePrincipal.IsInRole llama internamente al método ClientRoleProvider.IsUserInRole.

La clase ClientRoleProvider es un proveedor de pertenencia a roles de solo lectura que recupera información de roles para los usuarios autenticados del servicio de roles indicado por la propiedad ServiceUri. El valor de la propiedad ServiceUri se recupera normalmente del archivo de configuración de la aplicación junto con otros valores de configuración.

Puede recuperar la instancia de ClientRoleProvider actual a través de la propiedad staticRoles.Provider.

La clase ClientRoleProvider solo admite los métodos GetRolesForUser y IsUserInRole de la clase abstracta RoleProvider. Cuando se llama a uno de estos métodos para un usuario determinado, el proveedor de servicios comprueba primero la caché de datos local para obtener información de rol. Si la memoria caché no contiene información de rol o la memoria caché ha expirado, el proveedor de servicios recupera la información de rol del servicio de roles y la agrega a la memoria caché.

Puede especificar el período de tiempo de espera de la memoria caché de roles al configurar los servicios de aplicación cliente. Para forzar que el método GetRolesForUser recupere los datos de rol del servicio en lugar de la memoria caché local, llame primero al método ResetCache.

No puede usar la clase ClientRoleProvider para crear o eliminar roles, ni para modificar la pertenencia a roles de los usuarios. Para crear o modificar información de roles, debe cambiar la configuración del servicio de rol en el servidor.

Constructores

ClientRoleProvider()

Inicializa una nueva instancia de la clase ClientRoleProvider.

Propiedades

ApplicationName

Esta clase no usa esta propiedad.

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

Obtiene o establece el URI del servicio de rol.

Métodos

AddUsersToRoles(String[], String[])

Esta clase no usa este método.

CreateRole(String)

Esta clase no usa este método.

DeleteRole(String, Boolean)

Esta clase no usa este método.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
FindUsersInRole(String, String)

Esta clase no usa este método.

GetAllRoles()

Esta clase no usa este método.

GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetRolesForUser(String)

Obtiene los nombres de los roles a los que pertenece el usuario especificado.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetUsersInRole(String)

Esta clase no usa este método.

Initialize(String, NameValueCollection)

Inicializa el proveedor.

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[])

Esta clase no usa este método.

ResetCache()

Borra la información del rol almacenado en caché y restablece el período de tiempo de espera de caché.

RoleExists(String)

Esta clase no usa este método.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también