ClientRoleProvider 类

定义

从 Microsoft Ajax 角色服务中获取基于 Windows 的应用程序的角色信息。

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
继承
ClientRoleProvider

示例

以下示例代码演示如何使用此属性以编程方式设置角色服务位置。

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

注解

可以通过将应用程序配置为使用 ClientRoleProvider 类,使用客户端应用程序服务从现有角色服务检索角色信息。 配置后,可以通过调用 staticThread.CurrentPrincipal 属性返回的 IPrincipalIsInRole 方法来确定经过身份验证的用户是否处于特定角色。 对于配置为使用客户端应用程序服务的应用程序,此属性返回 ClientRolePrincipal。 由于此类实现 IPrincipal 接口,因此无需显式引用它。 ClientRolePrincipal.IsInRole 方法在内部调用 ClientRoleProvider.IsUserInRole 方法。

ClientRoleProvider 类是只读角色成员身份提供程序,它从由 ServiceUri 属性指示的角色服务中检索经过身份验证的用户的角色信息。 ServiceUri 属性的值通常从应用程序配置文件和其他配置值检索。

可以通过 staticRoles.Provider 属性检索当前 ClientRoleProvider 实例。

ClientRoleProvider 类仅支持 RoleProvider 抽象类的 GetRolesForUserIsUserInRole 方法。 为特定用户调用其中一种方法时,服务提供商首先检查本地数据缓存中的角色信息。 如果缓存不包含任何角色信息或缓存已过期,则服务提供商将从角色服务检索角色信息并将其添加到缓存。

配置客户端应用程序服务时,可以为角色缓存指定超时期限。 若要强制 GetRolesForUser 方法从服务(而不是本地缓存)检索角色数据,请首先调用 ResetCache 方法。

不能使用 ClientRoleProvider 类来创建或删除角色,也不能修改用户的角色成员身份。 若要创建或修改角色信息,必须在服务器上更改角色服务的配置。

构造函数

ClientRoleProvider()

初始化 ClientRoleProvider 类的新实例。

属性

ApplicationName

此类不使用此属性。

Description

获取适合在管理工具或其他用户界面(UI)中显示的简短友好说明。

(继承自 ProviderBase)
Name

获取用于在配置期间引用提供程序的友好名称。

(继承自 ProviderBase)
ServiceUri

获取或设置角色服务的 URI。

方法

AddUsersToRoles(String[], String[])

此类不使用此方法。

CreateRole(String)

此类不使用此方法。

DeleteRole(String, Boolean)

此类不使用此方法。

Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
FindUsersInRole(String, String)

此类不使用此方法。

GetAllRoles()

此类不使用此方法。

GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetRolesForUser(String)

获取指定用户所属的角色的名称。

GetType()

获取当前实例的 Type

(继承自 Object)
GetUsersInRole(String)

此类不使用此方法。

Initialize(String, NameValueCollection)

初始化提供程序。

IsUserInRole(String, String)

获取一个值,该值指示指定的用户是否处于指定角色中。

MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
RemoveUsersFromRoles(String[], String[])

此类不使用此方法。

ResetCache()

清除缓存的角色信息并重置缓存超时期限。

RoleExists(String)

此类不使用此方法。

ToString()

返回一个表示当前对象的字符串。

(继承自 Object)

适用于

另请参阅