Podstawy konfiguracji witryny
internetowej ASPNET
Cele ćwiczenia
- Zapoznanie z kontrolkami
nawigacyjnymi i mechanizmem strony wzorcowej.
- Zapoznanie z mechanizmem
kontroli bezpieczeństwa witryny na bazie formularzy.
- Zapoznanie z Narzędziem do
administrowania witryną sieci Web.
- Zapoznanie z plikami
konfiguracyjnymi.
- Zapoznanie z mechanizmem
kontroli bezpieczeństwa witryny.
Utworzenie nowej witryny
- Utwórz nową witrynę ASP.NET w
lokalnym systemie plików.
Dodanie do witryny strony wzorcowej – MasterPage
- Do katalogu głównego witryny dodaj
nową stronę poleceniem AddNewItem, jako rodzaj strony wybierz MasterPage,
nowo utworzona strona o nazwie MasterPage.master będzie stroną
wzorcową dla kolejnych stron witryny.
- Dodając nowe strony do witryny
zaznacz opcję Select master page i jako stronę wzorcową wskaż
utworzoną powyżej stronę MasterPage.master.
Dodanie do witryny strony rejestracji nowego
użytkownika
- Do katalogu głównego witryny dodaj
nową stronę Web Form nazwie rejestracja.aspx.
- Na utworzonej stronie umieść kontrolkę
CreateUserWizard.
- Uruchom stronę i dodaj nowego
użytkownika.
- Odśwież projekt w okienku Solution
Explorer, w katalogu AppData powinien pojawić się plik bazy
danych ASPNETDB.MDF utworzonej do przechowywania danych o użytkownikach
i rolach.
- Zapoznaj się z zawartością bazy
danych.
- Utwórz nowy diagram bazy danych
i zapoznaj się ze strukturą bazy danych.
- Znajdź dane wprowadzonego przez
siebie użytkownika.
Dodanie do witryny strony logowania
- Do katalogu głównego witryny dodaj
nową stronę o nazwie login.aspx.
- Na utworzonej stronie umieść
kontrolkę Login.
- Uruchom stronę i zaloguj się używając
poprzednio utworzonego konta użytkownika, sprawdź reakcję na witryny na
błędne hasło.
Edycja strony wzorcowej i dodanie informacji o statusie użytkownika
- Przejdź do edycji strony
wzorcowej MasterPage.master.
- Na zewnątrz obiektu ContentPlaceHolder1
umieść tabelę o dwóch kolumnach i dwóch wierszach.
- Przenieś obiekt ContentPlaceHolder1
do prawej dolnej komórki tabeli.
- W prawej górnej komórce umieść,
jedna pod drugą, kontrolki LoginName, LoginView i LoginStatus.
- Usuń stronę Default.aspx
i utwórz nową o tej samej nazwie, ale ze wskazaniem strony wzorcowej.
- Na stronie umieść tekst, po
którym będzie można ją zidentyfikować.
- Uruchom stronę login.aspx
i zaloguj się używając poprzednio utworzonego konta użytkownika, zapoznaj
się z wyglądem strony i danymi logowania.
Narzędzie do administrowania witryną sieci Web,
zmiana trybu logowania
- Uruchom narzędzie do
administrowania witryną sieci Web ASP.NET Configuration
i zapoznaj się z jego możliwościami.
- W zakładce Zabezpieczenia
wybierz tryb uwierzytelniania Z Internetu.
- Znajdź utworzone przez siebie
konto użytkownika i dodaj nowe.
- Uruchom stronę login.aspx
i zaloguj się używając poprzednio utworzonego konta użytkownika, zapoznaj
się z wyglądem strony i danymi logowania.
- Do katalogu głównego witryny
dodaj nową stronę i umieść na niej kontrolkę zmiany hasła ChangePassword.
- Przetestuj działanie strony.
- Do katalogu głównego witryny
dodaj nową stronę i umieść na niej kontrolkę odzyskiwania hasła PasswordRecovery.
- Do odzyskania hasła wymagane
jest skonfigurowanie konta pocztowego, z którego korzysta aplikacja,
konfiguracji można dokonać narzędziem do administrowania witryną sieci Web
(zakładka Aplikacja – Ustawienia SMTP).
- Przetestuj działanie strony.
Utworzenie na serwerze MS SQLServer bazy danych użytkowników i ról
- Uruchom program aspnet_regsql.exe
znajdujący się w katalogu C:\Windows\Microsoft.NET\Framework\v2.0.50727\
- Przy pomocy programu utwórz
bazę danych użytkowników i ról na lokalnym serwerze localhost\sqlexpress.
- Znajdź utworzoną bazę danych
przy pomocy programu SQL Server Management Studio lub narzędzia
Server Explorer w Visual Studio.
- Zmień łańcuch połączenia bazy
danych domyślnego dostawcy użytkowników i domyślnego dostawcy ról tak, aby
wskazywał na nowo utworzoną bazę danych. Zmiany należy dokonać dodając do
lokalnego pliku web.config nowy łańcuch połączenia o nazwie LocalSqlServer łączący
z nowo utworzoną bazą danych.
- Łańcuch połączenia najłatwiej skonfigurować
dodając do dowolnej strony kontrolkę SqlDataSource,
na listingu 1 przedstawiono przykładowy kod konfiguracji łańcucha LocalSqlServer (znacznik
<clear />
usuwa wszystkie nadrzędne deklaracje łańcuchów połączeń).
Listing 1. Konfiguracja łańcucha połączenia do bazy danych
domyślnego dostawcy użytkowników i ról – baza danych aspnetdb na
lokalnym serwerze sqlexpress.
<connectionStrings>
<clear />
<add name="LocalSqlServer"
connectionString="Data Source=localhost\sqlexpress;
Initial
Catalog=aspnetdb; Integrated Security=True "
providerName="System.Data.SqlClient"
/>
</connectionStrings>
- Uruchom narzędzie do
administrowania witryną sieci, poszukaj istniejących użytkowników, utwórz
nowych.
- Zmień bazę anych użytkowników i
ról na bazę umieszczona na serwerze argo.umg.edu.pl – listing 2.
Listing 2. Konfiguracja łańcucha połączenia do bazy danych
domyślnego dostawcy użytkowników i ról – baza danych aspnetdb na
serwerze argo.umg.edu.pl.
<connectionStrings>
<clear />
<add name="LocalSqlServer" connectionString="Data Source= argo.umg.edu.pl;Initial
Catalog=aspnetdb;Persist Security Info=True;User ID=student;Password=student"
providerName="System.Data.SqlClient"
/>
</connectionStrings>
- Uruchom narzędzie do
administrowania witryną sieci, poszukaj istniejących użytkowników, utwórz
nowych.
Dodanie do witryny nowego katalogu i określenie praw dostępu do niego
- W katalogu głównym witryny utwórz
katalog o nazwie uzytkownicy.
- Do katalogu uzytkownicy i
dodaj nową stronę i umieść na niej tekst, który będzie ją identyfikował.
- Uruchom stronę.
- Przy pomocy narzędzia do
administrowania witryną sieci Web, zmień prawa dostępu do katalogu uzytkownicy,
uniemożliwiając dostęp do katalogu użytkownikom anonimowym.
- Ponownie uruchom stronę.
- Odśwież projekt w okienku Solution
Explorer, następnie zapoznaj się z plikami web.config w katalogu
głównym i w katalogu uzytkownicy.
Dodanie mapy witryny i kontrolek nawigacyjnych
- Na stronie wzorcowej MasterPage.master
umieść (w lewej dolnej komórce tabeli) kontrolkę nawigacyjną TreeView.
- Do katalogu głównego aplikacji
dodaj nowa stronę zawierająca mapę witryny – Site Map.
- Edytuj nowo utworzoną stronę Web.sitemap
i wprowadź linki do wszystkich stron witryny.
Listing 3. Przykład mapy witryny – mapa ćwiczenia 7 .
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/Default.aspx" title="Ćwiczenie 7" >
<siteMapNode url="~/rejestracja.aspx" title="Rejestracja" description="Rejestracja" />
<siteMapNode url="~/login.aspx" title="Logowanie" description="Logowanie" />
<siteMapNode url="~/Odzysk.aspx" title="Odzyskiwanie hasła" description="Odzyskiwanie haseł"
/>
<siteMapNode url="~/uzytkownicy/Default.aspx" title="Użytkownicy" >
<siteMapNode url="~/uzytkownicy/uzytkownicy.aspx" title="Lista użytkowników" description="Lista użytkowników"
/>
<siteMapNode url="~/uzytkownicy/Zmianahasla.aspx" title="Zmiana hasła" description="Zmiana hasła" />
</siteMapNode>
</siteMapNode>
</siteMap>
- Skonfiguruj kontrolkę TreeView1
wskazując jako źródło danych nowo utworzoną mapę witryny – stronę Web.sitemap.
- Uruchom aplikację i sprawdź
działanie kontrolki.
- Na stronie wzorcowej umieść
kontrolkę SiteMapPath i sprawdź efekt jej działania.
Projekt
- Dodać do pliku web.config
własnych dostawców mapy witryny.
- Skonfigurować aplikację tak,
aby kontrolki nawigacyjne wyświetlały tylko dostępne pozycje.