Warsztaty ASP.NET
Transkrypt
Warsztaty ASP.NET
Warsztaty ASP.NET „Wprowadzenie do identyfikacji i autoryzacji użytkowników” Tomasz Janczyszyn WE, Informatyka, Rok III [email protected] Plan prezentacji (tzw. AGENDA) 1. Pytania do was! 2. Wybór ścieżki [nauczania ] 3. Co dziś poznasz? Czego się nauczysz? 4. Weryfikacja tożsamości użytkownika i jego uprawnień: • Uwierzytelnianie • Autoryzacja 5. Sposoby identyfikacji w ASP.NET 6. Ćwiczenia praktyczne 1. Ćwiczenia wspólne (demonstracja) 2. Ćwiczenie do samodzielnej realizacji 3. Ćwiczenia wspólne (demonstracja) 7. Bonus: dobre hasło! 8. Podsumowanie oraz przydatne linki i dodatkowe materiały Pytania do was! Czy utrwalaliście wiedzę zdobytą na poprzednich laboratoriach? Kto z was ćwiczył w domu? Podsatwy podstaw ASP.NET i obsługa VisualStudio Kontrolki – dodawanie domyślnych, tworzenie własnych Obsługa zdarzeń kontrolek MasterPage Inne Czy ktoś z was tworzył już jakąkolwiek autoryzację użytkowników pod ASP.NET? Wybór ścieżki demonstracji w VisualStudio Którą ścieżkę wybieracie? 1. Tworzenie kodu na bieżąco: • czasochłonne działanie • w miarę dokładne i szansa, że wiedza bardziej się utrwali • ryzyko, że nie o wszystkim będzie się pamiętać 2. Przegląd i omówienie wygenerowanego wcześniej kodu: • oszczędność czasu (wcześniej skończymy :)) • „szybko” nie zawsze oznacza „dobrze” • gwarancja, że omówimy cały przygotowany kod Co dziś poznasz? Czego się nauczysz? Minimum teorii, na laboratoriach liczy się praktyka! Poznasz w praktyce najpopularniejszy sposób uwierzytelniania (autentykacji) i autoryzacji stosowany w witrynach ASP.NET Nauczysz się w prosty sposób weryfikować login i hasło użytkownika na podstawie danych przechowywanych w zwykłej bazie danych. Poznasz nowe kontrolki oraz zastosowanie nowych technik dostępnych w ASP.NET Weryfikacja tożsamości użytkownika i jego uprawnień Autentykacja (ang. authentication): Proces przedstawienia się użytkownika i udowodnienia swojej tożsamości. Autoryzacja (ang. authorization): Proces sprawdzenia, czy wywołujący użytkownik ma uprawnienia do wykonania operacji. Sposoby identyfikacji w ASP.NET Windows authentication • • identyfikuje i nadaje prawa dostępu użytkownikom, na podstawie danych zawartych w systemie operacyjnym serwera. Zastosowanie: strony wewnętrzne, np. w firmie Forms authentication • Użytkownik musi skorzystać ze specjalnej strony, na której podaje login i hasło. • Informacje użytkowników nie są przechowywane bezpośrednio w systemie. • Identyfikacja i autoryzacja odbywa się na podstawie informacji przechowywanych w bazie danych, specjalnych plikach lub innych źródłach zewnętrznych. Passport authentication • Próba uzyskania dostępu do określonych zasobów powoduje przekierowanie na specjalną stronę firmy Microsoft, gdzie użytkownik musi podać login i hasło. • Dane użytkowników przechowywane są przez firmę Microsoft. • Zaleta: możliwość posiadania jednakowych loginów i haseł dla wielu witryn. • Niewielkie zainteresowanie tą usługą. Ćwiczenia wykonywane wspólnie Ćwiczenie dla was! Stworzenie kilku: użytkowników i podstron, zróżnicowany dostęp do nich. Cel: wyćwiczenie zdobytej wiedzy, poszerzenie możliwości autoryzacji. Czas: 7-9 minut, lub w razie potrzeby więcej. Podstrony: „Polacy.aspx”, „Amerykanie.aspx”, „Inni.aspx” Użytkownicy: admin, John, David, Zosia, Kamil, Ziemniak, Hasła: dowolne (np. „asp”). Przydzielcie użytkowników do podstron wg następujących warunków: • • • • Admin ma dostęp do wszystkich podstron. Do strony Polacy.aspx mają dostęp tylko: Zosia i Kamil. Do strony Amerykanie.aspx mają dostęp: John i David. Do strony Inni.aspx mają dostęp WSZYSCY za wyjątkiem użytkowników: Zosia, Kamil, John, David. (jakie są możliwe rozwiązania tego podpunktu?) Pierwsza osoba, która wykona zadanie proszona jest o zgłoszenie tego faktu W razie jakichkolwiek pytań – proszę je zgłaszać na bieżąco. Ćwiczenia wykonywane wspólnie Bonus: dobre hasło! http://www.adgraf.net/generator_hasel.php Przydatne linki i dodatkowe materiały: • Oficjalna witryna poświęcona ASP.NET – http://www.asp.net • Artykuł pt. „Uwierzytelnianie i autoryzacja w ASP.NET 2.0” – Jacek Matulewski, Sławomir Orłowski, Magazyn hakin9 Nr 6/2007 • Artykuł pt. „Wprowadzenie do identyfikacji i autoryzacji użytkowników” – Piotr Gaszewski, Portal CentrumXP.pl • Prezentacja pt. „Aplikacje ASP.NET – zabezpieczenia w praktyce” – Piotr Czarnas, Roche Polska sp. z o.o. + polskie jak i zagraniczne portale oraz fora dyskusyjne dla programistów technologii .NET Tomasz Janczyszyn WE, Informatyka, Rok III [email protected]