Freigeben über


ClientRoleProvider Klasse

Definition

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

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 diese Eigenschaft zum programmgesteuerten Festlegen des Rollendienstspeicherorts verwendet wird.

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 so konfigurieren, dass sie die ClientRoleProvider Klasse verwendet. Nach der Konfiguration können Sie ermitteln, ob sich ein authentifizierter Benutzer in einer bestimmten Rolle befindet, indem Sie die IsInRole Methode der von der staticThread.CurrentPrincipal Eigenschaft zurückgegebenen IPrincipal aufrufen. Für Anwendungen, die für die Verwendung von Clientanwendungsdiensten konfiguriert sind, gibt diese Eigenschaft eine ClientRolePrincipalzurück. Da diese Klasse die IPrincipal Schnittstelle implementiert, müssen Sie nicht explizit darauf verweisen. Die ClientRolePrincipal.IsInRole-Methode ruft intern die ClientRoleProvider.IsUserInRole-Methode auf.

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

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

Die ClientRoleProvider-Klasse unterstützt nur die methoden GetRolesForUser und IsUserInRole der abstrakten Klasse RoleProvider. 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 ihn 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 zum Erstellen oder Löschen von Rollen oder zum Ändern der Rollenmitgliedschaft von Benutzern verwenden. 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 (UIs) geeignet ist.

(Geerbt von ProviderBase)
Name

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

(Geerbt von ProviderBase)
ServiceUri

Dient zum Abrufen oder Festlegen des URI des Rollendiensts.

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 dem aktuellen Objekt entspricht.

(Geerbt von Object)
FindUsersInRole(String, String)

Diese Methode wird von dieser Klasse nicht verwendet.

GetAllRoles()

Diese Methode wird von dieser Klasse nicht verwendet.

GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetRolesForUser(String)

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

GetType()

Ruft die 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 sich der angegebene Benutzer in der angegebenen Rolle befindet.

MemberwiseClone()

Erstellt eine flache Kopie der 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 Cachetimeoutzeitraum 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