AuthorizationStoreRoleProvider Klasa

Definicja

Zarządza przechowywaniem informacji o członkostwie roli dla aplikacji ASP.NET w magazynie zasad menedżera autoryzacji w pliku XML w usłudze Active Directory lub na serwerze trybu aplikacji usługi Active Directory.

public ref class AuthorizationStoreRoleProvider : System::Web::Security::RoleProvider
public class AuthorizationStoreRoleProvider : System.Web.Security.RoleProvider
type AuthorizationStoreRoleProvider = class
    inherit RoleProvider
Public Class AuthorizationStoreRoleProvider
Inherits RoleProvider
Dziedziczenie
AuthorizationStoreRoleProvider

Przykłady

Poniższy przykład kodu przedstawia Web.config plik ustawiony do użycia AuthorizationStoreRoleProvider do zarządzania rolami.

<configuration>  
  <connectionStrings>  
    <add name="AuthorizationServices" connectionString="msxml://~\App_Data\SampleStore.xml" />  
  </connectionStrings>  

  <system.web>  

    <authentication mode="Windows" />  
    <identity impersonate="true" />  

    <roleManager defaultProvider="AuthorizationStoreRoleProvider"   
      enabled="true"  
      cacheRolesInCookie="true"  
      cookieName=".ASPROLES"  
      cookieTimeout="30"  
      cookiePath="/"  
      cookieRequireSSL="false"  
      cookieSlidingExpiration="true"  
      cookieProtection="All" >  
      <providers>  
        <clear />  
          <add  
            name="AuthorizationStoreRoleProvider"  
            type="System.Web.Security.AuthorizationStoreRoleProvider"  
            connectionStringName="AuthorizationServices"  
            applicationName="SampleApplication"   
            cacheRefreshInterval="60"  
            scopeName="" />  
      </providers>  
    </roleManager>  

  </system.web>  
</configuration>  

Uwagi

Ta klasa jest używana przez Roles klasy i RolePrincipal w celu zapewnienia usług zarządzania rolami dla aplikacji ASP.NET przy użyciu magazynu menedżera autoryzacji. Zarządzanie rolami służy do określania różnych poziomów autoryzacji dla aplikacji. Dostęp do menedżera autoryzacji można uzyskać za pomocą konsoli zarządzania Microsoft.

Obiekt AuthorizationStoreRoleProvider działa zarówno z trybami uwierzytelniania systemu Windows, jak i formularzy.

Obiekt można skonfigurować AuthorizationStoreRoleProvider do używania lokalnego pliku XML lub serwera usługi Active Directory lub trybu aplikacji usługi Active Directory (ADAM). W przypadku korzystania z pliku lokalnego parametry połączenia powinny wyglądać jak w poniższym przykładzie.

msxml://<path to xml file>  

Jeśli plik lokalny jest przechowywany w drzewie katalogów aplikacji sieci Web ASP.NET, możesz użyć znaku tyldy ("~"), aby wskazać katalog główny. Aby na przykład wskazać, że plik lokalny jest przechowywany w katalogu danych aplikacji internetowej, należy użyć parametrów połączenia podobnych do poniższego przykładu.

msxml://~\App_Data\datafilename.xml

Ważne

Przechowywanie pliku danych XML w katalogu aplikacji internetowej jest potencjalnym zagrożeniem bezpieczeństwa. Domyślnie usługi IIS będą udostępniać pliki danych XML w sieci Web. Aby zwiększyć bezpieczeństwo podczas korzystania z lokalnego pliku danych w aplikacji ASP.NET, należy zapisać plik danych w App_Data katalogu. Pliki przechowywane w App_Data katalogu nie będą obsługiwane w sieci Web.

Jeśli używasz serwera usługi Active Directory lub ADAM dla magazynu zasad, parametry połączenia powinny być podobne do poniższego przykładu.

msldap://myserver/CN=MyAzManStore,OU=MyOU,DC=MyDomain,DC=MyDC,DC=Com

Wyjątki wymienione w dokumentacji metod AuthorizationStoreRoleProvider obiektów to wyjątki zgłaszane przez AuthorizationStoreRoleProvider obiekt . Ponieważ dostawca opiera się na podstawowym środowisku uruchomieniowym Menedżera uwierzytelniania, może zostać zgłoszony wyjątek za każdym razem, COMException gdy AuthorizationStoreRoleProvider obiekt przekazuje wywołanie metody do środowiska uruchomieniowego menedżera uwierzytelniania.

Ważne

Obiekt AuthorizationStoreRoleProvider ma następujące wymagania dotyczące uruchamiania w środowiskach częściowo zaufania:

W przypadku korzystania z magazynu zasad opartych na plikach w aplikacji ASP.NET uprawnienia we/wy pliku przyznane przez bieżący poziom zaufania określają, czy dostawca zezwoli na akcje odczytu i zapisu. Aplikacja ASP.NET musi mieć uprawnienia do odczytu w pliku w celu odczytu danych z magazynu zasad i musi mieć uprawnienia do zapisu, aby zapisać nowe informacje lub zaktualizować istniejące informacje w magazynie zasad. Domyślny plik zasad o średnim zaufaniu zawiera uprawnienia do odczytu/zapisu aplikacji ASP.NET w katalogu aplikacji. Domyślny plik zasad o niskim zaufaniu daje tylko uprawnienie do odczytu aplikacji ASP.NET w katalogu aplikacji. Ponadto tożsamość procesu, w ramach której działa aplikacja ASP.NET, musi mieć uprawnienia systemu plików do odczytu i/lub zapisu pliku zasad.

W przypadku korzystania z serwera usługi Active Directory lub ADAM aplikacja ASP.NET wymaga uprawnienia niezarządzanego kodu, ponieważ kod obiektu wewnętrznego AuthorizationStoreRoleProvider używa międzyoperacjności MODELU COM.

W przypadku używania AuthorizationStoreRoleProvider obiektu poza ASP.NET wywoływanie kodu wymaga uprawnienia niezarządzanego kodu.

Konstruktory

AuthorizationStoreRoleProvider()

Inicjuje nowe wystąpienie klasy AuthorizationStoreRoleProvider.

Właściwości

ApplicationName

Pobiera lub ustawia nazwę aplikacji magazynu autoryzacji, dla której mają być przechowywane i pobierane informacje o rolach.

CacheRefreshInterval

Pobiera liczbę minut między odświeżeniami pamięci podręcznej danych magazynu zasad.

Description

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

(Odziedziczone po ProviderBase)
Name

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

(Odziedziczone po ProviderBase)
ScopeName

Pobiera lub ustawia nazwę zakresu magazynu autoryzacji.

Metody

AddUsersToRoles(String[], String[])

Dodaje określone nazwy użytkowników do każdej z określonych ról.

CreateRole(String)

Dodaje nową rolę do magazynu zasad menedżera autoryzacji roli.

DeleteRole(String, Boolean)

Usuwa rolę z magazynu zasad menedżera autoryzacji.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
FindUsersInRole(String, String)

Ta metoda nie jest obsługiwana przez dostawcę roli magazynu autoryzacji.

GetAllRoles()

Pobiera listę wszystkich ról aplikacji.

GetHashCode()

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

(Odziedziczone po Object)
GetRolesForUser(String)

Pobiera listę ról, w których znajduje się użytkownik.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
GetUsersInRole(String)

Pobiera listę użytkowników w określonej roli.

Initialize(String, NameValueCollection)

Inicjuje dostawcę roli menedżera autoryzacji z wartościami właściwości określonymi w pliku konfiguracji aplikacji ASP.NET. Ta metoda nie jest przeznaczona do użycia bezpośrednio z kodu.

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 Objectelementu .

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

Usuwa określone nazwy użytkowników z określonych ról.

RoleExists(String)

Pobiera wartość wskazującą, czy określona nazwa roli już istnieje w magazynie zasad menedżera autoryzacji.

ToString()

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

(Odziedziczone po Object)

Dotyczy

Zobacz też