ClientRoleProvider Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar rollinformation för Windows-baserade program från en tjänst för Microsoft Ajax-roller.
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
- Arv
Exempel
Följande exempelkod visar hur du använder den här egenskapen för att programmatiskt ange rolltjänstens plats.
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
Kommentarer
Du kan använda klientprogramtjänster för att hämta rollinformation från en befintlig rolltjänst genom att konfigurera programmet så att det ClientRoleProvider använder klassen. Efter konfigurationen kan du avgöra om en autentiserad IsInRole användare har en viss roll genom att anropa metoden för den IPrincipal som returneras av staticThread.CurrentPrincipal egenskapen. För program som har konfigurerats för att använda klientprogramtjänster returnerar den här egenskapen en ClientRolePrincipal. Eftersom den här klassen implementerar IPrincipal gränssnittet behöver du inte uttryckligen referera till det. Metoden ClientRolePrincipal.IsInRole anropar ClientRoleProvider.IsUserInRole metoden internt.
Klassen ClientRoleProvider är en skrivskyddad rollmedlemskapsprovider som hämtar rollinformation för autentiserade användare från rolltjänsten som anges av ServiceUri egenskapen. Värdet för ServiceUri egenskapen hämtas vanligtvis från programkonfigurationsfilen tillsammans med andra konfigurationsvärden.
Du kan hämta den aktuella ClientRoleProvider instansen via egenskapen staticRoles.Provider .
Klassen ClientRoleProvider stöder endast GetRolesForUser metoderna och IsUserInRole för den RoleProvider abstrakta klassen. När du anropar någon av dessa metoder för en viss användare kontrollerar tjänstleverantören först den lokala datacachen efter rollinformation. Om cacheminnet inte innehåller någon rollinformation eller om cacheminnet har upphört att gälla hämtar tjänstleverantören rollinformationen från rolltjänsten och lägger till den i cacheminnet.
Du kan ange tidsgränsen för rollcachen när du konfigurerar klientprogramtjänster. Om du vill tvinga GetRolesForUser metoden att hämta rolldata från tjänsten i stället för den lokala cachen anropar ResetCache du metoden först.
Du kan inte använda ClientRoleProvider klassen för att skapa eller ta bort roller eller för att ändra användarnas rollmedlemskap. Om du vill skapa eller ändra rollinformation måste du ändra konfigurationen av rolltjänsten på servern.
Konstruktorer
| Name | Description |
|---|---|
| ClientRoleProvider() |
Initierar en ny instans av ClientRoleProvider klassen. |
Egenskaper
| Name | Description |
|---|---|
| ApplicationName |
Den här egenskapen används inte av den här klassen. |
| Description |
Hämtar en kort, vänlig beskrivning som är lämplig för visning i administrativa verktyg eller andra användargränssnitt (UIs). (Ärvd från ProviderBase) |
| Name |
Hämtar det eget namn som används för att referera till providern under konfigurationen. (Ärvd från ProviderBase) |
| ServiceUri |
Hämtar eller anger URI för rolltjänsten. |
Metoder
| Name | Description |
|---|---|
| AddUsersToRoles(String[], String[]) |
Den här metoden används inte av den här klassen. |
| CreateRole(String) |
Den här metoden används inte av den här klassen. |
| DeleteRole(String, Boolean) |
Den här metoden används inte av den här klassen. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| FindUsersInRole(String, String) |
Den här metoden används inte av den här klassen. |
| GetAllRoles() |
Den här metoden används inte av den här klassen. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetRolesForUser(String) |
Hämtar namnen på de roller som den angivna användaren tillhör. |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| GetUsersInRole(String) |
Den här metoden används inte av den här klassen. |
| Initialize(String, NameValueCollection) |
Initierar providern. |
| IsUserInRole(String, String) |
Hämtar ett värde som anger om den angivna användaren finns i den angivna rollen. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| RemoveUsersFromRoles(String[], String[]) |
Den här metoden används inte av den här klassen. |
| ResetCache() |
Rensar den cachelagrade rollinformationen och återställer tidsgränsen för cacheminnet. |
| RoleExists(String) |
Den här metoden används inte av den här klassen. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |