Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Com+ udostępnia kilka funkcji zabezpieczeń, których można użyć do ochrony aplikacji COM+ — od usług konfigurowanych administracyjnie do interfejsów API, które można wywoływać w kodzie.
Jeśli to możliwe, w przypadku aplikacji COM+ lepiej jest używać zabezpieczeń automatycznych, takich jak deklaratywne zabezpieczenia oparte na rolach i uwierzytelnianie, zamiast konfigurować zabezpieczenia w składnikach. Korzystanie z automatycznych zabezpieczeń ułatwia pisanie i konserwację składników, łatwiejsze projektowanie zabezpieczeń w całej aplikacji oraz, ponieważ jest ono skonfigurowane administracyjnie, łatwiejsze do modyfikowania zasad zabezpieczeń aplikacji. Te automatyczne usługi zabezpieczeń umożliwiają wyeliminowanie wszystkich funkcji związanych z zabezpieczeniami z komponentów. Jeśli możesz włączyć usługi i odpowiednio je skonfigurować, COM+ zajmie się szczegółami wymuszania zasad zabezpieczeń, które określisz.
Jeśli jednak automatyczne usługi zabezpieczeń w modelu COM+ nie robią dokładnie tego, co należy zrobić, można je rozszerzyć, opierając się na automatycznej platformie zabezpieczeń oferowanej przez com+. W przypadkach, gdy nie chcesz używać automatycznych zabezpieczeń lub gdy chcesz z nich korzystać, ale musisz dostosować je do wymagań bezpieczeństwa swojej aplikacji, masz następujące możliwości programowego konfigurowania zabezpieczeń:
- Programowe zabezpieczenia oparte na rolach — na przykład sprawdzanie ról, które jest dostępne w przypadku włączenia zabezpieczeń opartych na rolach dla aplikacji.
- Personifikacja — jeśli chcesz użyć tożsamości klienta w celu uzyskania dostępu do chronionego zasobu.
- Funkcje inspekcji oparte na informacjach kontekstowych wywołań zabezpieczeń — dostępne również w przypadku włączenia zabezpieczeń opartych na rolach.
Które mechanizmy używane do ochrony danej aplikacji będą zależeć od konkretnych wymagań tej aplikacji. Niektóre opcje zabezpieczeń mogą mieć wpływ na sposób pisania składników, a niektóre mogą znacząco wpłynąć na projekt aplikacji. Przed podjęciem jakichkolwiek decyzji dotyczących implementowania strategii zabezpieczeń dla aplikacji należy wziąć pod uwagę wymagania dotyczące zabezpieczeń w kontekście ogólnego projektu — wymagań dotyczących wydajności, dostępu do danych, projektowania fizycznego i wyboru najbardziej odpowiedniej kombinacji funkcji zabezpieczeń. Aby uzyskać więcej informacji na temat implementowania zabezpieczeń programowych, zobacz Programmatic Component Security.
W tym miejscu podano krótkie opisy kategorii zabezpieczeń, funkcji i problemów z zabezpieczeniami com+ z linkami do tematów w tej sekcji, które zawierają szczegółową dyskusję na temat każdego z ważnych obszarów.
Notatka
Chociaż nie zostały omówione w tej sekcji, składniki w kolejce mają również określone problemy związane z funkcjami zabezpieczeń, które są dla nich dostępne. Aby uzyskać szczegółowe informacje, zobacz Bezpieczeństwo elementów w kolejce oraz Opracowywanie elementów w kolejce.
Role-Based Bezpieczeństwo
Zabezpieczenia oparte na rolach to centralna funkcja zabezpieczeń aplikacji COM+. Za pomocą ról można utworzyć administracyjne zasady autoryzacji dla aplikacji, wybierając (w razie potrzeby do poziomu metody), do których użytkownicy mogą uzyskiwać dostęp do zasobów. Ponadto role zapewniają strukturę wymuszania sprawdzania zabezpieczeń w kodzie, jeśli aplikacja wymaga bardziej szczegółowej kontroli dostępu.
Zabezpieczenia oparte na rolach korzystają z ogólnego mechanizmu, który umożliwia pobieranie informacji zabezpieczających dotyczących wszystkich wcześniejszych wywołań w łańcuchu wywołań do składnika. Ta funkcja jest przydatna szczególnie, jeśli chcesz przeprowadzić szczegółową inspekcję i rejestrowanie. Aby uzyskać opis funkcji inspekcji udostępnianych przez COM+, zobacz Uzyskiwanie dostępu do informacji kontekstowych wywołań zabezpieczeń.
Aby zapoznać się z opisem problemów z zabezpieczeniami i administracją opartymi na rolach, które należy wziąć pod uwagę podczas korzystania z niego, zobacz Role-Based Security Administration.
Uwierzytelnianie klienta
Zanim będzie można autoryzować klientów, aby mogli uzyskiwać dostęp do zasobów, musisz mieć pewność, że są osobami, które mówią, że są. Aby włączyć tę weryfikację tożsamości, com+ zapewnia usługi uwierzytelniania. Chociaż te usługi są rzeczywiście udostępniane na bardziej podstawowym poziomie przez COM i Microsoft Windows, aplikacja COM+ pozwala po prostu włączyć usługę uwierzytelniania administracyjnie, aby działała w tle, przezroczysta dla aplikacji. Aby uzyskać opis usług uwierzytelniania, zobacz Client Authentication.
Personifikacja klienta i delegowanie
W niektórych przypadkach aplikacja musi działać w imieniu klienta przy użyciu tożsamości klienta — na przykład podczas uzyskiwania dostępu do bazy danych, która będzie uwierzytelniać oryginalnego klienta. Wymaga to, aby aplikacja podszywała się pod klienta. COM+ zapewnia funkcje umożliwiające różne poziomy przejmowania tożsamości. Personifikacja jest skonfigurowana administracyjnie, ale należy również zapewnić obsługę personifikacji przy użyciu kodu składników aplikacji. Aby uzyskać opis personifikacji i problemów dotyczących jego użycia, zobacz Personifikacja klienta i delegowanie.
Korzystanie z zasad ograniczeń oprogramowania w modelu COM+
Zasady ograniczeń oprogramowania umożliwiają uruchamianie niezaufanych i potencjalnie szkodliwych kodów w ograniczonym środowisku, dzięki czemu nie może nadużywać uprawnień użytkownika. Robi to przez przypisanie poziomów zaufania do plików, które użytkownik może uruchomić. Na przykład niektóre pliki systemowe mogą być w pełni zaufane i mieć nieograniczony dostęp do uprawnień użytkownika, podczas gdy plik pobrany z Internetu może być całkowicie niezaufany i w związku z tym może być uruchamiany tylko w środowisku ograniczonym, w którym nie można korzystać z jakichkolwiek uprawnień użytkownika wrażliwych na zabezpieczenia.
Zasady ograniczeń oprogramowania dla całego systemu są kontrolowane za pomocą narzędzia administracyjnego Zasady zabezpieczeń lokalnych, które umożliwia administratorom konfigurowanie poziomów zaufania dla poszczególnych plików. Jednak wszystkie aplikacje serwera COM+ działają w pliku dllhost.exe. W związku z tym com+ zapewnia sposób określania zasad ograniczeń oprogramowania dla każdej aplikacji serwera, dzięki czemu nie muszą zależeć od zasad ograniczeń pliku dllhost.exe. Aby zapoznać się z dyskusją dotyczącą korzystania z zasad ograniczeń oprogramowania w modelu COM+, zobacz Korzystanie z zasad ograniczeń oprogramowania w programie COM+.
Zabezpieczenia aplikacji biblioteki
Aplikacje bibliotek mają specjalne zagadnienia dotyczące zabezpieczeń. Ponieważ te aplikacje działają w procesie klienta, mają one wpływ na zabezpieczenia wymuszane przez proces hostingu, nie mogąc kontrolować zabezpieczeń na poziomie procesu. Opis czynników, które należy wziąć pod uwagę w przypadku aplikacji biblioteki, zobacz Library Application Security.
Zabezpieczenia aplikacji wielowarstwowych
Aplikacje COM+ są zwykle aplikacjami warstwy środkowej; czyli przenoszą informacje między klientami i zasobami zaplecza, takimi jak bazy danych. Trudne wybory mogą pojawić się przy decydowaniu, gdzie należy stosować środki bezpieczeństwa i w jakim stopniu. Zabezpieczenia z natury obejmują kompromisy wydajności. Niektóre z najpoważniejszych z nich występują, gdy należy wymusić sprawdzanie zabezpieczeń zarówno w warstwie danych, jak i w warstwie środkowej. Aby zapoznać się z omówieniem problemów, które należy wziąć pod uwagę, zobacz Wielowarstwowe zabezpieczenia aplikacji.
Tematy pokrewne