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

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

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

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

配置客户端应用程序服务时,可以为角色缓存指定超时期限。 若要强制 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)

适用于

另请参阅