Udostępnij za pośrednictwem


ClientRoleProvider Klasa

Definicja

Pobiera informacje o rolach dla aplikacji opartych na systemie Windows z usługi ról 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
Dziedziczenie
ClientRoleProvider

Przykłady

Poniższy przykładowy kod pokazuje, jak za pomocą tej właściwości programowo ustawić lokalizację usługi ról.

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

Uwagi

Usługi aplikacji klienckiej umożliwiają pobieranie informacji o rolach z istniejącej usługi ról przez skonfigurowanie aplikacji do używania klasy ClientRoleProvider. Po skonfigurowaniu można określić, czy uwierzytelniony użytkownik jest w określonej roli, wywołując metodę IsInRoleIPrincipal zwróconą przez właściwość staticThread.CurrentPrincipal. W przypadku aplikacji skonfigurowanych do korzystania z usług aplikacji klienckich ta właściwość zwraca ClientRolePrincipal. Ponieważ ta klasa implementuje interfejs IPrincipal, nie trzeba odwoływać się do niego jawnie. Metoda ClientRolePrincipal.IsInRole wewnętrznie wywołuje metodę ClientRoleProvider.IsUserInRole.

Klasa ClientRoleProvider jest dostawcą członkostwa w roli tylko do odczytu, który pobiera informacje o rolach dla uwierzytelnionych użytkowników z usługi ról wskazanej przez właściwość ServiceUri. Wartość właściwości ServiceUri jest zwykle pobierana z pliku konfiguracji aplikacji wraz z innymi wartościami konfiguracji.

Bieżące wystąpienie ClientRoleProvider można pobrać za pomocą właściwości staticRoles.Provider.

Klasa ClientRoleProvider obsługuje tylko metody GetRolesForUser i IsUserInRole klasy abstrakcyjnej RoleProvider. Po wywołaniu jednej z tych metod dla określonego użytkownika dostawca usług najpierw sprawdza lokalną pamięć podręczną danych pod kątem informacji o roli. Jeśli pamięć podręczna nie zawiera żadnych informacji o roli lub pamięć podręczna wygasła, dostawca usługi pobiera informacje o roli z usługi ról i dodaje je do pamięci podręcznej.

Okres limitu czasu dla pamięci podręcznej ról można określić podczas konfigurowania usług aplikacji klienckich. Aby wymusić metodę GetRolesForUser pobierania danych roli z usługi zamiast lokalnej pamięci podręcznej, najpierw wywołaj metodę ResetCache.

Nie można użyć klasy ClientRoleProvider do tworzenia lub usuwania ról ani modyfikowania członkostwa użytkowników w roli. Aby utworzyć lub zmodyfikować informacje o roli, musisz zmienić konfigurację usługi roli na serwerze.

Konstruktory

ClientRoleProvider()

Inicjuje nowe wystąpienie klasy ClientRoleProvider.

Właściwości

ApplicationName

Ta właściwość nie jest używana przez tę klasę.

Description

Pobiera krótki, przyjazny opis odpowiedni do wyświetlania w narzędziach administracyjnych lub innych interfejsach użytkownika.

(Odziedziczone po ProviderBase)
Name

Pobiera przyjazną nazwę używaną do odwoływania się do dostawcy podczas konfiguracji.

(Odziedziczone po ProviderBase)
ServiceUri

Pobiera lub ustawia identyfikator URI usługi roli.

Metody

AddUsersToRoles(String[], String[])

Ta metoda nie jest używana przez tę klasę.

CreateRole(String)

Ta metoda nie jest używana przez tę klasę.

DeleteRole(String, Boolean)

Ta metoda nie jest używana przez tę klasę.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
FindUsersInRole(String, String)

Ta metoda nie jest używana przez tę klasę.

GetAllRoles()

Ta metoda nie jest używana przez tę klasę.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetRolesForUser(String)

Pobiera nazwy ról, do których należy określony użytkownik.

GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
GetUsersInRole(String)

Ta metoda nie jest używana przez tę klasę.

Initialize(String, NameValueCollection)

Inicjuje dostawcę.

IsUserInRole(String, String)

Pobiera wartość wskazującą, czy określony użytkownik znajduje się w określonej roli.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
RemoveUsersFromRoles(String[], String[])

Ta metoda nie jest używana przez tę klasę.

ResetCache()

Czyści buforowane informacje o roli i resetuje limit czasu pamięci podręcznej.

RoleExists(String)

Ta metoda nie jest używana przez tę klasę.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też