Serwery Aplikacji

16
Serwery Aplikacji Serwery Aplikacji Bezpieczeństwo w Aplikacjach .NET uruchamianych pod IIS Arkadiusz Popa, WMiI,

description

Serwery Aplikacji. Bezpieczeństwo w Aplikacjach .NET uruchamianych pod IIS. Dostęp dla nie zautoryzowanych użytkowników. Dostęp do części aplikacji, bez potrzeby logowania Nazwa konta dla użytkowników anonimowych: IUSER_machinename Konto dostępne w Panelu Zarządzania „ Computer Manegement ”. - PowerPoint PPT Presentation

Transcript of Serwery Aplikacji

Page 1: Serwery Aplikacji

Serwery AplikacjiSerwery Aplikacji

Bezpieczeństwo w Aplikacjach .NET uruchamianych pod IIS

Arkadiusz Popa, WMiI, UŁ

Page 2: Serwery Aplikacji

Dostęp dla nie Dostęp dla nie zautoryzowanych zautoryzowanych

użytkownikówużytkownikówo Dostęp do części aplikacji, bez

potrzeby logowania

o Nazwa konta dla użytkowników anonimowych: IUSER_machinename

o Konto dostępne w Panelu Zarządzania „Computer Manegement”

Arkadiusz Popa, WMiI, UŁ

Page 3: Serwery Aplikacji

Dostęp dla zautoryzowanych Dostęp dla zautoryzowanych użytkownikówużytkowników

o Możliwość autentyfikacji i autoryzacji indywidualnych użytkowników

o Są dostępne trzy główne sposoby autoryzacji:oWindows authentication – identyfikuje i

autoryzuje użytkowników przez listę użytkowników serwera. Dostęp do danych jest oparty o przywileje konta użytkowników

Arkadiusz Popa, WMiI, UŁ

Page 4: Serwery Aplikacji

o Form authentication – Kieruje użytkjowników do Formularza logowania. Autoryzuje użytkownika porównując dane wpisane przez niego z danymi zgromadzonymi w pliku, bazie.

oPassport authentication – Kieruje użytkownika do strony hostowanej przez Microsoft, gdzie mogą się zarejestrować. Dzięki temu uzyskują dostęp do Strony internetowej. Autentyfikacjia odbywa się po stronie serwerów Microsoft.

Arkadiusz Popa, WMiI, UŁ

Dostęp dla zautoryzowanych Dostęp dla zautoryzowanych użytkownikówużytkowników

Page 5: Serwery Aplikacji

Jaki typ wybrać … ?Jaki typ wybrać … ?

Arkadiusz Popa, WMiI, UŁ

1. Przykład 11. TYP: Publiczna internetowa Web aplikacja2. DOSTĘP: anonimowy3. POWÓD: Nie wymagane logowanie

2. Przykład 21. TYP: Prywatna Web aplikacja wewnątrz firmy2. DOSTĘP: Windows authentification3. POWÓD: Użytkownicy mogą używać loginów i haseł takich

jak konta założone w lokalnym systemie sieciowym. Zarządzanie kontami odbywa się przez narzędzie Windows

Page 6: Serwery Aplikacji

Jaki typ wybrać … ?Jaki typ wybrać … ?

3. Przykład 3

1. TYP: Komercyjna Web aplikacja

2. DOSTĘP: Forms

3. POWÓD: Użytkownicy powinni móc tworzyć nowe konta bez względu na miejsce dostępu do aplikacji.

4. Przykład 4

1. TYP: Wiele powiązanych (Multiple) komercyjnych Web aplikacji

2. DOSTĘP: Passport

3. POWÓD: Użytkownicy mogą założyć konto na jednej aplikacji i używać go na pozostałych

Arkadiusz Popa, WMiI, UŁ

Page 7: Serwery Aplikacji

Dołączyć namespace.Dołączyć namespace.o Autentyfikacja Windows, Forms i

Password używa klas, które można znaleźć w przestrzeni nazw:

System.Web.Security

Należy dodać tą przestrzeń nazw do każdego modułu który ma mieć wbudowaną autentyfikację:

Arkadiusz Popa, WMiI, UŁ

Page 8: Serwery Aplikacji

Blokować dostęp - userBlokować dostęp - usero Dostęp do części aplikacji, która

wymaga logowania, może zostać zablokowany dla wszystkich nie autentyfikowanych użytkowników.

Arkadiusz Popa, WMiI, UŁ

Page 9: Serwery Aplikacji

Zezwolić na dostęp Zezwolić na dostęp użytkownikomużytkownikom

o Dostęp do części aplikacji, która wymaga logowania, może zostać przydzielony określonym użytkownikom. Natomiast zablokowany dla wszystkich nie autentyfikowanych użytkowników.

o * oznacza zablokowanie dostępu innym użytkownikom

Arkadiusz Popa, WMiI, UŁ

Page 10: Serwery Aplikacji

Zezwolić na dostęp Zezwolić na dostęp wybranym rolomwybranym rolom

o Dostęp do części aplikacji, która wymaga logowania, może zostać przydzielony określonym rolom. Natomiast zablokowany dla wszystkich nie autentyfikowanych użytkowników.

Arkadiusz Popa, WMiI, UŁ

Page 11: Serwery Aplikacji

Form AuthenticationForm AuthenticationAby użyć Form Authentication należy

wykonać następujące kroki:o Ustawić typ autentyfikacji na Form w

Web.configo Stworzyć formularz do logowania (login i

hasło)o Stworzyć plik lub bazę do gromadzenia

informacji o użytkownikuo Napisać kod pozwalający na dodawania

nowego użytkownika do pliku / bazyo Napisać kod do autentyfikacji użytkownika

przy użyciu danych z pliku / bazyArkadiusz Popa, WMiI, UŁ

Page 12: Serwery Aplikacji

Przypływ danych - Przypływ danych - FormForm

Arkadiusz Popa, WMiI, UŁ

Request: Welcome.aspx

Response: LogIn.aspx

Response: Welcome.aspx + Cookie

Request: LogIn.aspx + dane (login, hasło)

Page 13: Serwery Aplikacji

Dane użytkownikaDane użytkownikaDane użytkownika mogą być

gromadzone w:o Pliku Web.config – rozwiązanie

wystarczające dla aplikacji gdzie dane dane użytkowników nie ulegają zmianie

Arkadiusz Popa, WMiI, UŁ

Page 14: Serwery Aplikacji

Dane użytkownikaDane użytkownikao Pliku zewnętrznym Users.xml –

łatwość wyszukiwanie użytkownika (parsery), możliwość dodawania, usuwania i edycji danych użytkownika.

Arkadiusz Popa, WMiI, UŁ

Page 15: Serwery Aplikacji

Dane użytkownikaDane użytkownikao W bazie danych – szybkość działania

dla dużej ilość osób. Transakcyjność.

Arkadiusz Popa, WMiI, UŁ

UserExist()

UserExist()

UserExist()

UserE

xist()

UserExist()

Page 16: Serwery Aplikacji

Hierarchiczna autoryzacjaHierarchiczna autoryzacja

Arkadiusz Popa, WMiI, UŁ

Katalog do którego dostęp ma tylko określony użytkownik

Katalog do którego dostęp ma grupa użytkowników