Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Role są często używane w aplikacjach finansowych lub biznesowych do wymuszania zasad. Na przykład aplikacja może narzucić limity rozmiaru przetwarzanej transakcji w zależności od tego, czy użytkownik wysyłający żądanie jest członkiem określonej roli. Clerks może mieć autoryzację do przetwarzania transakcji, które są mniejsze niż określony próg, nadzorcy mogą mieć wyższy limit, a wiceprezesi mogą mieć jeszcze wyższy limit (lub nie ma limitu w ogóle). Zabezpieczenia oparte na rolach mogą być również używane, gdy aplikacja wymaga wielu zatwierdzeń w celu wykonania akcji. Taki przypadek może być systemem zakupów, w którym każdy pracownik może wygenerować żądanie zakupu, ale tylko agent zakupu może przekonwertować to żądanie na zamówienie zakupu, które można wysłać do dostawcy.
Zabezpieczenia oparte na rolach platformy .NET obsługują autoryzację, udostępniając informacje o podmiocie tworzonym z skojarzonej tożsamości dostępnej dla bieżącego wątku. Tożsamość (i nadrzędny element, który pomaga zdefiniować) może być oparta na koncie Windows albo być tożsamością niestandardową, która nie jest powiązana z kontem Windows. Aplikacje .NET mogą podejmować decyzje dotyczące autoryzacji na podstawie tożsamości podmiotu, członkostwa w roli, lub obu tych elementów. Rola to nazwany zestaw podmiotów, które mają te same uprawnienia w odniesieniu do bezpieczeństwa (takich jak kasjer lub menedżer). Podmiot może być członkiem jednej lub więcej ról. W związku z tym aplikacje mogą używać członkostwa w roli, aby określić, czy podmiot zabezpieczeń jest uprawniony do wykonania żądanej akcji.
Aby zapewnić łatwość użycia i spójność z zabezpieczeniami dostępu do kodu, zabezpieczenia System.Security.Permissions.PrincipalPermission oparte na rolach platformy .NET zapewniają obiekty, które umożliwiają środowisku uruchomieniowemu języka wspólnego wykonywanie autoryzacji w sposób podobny do kontroli zabezpieczeń dostępu kodu. Klasa PrincipalPermission reprezentuje tożsamość lub rolę, którą musi dopasować podmiot zabezpieczeń i jest zgodna zarówno z deklaratywnymi, jak i imperatywnymi kontrolami zabezpieczeń. Możesz również uzyskać bezpośredni dostęp do informacji tożsamościowych głównego podmiotu i wykonywać sprawdzania ról oraz tożsamości w swoim kodzie, gdy zajdzie taka potrzeba.
Platforma .NET zapewnia obsługę zabezpieczeń opartych na rolach, która jest wystarczająco elastyczna i rozszerzalna, aby zaspokoić potrzeby szerokiego spektrum aplikacji. Możesz wybrać współdziałanie z istniejącymi infrastrukturami uwierzytelniania, takimi jak usługi COM+ 1.0, lub utworzyć niestandardowy system uwierzytelniania. Zabezpieczenia oparte na rolach są szczególnie odpowiednie do użycia w aplikacjach internetowych ASP.NET, które są przetwarzane głównie na serwerze. Jednak zabezpieczenia oparte na rolach platformy .NET mogą być używane na kliencie lub serwerze.
Przed przeczytaniem tej sekcji upewnij się, że rozumiesz materiał przedstawiony w sekcji Kluczowe pojęcia dotyczące zabezpieczeń.
Zobacz także
- Obiekty roli i tożsamości
- kluczowe pojęcia dotyczące zabezpieczeń
- System.Security.Permissions.PrincipalPermission
- ASP.NET Core Security