ClientRoleProvider Klasse

Definition

Ruft Rolleninformationen für Windows-basierte Anwendungen aus einem Microsoft Ajax-Rollendienst ab, die auf Windows basieren.

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
Vererbung
ClientRoleProvider

Beispiele

Der folgende Beispielcode veranschaulicht, wie Sie diese Eigenschaft verwenden, um den Speicherort des Rollendiensts programmgesteuert festzulegen.

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

Hinweise

Sie können Clientanwendungsdienste verwenden, um Rolleninformationen aus einem vorhandenen Rollendienst abzurufen, indem Sie Ihre Anwendung für die Verwendung der ClientRoleProvider -Klasse konfigurieren. Nach der Konfiguration können Sie bestimmen, ob ein authentifizierter Benutzer in einer bestimmten Rolle ist, indem Sie die IsInRole -Methode des IPrincipal von der staticThread.CurrentPrincipal -Eigenschaft zurückgegebenen aufrufen. Für Anwendungen, die für die Verwendung von Clientanwendungsdiensten konfiguriert sind, gibt diese Eigenschaft eine(n) ClientRolePrincipalaus. Da diese Klasse die IPrincipal -Schnittstelle implementiert, müssen Sie nicht explizit auf diese verweisen. Die ClientRolePrincipal.IsInRole -Methode ruft die ClientRoleProvider.IsUserInRole -Methode intern auf.

Die ClientRoleProvider -Klasse ist ein schreibgeschützter Rollenmitgliedschaftsanbieter, der Rolleninformationen für authentifizierte Benutzer aus dem durch die ServiceUri -Eigenschaft angegebenen Rollendienst abruft. Der Wert der Eigenschaft wird in der ServiceUri Regel zusammen mit anderen Konfigurationswerten aus der Anwendungskonfigurationsdatei abgerufen.

Sie können die aktuelle ClientRoleProvider Instanz über die staticRoles.Provider -Eigenschaft abrufen.

Die ClientRoleProvider -Klasse unterstützt nur die GetRolesForUser Methoden und IsUserInRole der RoleProvider abstrakten Klasse. Wenn Sie eine dieser Methoden für einen bestimmten Benutzer aufrufen, überprüft der Dienstanbieter zunächst den lokalen Datencache auf Rolleninformationen. Wenn der Cache keine Rolleninformationen enthält oder der Cache abgelaufen ist, ruft der Dienstanbieter die Rolleninformationen aus dem Rollendienst ab und fügt sie dem Cache hinzu.

Sie können den Timeoutzeitraum für den Rollencache angeben, wenn Sie Clientanwendungsdienste konfigurieren. Um zu erzwingen, dass die GetRolesForUser Methode Rollendaten aus dem Dienst anstelle des lokalen Caches abruft, rufen Sie zuerst die ResetCache -Methode auf.

Sie können die ClientRoleProvider -Klasse nicht verwenden, um Rollen zu erstellen oder zu löschen oder die Rollenmitgliedschaft von Benutzern zu ändern. Um Rolleninformationen zu erstellen oder zu ändern, müssen Sie die Konfiguration des Rollendiensts auf dem Server ändern.

Konstruktoren

ClientRoleProvider()

Initialisiert eine neue Instanz der ClientRoleProvider-Klasse.

Eigenschaften

ApplicationName

Diese Eigenschaft wird von dieser Klasse nicht verwendet.

Description

Ruft eine kurze, benutzerfreundliche Beschreibung ab, die für die Anzeige in Verwaltungstools oder anderen Benutzeroberflächen geeignet ist.

(Geerbt von ProviderBase)
Name

Ruft den Anzeigennamen ab, der verwendet wird, um während der Konfiguration auf den Anbieter zu verweisen.

(Geerbt von ProviderBase)
ServiceUri

Ruft den URI des Rollendiensts ab oder legt diesen fest.

Methoden

AddUsersToRoles(String[], String[])

Diese Methode wird von dieser Klasse nicht verwendet.

CreateRole(String)

Diese Methode wird von dieser Klasse nicht verwendet.

DeleteRole(String, Boolean)

Diese Methode wird von dieser Klasse nicht verwendet.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
FindUsersInRole(String, String)

Diese Methode wird von dieser Klasse nicht verwendet.

GetAllRoles()

Diese Methode wird von dieser Klasse nicht verwendet.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetRolesForUser(String)

Ruft die Namen der Rollen ab, zu denen der angegebene Benutzer gehört.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GetUsersInRole(String)

Diese Methode wird von dieser Klasse nicht verwendet.

Initialize(String, NameValueCollection)

Initialisiert den Anbieter.

IsUserInRole(String, String)

Ruft einen Wert ab, der angibt, ob der angegebene Benutzer die angegebene Rolle innehat.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
RemoveUsersFromRoles(String[], String[])

Diese Methode wird von dieser Klasse nicht verwendet.

ResetCache()

Löscht die zwischengespeicherten Rolleninformationen und setzt den Timeout-Zeitraum für den Cache zurück.

RoleExists(String)

Diese Methode wird von dieser Klasse nicht verwendet.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen