Labb 4: ASP.NET 2.0 Medlemskap, Inloggningskontroller, Rollhantering



Relevanta dokument
Labb 4: ASP.NET 4.5 Medlemskap, Inloggningskontroller, Rollhantering

Lab 5: ASP.NET 2.0 Site Navigation

Lab 5: ASP.NET 4.5 Site Navigation

Labb 3: ASP.NET 4.5 Anpassningar av användargränssnittet: Master Pages, Teman, och Kontroller

Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: Mottagare: Visi Web kund

Labb 1: Skapa en webbsite

Lab 6: ASP.NET 2.0 Providermodellen

Arg-administratörens guide till Umbraco v 1.2.1

Boss installationsmanual förberedelser

Konton skapas normalt av användaren själv, men kan i undantagsfall behöva läggas upp av annan person, exempelvis en junioradmin.

Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa.

Installationsanvisning Boss delad databas

Labb 1: Skapa en website

Labb 1: Skapa en webbsite

Årsskiftesrutiner i HogiaLön Plus SQL

Administrationsmanual ImageBank 2

Labb 2: ASP.NET 4.5 Data Access

DOTNETNUKE SKOLNING Skapat: den 20 november 2012

Innehåll. Dokumentet gäller från och med version

Ekonomiportalen Sa kommer du iga ng

Installation/uppdatering av Hogia Personal fr.o.m. version 13.1

ALEPH ver. 16 Introduktion

IT-system. BUP Användarmanual

Årsskiftesrutiner i HogiaLön Plus SQL

JobOffice SQL databas på server

e-line Kort- och Bankbetalning

Snabbguide webbhotellstjänster v 1.0

Konfigurering av inloggning via Active Directory

Manual för din hemsida

LADDA UPP EN PDF-FIL OCH LÄNKA TILL DEN I DIN ARTIKELTEXT

Arbetshäfte Office 365 en första introduktion

Innehåll 1 Inledning Serverinstallation 2.1 Systemkrav 2.2 SQL Server 2.3 Behörighet vid installation 2.4 Behörighetskontroll i Microsoft SQL Server

VPN (PPTP) installationsguide för Windows 7

Skriv före adressen och lämna bort www enligt modellen:

Thomas Pihl Frontermanual. för studerande vid Forum Ystad

AVCAD 4.0 för Windows

Installationsanvisningar. till IST Analys

Flytt av. Vitec Mäklarsystem

Del 1: Skapa konto i Exchange

Joomla CMS Del 2 av 2

DELA DIN MAC MED FLERA ANVÄNDARE

Instruktion för användande av Citrix MetaFrame

Övning: Skapa en ny regel

Introduktion till datorer och nätverk vid institutionen för naturgeografi och ekosystemvetenskap

Årsskiftesrutiner i HogiaLön Plus SQL

Office 365 MB. Innehåll. Inledning / Inställningar Outlook (e-post) Kalender Personer (kontakter)... 5 OneDrive molnet... 5.

Compose Connect. Hosted Exchange

Administrationsmanual ImageBank 2

Redaktörens Lathund för Glokala. Så här redigerar du en redan befintlig hemsida. Så här skapar du en länk till en extern hemsida

DGC IT Manual Citrix Desktop - Fjärrskrivbord

För att öppna galleriet, ange adressen

Manual för Typo3 version 4.2

Manual för lokalredaktörer villaagarna.se

Använda Office 365 på en iphone eller en ipad

GUIDE TILL ANVÄNDARHANTERINGEN

OBS! Det är av största vikt att innan konfiguration av modulen, genomfört de inställningar som presenteras med bilagorna till denna manual.

Installation xvis besökssystem, Koncern

TIS-Web startguide 3.6. TIS-Web Startguide

Laboration med Internet och HTML

Startanvisning för Bornets Internet

Krav på webbläsare. Manual för arbetslöshetkassorna. De webbläsare som är kompatibla med portalen är minst Internet Explorer 6.x och Firefox 2.

Kom igång med TIS-Office

Skapa din egen MediaWiki

Uppdatera Easy Planning till SQL

iphone/ipad Snabbguide för anställda på HB

Office 365 Kompetens 2014 / MB

Guide för fjärråtkomst av Gigamedia IP-kamerakit

6. Kan jag läsa min e-post i Microsoft Outlook eller liknande e-postprogram?

Manual till din webbplats. Hur du administrerar Umbraco

Manual licenserver. Installations och konfigurations-manual för Adtollo licenserver

Redigera forskarprofil i EpiServer

Installera din WordPress med 9 enkla steg

Zimplit CMS Manual. Introduktion. Generell Information

Myndigheten för samhällsskydd och beredskap 1 (10) Datum Installationsguide ROPA

Innehållsförteckning:

Instruktion för installation av etikettskrivare 2.27

Manager för ett gruppkonto i Widgit Online funktionsverket

Användarutbildning i SiteVision

Visma Proceedo. Att logga in - Manual. Version 1.3 /

Författare Version Datum. Visi System AB

Övning: Arbeta med Azure Explorer

Manual. It s learning. Målgruppen: externa utförare inom Vård och Omsorg

Installera widgetshop på Facebook

Steg 5 Webbsidor One.com och OpenOffice Writer Mac OS X

Se till att posten är i Ändringsläge. Gå till rullgardinsmenyn under Föremål och välj Lägg in bild.

Wordpressguide - Palmstiernska Släktföreningen. Det här kan du göra:

Lägga till bild i e- handeln

Manual - Storegate Team

Kom igång med Advance Online portal med certifikatsverifiering

Lathund. Skolverkets behörighetssystem för e-tjänster. Rollen rektor

Övning 1: Skapa virtuell maskin för utveckling.

SLUNIK manual. SLUNIK version

Instruktioner. Innehåll: 1. Vad är Kimsoft Control (SIDA 2) 3. Hem (SIDA 2)

O365- Konfigurering av SmartPhone efter flytt till Office 365 alt ny installation

Installationsanvisning ADSLmodem: SpeedTouch 546v6. Bredband ADSL. Hitta första telefonjacket

Labora&on 1 Introduk&on &ll utvecklingsmiljön övningar/uppgi<er

Installationsguide, Marvin Midi Server

Startguide för Administratör Kom igång med Microsoft Office 365

ANVÄNDAR-GUIDE för Bränneriets LAN

Innehållsförteckning Introduktion Installation, konfiguration & Matchning Installation på primära domänkontrollanten...

Transkript:

Labb 4: ASP.NET 2.0 Medlemskap, Inloggningskontroller, Rollhantering Autentisering via formulär är ett vanligt sätt skapa säker åtkomst till internetresurser. Med de inloggnings och autentiseringskotroller som finns i ASP.NET designer du en inloggningssida och använder URL direktiv för att ange vilka sidor som kräver autentisering. När en besökare som inte är autentiserad försöker accessa en sida som kräver inlogg så skickas denne automatiskt vidare till en inloggnigssida. ASP.NET 1.x gjorde detta enkelt genom att införa sätt att deklarativt designa inloggningssidor och specificera autentiseringsregler. I ASP.NET 2.0 har detta förenklats ytterligare genom att följande har lagts till: En medlemskaps service för att hantera användare och rättigheter. Nya kontroller för att loggain användare, skapa nya användare och annat. En rollhanteringsservice för att hantera rollbaserad säkerhet. Beräknad tid för denna labb: ca 90 minuter I denna labb skall du använda alla tre för att bygga ett säkert administrations gränssnitt mot MyComics databasen. Du börjar med att skapa en inloggningssida. Sedan skall du säkraupp admin sidan du byggde i labb 2 så att endast autentiserade användare kan accessa den, och lägga till länkar på Site.master för att kunna navigera till admin-sidan och till inloggningssidan. Slutligen skall du använda roll baserad säkerhet för att reglera rättigheter till admin-sidan så att endast administratörer kan accessa den. Redovisas som en enkel labbrapport med koden som en bifogad textfil. Labbförberedelser Om du inte har slutfört labb 2 och enablat databas cachning, gör så här: a. Hämta scriptfilen CacheSetup.cmd från min hemsida och öppna den i notepad. Ändra datornamnet i kommandosträngarna så att det stämmer med din dator. b. Öppna Visual Studio komandoprompt. Alla Program Microsoft Visual Studio 2005 Visual Studio Tools Visual Studio Command Prompt. c. Navigera till katalogen där du sparade CacheSetup.cmd filen. d. Skriv CacheSetup.

2 Övning 1 Lägg till en inloggningssida I denna övning skall du skapa en inloggningssida med en Login kontroll för att loggain existerande användare och skapa en guide för att registrera nya användare. Uppgift Detaljerad beskrivning 1. Öppna webbsiten a. Kopiera alla filer från labb 3 till en ny katalog som du döper till labb4. Öppna mappen i filhanteraren. I mappen App_Data kan det finnas två databasfiler. Radera dessa i så fall. b. Starta Microsoft Visual Studio och använd File Open Web Site och navigera till labb4 och öppna den. 2. Lägg till en sida till din site a. Lägg till en ny sida med namn Login.aspx på samma sätt som tidigare. Använd Web Form som template och kotrolera som vanligt att Place code in separate file och Select master page rutorna är ikryssade. Kolla även så att C# är valt som språk. Add. b. Välj Site.master som master page. c. Ändra Title= Untitled Page till Title= MyComics Login i Login.aspx-sidans @ Page direktiv. d. Växla till design läge. e. Placera markören i Content kontrollen och använd Layout Insert Table för att infoga en vertical split tabell: f. Högerklicka i den vänstra cellen och välj Insert Cell to the Right. g. Ange den mittersta cellens brädd till 1 och dess BgColor till Gray. h. Ange brädden på den vänsta cellen till 50%. Ange dess VAlign egenskap till top. i. Ange VAlign egesnkapen för den högra cellen till top. Nu är du klar att börja lägga till kontroller till sidan. 3. Lägg till en Login kontroll och skapa en användar guide a. Dra en Login kontroll till den vänstra cellen på sidan. b. Dra en CreateUserWizard kontroll till den högra cellen på sidan. c. Starta Login.aspx. Resultatet skall de ut ungefär så här:

3 Notera: Omdu vill fixatill utseendet på sidan, använd Auto Format kommandot i både Login Tasks och CreateUserWizard Tasks menyerna. d. Stäng webbläsaren och återvänd till Visual Studio.

4 Övning 2 Aktivera autentisering auktoriseringsinställningar. I denna övning skall du aktivera autentisering för formulär och konfigurera admin-sidan så att den endast är åtkomlig för autentiserade användare. Du skall även konfigurera applikationen att använda ASP.NET-s SQL Server membership provider och skapa en databas för ändamålet. uppgift 1. Flytta adminsidan 2. Kör Guiden Konfigurera säkerhet (Security Setup Wizard om du har engelskt operativsystem) Detaljerad beskrivning a. Högerklicka på C:\..\Lab4 i Solution Explorer och välj New Folder. Döp mappen till Secure. b. Flytta Admin.aspx och Admin.aspx.cs till Secure mappen. 3. Använd Visual Studio-s Website ASP.NET Configuration komandot för att visa Web Site Administration Tool. (verktyget kommer att använda samma språk som operativsystemet, här på svenska) a. Klicka på Säkerhet fliken i Webbplatsadministration (eller på länken Säkerhet på sidan). b. Klicka Använd guiden Konfigurera säkerhet om du vill konfigurera säkerhet steg för steg. för att starta Guiden Konfigurera säkerhet. c. I seg 1 i Guiden Konfigurera säkerhet ( Välkommen ), Nästa. d. I steg 2 ( Välj Åtkomstmetod ), välj Från internet Nästa. e. I steg 3 ( Datalager ), Nästa. f. I steg 4 ( Definiera roller ), Nästa. Du kommer att ordna med role management senare. g. I steg 5 ( Lägg till ny användare ), fyll i formuläret för att skapa en användare. (Glömm inte bort den användare och lösen du väljer för du behöver dem senare. Använd tex. Nisse och P@ssw0rd. Notera att Webbplatsadministration kräver ett starkt lösenord därav det komplicerade förslaget. Klicka sedan på knappen Skapa användare följt av Nästa. h. I steg 6 ( Lägg till nya åtkomstregler ), Välj foldern Secure I trädvyn under Välj en kattalog för denna roll enligt nedan. Välj sedan Annonyma användare och Neka och klicka på Lägg till den här regeln för att lägga till den i Web.config denying unauthenticated users access to the Secure directory. Klicka Nästa.

5 i. I steg 7 ( Klart ), Klicka Slutför. j. Gå till Visual Studio 2005 och öppna Web.config och försök hitta de ändringar du just gjort med guiden. Du bör inte hitta något. k. Det du just gjort har inte sparats i denna Web.config utan i en ny lokal Web.config som finns i katalogen Secure. Denna syns inte förrän du högerklickar på mappen Secure och väljer Refresh. l. Öppna Secure\Web.config och titta på <authorization> elementet. Detta är de inställningar du skapade med guiden. Den nekar anonyma användare tillträde till alla sidor som ligger i mappen Secure. m. I mappen App_data har det nu skapats två databasfiler som anväds för grupphantering och inloggning. Dessa är osynliga i Sulotion Explorer tills man har gjort Refresh på kattalogen App_data, den ena av filerna syns då. Filerna heter ASPNETDB.mdf och aspnetdb.log.ldf. När du skapar en användare med webplattsadminisrtation så skapas en SQL Server Express databas som ligger i din applikation. Denna databas innehåller säkerhetsinställningarna för applikationen. n. Högerklicka på ASPNETDB.MDF och välj Open. o. Du kommer att förflyttas till Server Explorer fönstret där finns en anslutning för ASPNETDB databasen. p. Om du vill så kan du öppna databasen och se om du kan hitta användaren du just skapat. 4. Testa säkerhetsinställni ngarna a. Markera Default.aspx i Solution Explorer och starta applikationen. Kotrolera så att Default.aspx (inte login sidan) visas i webbläsaren. b. Ändra adressen i webbläsaren, byt Default.aspx mot Secure/Admin.aspx. Nu skall Login.aspx visas enligt nedan.

6 c. Logain med det användarnamn och lösenord du skapade med Security Setup Wizard. Kontrollera så att Admin.aspx visas i webbläsaren. d. Klicka på webbläsarens bakåt knapp två ganger för att återvända till Default.aspx. e. Ändra återigen i webbläsarens adressrad till Secure/Admin.aspx. Kontrollera så att Admin.aspx visas igen utan att du behöver logga in igen. f. Sträng webbläsaren och återvänd till Visual Studio.

7 Övning 3 Lägg till navigations länkar på master sidan Du skall nu lägga till navigationslänkar på master page för att kunna navigera till Admin.aspx och för att logga in och ut. Länken till Admin blir en vanlig hyperlänk kontroll, länken till logg in blir en Logg in status kontroll. Du skall även lägga till en publik metod till master page som möjliggör att login sidan gömmer dessa länkar. Uppgift 1. Lägg till länkar på master page Detaljerad beskrivning a. Öppna Site.master i kod läge. b. Leta reda på tabellcellen som innehåller hyperlänken som pekar på ~/Images/MyComics.gif. Just nu ser koden ut så här: <asp:hyperlink ID="HyperLink1" ImageUrl="~/Images/topp_logotyp.gif" NavigateUrl="~/Default.aspx" Runat="server">Hyperlink</asp:HyperLink> c. Ändra koden så att den ser ut så här: (lägger upp denna snutt på min hemsida som lab4.txt) <table width="100%" cellpadding="0" cellspacing="0"> <tr> <td> <asp:hyperlink ID="HyperLink1" ImageUrl="~/Images/topp_logotyp.gif" NavigateUrl="~/Default.aspx" Runat="server" /> </td> <td align="right" valign="top"> <asp:panel ID="LinksPanel" Runat="server"> <asp:hyperlink ID="AdminLink" Text="Admin" NavigateUrl="~/Secure/Admin.aspx" Runat="server" ForeColor="White" Font-Names="Verdana" Font-Size="10pt" EnableTheming="False" Style="text-decoration: none" /> <span style="font-size: 10pt; color: white; fontfamily: Verdana"> </span> <asp:loginstatus ID="LoginStatusControl" Runat="server" ForeColor="White" Font-Names="Verdana" Font-Size="10pt" EnableTheming="False" Style="text-decoration: none" /> <span style="font-size: 10pt; color: white; fontfamily: Verdana"> </span> </asp:panel> </td> </tr> </table> Det du gör när du lägger in koden är att du placerar en tabell med 1 rad och 2 celler i den befintliga tabellcellen, den cell som innehåller bilden och placerar den befintliga länken i den vänstra cellen och de nya, en hyperlänk till adminoch en LogInStatus kontroll, i den högra cellen uppe till höger. Genom att placera länkarna i en tabellcell så

8 kan du lättare styra var på sidan de skall,precenteras. Du kappalar även in länkarn i en panel så att du lätt kan visa eller gömma dem genom, att ändra panelens Visible egenskap. Du skulle kunnat göra denna förändring i design läge men det är enklare att göra det på detta sätt! d. Kör Default.aspx i webbläsaren och kola så att länkarna finns på plats och att de fungerar. e. Stäng webbläsaren och återvänd till Visual Studio. 2. Göm länkarna på inloggnníngssidan a. Öppna Site.master.cs och lägg till följande metod till Site klassen: C# public void HideBannerLinks () { LinksPanel.Visible = false; } b. Öppna Login.aspx i design läge och dubellklicka på sidan för att lägga till en Page_Load metod i Login.aspx.cs. c. Lägg till följande kod till Page_Load metoden: C# ((Site) Master).HideBannerLinks (); d. Kör Default.aspx I webbläsaren. e. Klicka på Admin länken uppe till höger. När Login.aspx visas så skall inte länkarna Login och Admin synas. f. Logga in med den användare och det lösenord du skapat tidigare. Du skall nu vidarebefordras till Admin.aspx och länken uppe till höger skall vara Logout istället för Login, enligt nedan.

9 3. Ändra logout händelsen. a. Klicka på Logout länken uppe till höger. Vad händer? b. Stäng webbläsaren och återvänd till Visual Studio. c. Det vore ju snyggare om man återvände till Default.aspx helldre än till Login.aspx vid utloggning. För att fixa detta, öppna Site.master i design läge och välj LoginStatus kontrollen. d. Ange LoginStatus kontrollens LogoutAction egenskap till Redirect. e. Ange LoginStatus kontrollens LogoutPageUrl egenskap till ~/Default.aspx. f. Starta Default.aspx igen och navigera till Admin.aspx, logga in. g. Klicka Logout och kontrollera så att du vidarebefordras till Default.aspx. Länken uppe till höger skall visa Login igen. h. Logga in och gå till Admin.aspx. i. Klicka på loggon uppe till vänster. Nu skall du vara tillbaka på Default.aspx och länken uppe till höger ( LoginStatus ) skall visa Logout, inte Login. j. Stäng webbläsaren och återvänd till Visual Studio.

10 Övning 4 Använd rollbaserad säkerhet. I denna skall du använda ASP.NET-s rollhanterare och konfigurera den för att använda SQL server som provider. Du skall även skapa ett användarkonto för administratören och en grupp administratörer. Du skall koppla Administrator kontot till gruppen Administrators group. Sedan skall du modifiera sidans säkerhetsinställningar så att endast administratören kan visa Admin.aspx. Uppgift 1. Aktivera ASP.NET rollhanterare (role manager om du har engelskt operativsystem) Detaljerad beskrivning a. Använd Website ASP.NET Configuration i Visual Studio för att starta webbplattsadministration. b. Klicka på fliken Säkerhet. c. Klicka på länken Aktivera roller. d. Du har nu gjort en förändring i Web.config. Öppna och titta i Web.config om du är nyfiken. 2. Skapa en Administrators grupp 3. Skapa ett Administrator Konto e. Klicka på länken Skapa eller hantera roller på säkerhetssidan. f. Skriv Administrators och klicka Lägg till roll. g. Klicka på Bakåt längst ner till höger för att komma tillbaka till säkerhetssidan. a. Klicka på Skapa användare på säkerhetssidan I webbplattsadministration. b. Fyll I formuläret enligt nedan, se till så att rutan Administrators är ikryssad, jag föreslår att ni använder samma lösanord som tidigare så är det lättare att komma ihåg, ex. P@ssw0rd. c. Klicka på Skapa användare. d. Klicka på Bakåt längst ner till höger för att komma tillbaka till säkerhetssidan. 4. Begränsa tillträdet till Admin.aspx till Administrators a. Klicka på länken Hantera åtkomstregler på säkerhetssidan. b. Välj mappen Secure enligt nedan. Klicka sedan på länken Ta bort för att radera den regel som nekar anonyma användare tillträde till filerna i mappen Secure. Svara Ja när du ombeds bekräfta borttagandet. c. Klicka på Lägg till ny åtkomstregel.

11 d. Fyll i formuläret Lägg till ny åtkomstregel enligt nedan för att ge rollen Admionistrators tillträde till mappen Secure. Kontrollera så att mappen Secure är vald i trädstrukturen innan du klickar på OK. e. Klicka på Skapa åtkomstregler igen. f. Fyll I formuläret Lägg till ny åtkomstregel enligt nedan för att lägga till en regen som nekar alla användare åtkomst till mappen Secure. Försäkra dig om att du verkligen valt mappen Secure i trädet till vänster innan du klickar på OK. g. Öppna Web.config filen som finns i mappen Secure och titta på elementet <authorization>. Vilka ändringar har webbplattsadministrationen gjort i filen? h. Starta Default.aspx och klicka på Admin länken uppe till höger. i. Logga in med det användarnamn och lösenord du registrerade i övning 3. Vad händer? j. Prova att logga in igen men denna gång som Administrator. Nu skall Admin.aspx visas.

12 Sammanfattning En kort sammanfattning av vad du lärt dig i denna labb: Hur du skapar en inloggningssida med Login och CreateUserWizard kontroller Hur du skapar en ASP.NET databas för att lagra uppgifter om medlemskap, roller mm. Hur du använder Webbplattsadministration för att hantera medlemskap och roller. Hur du använder Webbplattsadministration för att aktivera inloggning via formulär och koppla enkel säkerhetshantering till detta. Hur interaktivt kommunicerar med en master page från en content page Hur du använder LoginStatus kontrollen för att visa och gömma inloggningslänkar. Hur du ändrar mål vid logout för LoginStatus kontrollen. Hur du aktiverar ASP.NET rollhanteringstjänsten. Hur du skapar roller och hur du tilldelar användare till roller. Hur du skapar rollbaserade tillträdesregler för din Web site