Exportovat (0) Tisk
Rozbalit vše
Tento článek byl přeložen překladatelem. Původní text zobrazíte přesunutím ukazatele myši nad jednotlivé věty článku. Další informace
Překlad
Originál

Návod: správa uživatelů webu pomocí rolí

.NET Framework 4

Běžným požadavkem pro weby je umožnit zobrazení určitých stránek pouze některým (ověřeným) uživatelům. V technologii ASP.NET můžete použít role ke správě přístupu uživatelů k webovým stránkám. Role umožňují použít stejná pravidla přístupu pro skupinu uživatelů, jako jsou například manažeři, správci, členové a tak dále. Chcete-li použít role, vytvořte nové role, přiřaďte jednotlivé uživatele do jedné nebo více rolí a pak udělte přístupová oprávnění k roli. Každému uživateli v této roli jsou udělena oprávnění, která jsou pro tuto roli definována. Například můžete vytvořit roli správce, přidat k této roli uživatele a nastavit přístupová pravidla, která umožní zobrazení stránky správce pouze uživatelům v dané roli. Uživatelé, kteří jsou ověřeni, ale nemají přiřazenu roli správce, nebudou mít přístup ke stránkám, které nakonfigurujete pouze pro správce.

Úkoly popsané v tomto návodu zahrnují následující:

  • Vytváření projektu webu technologie ASP.NET

  • Vytváření složky a stránek, které mají omezený přístup.

  • Konfigurace webu s členstvím a rolemi

  • Přidání uživatelů na web

  • Přiřazení uživatelů rolím

  • Změna pravidel přístupu

Chcete-li projít tento návod, budete potřebovat:

  • Microsoft Visual Studio 2010 nebo Microsoft Visual Web Developer Express.

  • SQL Server Express nainstalovaný lokálně na vašem počítači.

Začnete vytvořením webového projektu technologie ASP.NET. Ve výchozím nastavení platí, že když vytváříte nový projekt webu v aplikaci Visual Studio, projekt zahrnuje celou řadu elementů, které jsou nutné k vytvoření webu, který podporuje členství (ověřování). V tomto návodu budete využívat integrované funkce členství a pak tyto funkce rozšířit přidáním rolí.

PoznámkaPoznámka

Tento návod používá webový projekt. Místo toho můžete použít projekt webové aplikace. Informace o rozdílech mezi těmito typy webových projektů naleznete v tématu Projekty webových aplikací versus webové projekty.

Vytvoření nového webu technologie ASP.NET

  1. Spusťte sadu Visual Studio nebo aplikaci Visual Web Developer.

  2. V nabídce Soubor klikněte na Nový web. (Pokud tuto možnost nevidíte, klikněte na tlačítko Nový a potom klikněte na tlačítko Web.)

    Zobrazí se dialogové okno Nový web.

  3. Pod volbou Nainstalované šablony klikněte na Visual Basic nebo Visual C# a potom zvolte Web ASP.NET.

  4. V poli Umístění webu vyberte Systém souborů a zadejte název složky, do níž chcete umístit stránky webu. Například zadejte název složky C:\Websites\RolesWebsite a poté klikněte na tlačítko OK.

    Visual Studio vytvoří složku a otevře stránku Default.aspx v zobrazení Zdroj. Pamatujte, že kořenový web obsahuje několik souborů a složek včetně složky Account, souboru Web.config, stránky About.aspx, stránky Default.aspx a stránky Site.master. Tyto stránky a složky jsou již konfigurovány pro použití členství technologie ASP.NET.

  5. Spusťte stránku stisknutím kláves CTRL+F5.

    Domovská stránka se zobrazí v prohlížeči. Všimněte si položek menu (Domů a O produktu) a všimněte si odkazu Přihlásit. Dále v návodu na web přidáte další položky nabídky a webové stránky.

  6. Zavřete prohlížeč.

Chcete-li pracovat s rolemi, bude třeba vytvořit dvě složky, kde můžete ponechat stránky s omezeným přístupem. Jedna složka bude obsahovat stránky, ke kterým bude mít přístup každý ověřený uživatel (které však nejsou dostupné anonymním uživatelům). Další složka bude obsahovat stránky, ke kterým mají přístup uživatelé, kteří jsou ověřeni (přihlášeni) a kterým je zároveň přiřazena role správce. Anonymní uživatelé a uživatelé, kteří jsou přihlášeni, ale nejsou v roli správce, nebudou mít přístup na druhou stránku. Dále v návodu použijete pravidla přístupu k těmto složkám, čímž omezíte, kteří uživatelé mohou ke složce přistupovat.

Vytvoření složek pro omezený přístup

  1. V okně Průzkumník řešení klikněte pravým tlačítkem myši na kořen webu a pak klikněte na položku Nová složka a nakonec pojmenujte složku AdminPages.

    Tato složka bude obsahovat stránku, která je přístupná pouze uživatelům, kterým je přiřazena role Správce. Role vytvoříte později v tomto návodu.

  2. Klikněte pravým tlačítkem myši na kořenovou složku webu, klikněte na příkaz Nová složka a složku pojmenujte Customers.

    Tato složka bude obsahovat stránku, která je přístupná všem přihlášeným uživatelům.

Přidání stránek do složek

  1. V Průzkumníku řešení klikněte pravým tlačítkem myši na složku AdminPages a vyberte příkaz Přidat novou položku.

  2. Vyberte možnost Formulář na webua do pole Název zadejte Admin.aspx. Zaškrtněte políčko Zvolit stránku předlohy a potom klikněte na tlačítko Přidat.

  3. V dialogovém okně Vybrat stránku předlohy v části Obsah složky vyberte Site.master a pak klikněte na tlačítko OK.

  4. Přepněte do zobrazení Návrh a přidejte text, jako například Vítejte na stránce správců. Přesný text není důležitý. Můžete přidat libovolný text, který umožňuje identifikovat stránku.

  5. V panelu nástrojů Formátování použijte rozevírací seznam Blokový formát k formátování textu jako Nadpis 1.

  6. Uložte a zavřete stránku Admin.aspx.

  7. Klikněte pravým tlačítkem myši na složku MembersPages a vyberte možnost Přidat novou položku.

  8. Přidejte druhou stránku Webový formulář, pojmenujte ji Members.aspx a jako jeho stránku předlohy vyberte Site.master.

  9. Přejděte do zobrazení Návrh a přidejte text, například uvítání na stránku pro členy, a nastavte styl jako nadpis.

  10. Uložte a zavřete stránku Members.aspx.

  11. Otevřete stránku Default.aspx a přejděte do zobrazení Návrh.

  12. Přidejte text, například Přivítání, na domovskou stránku.

  13. Uložte a zavřete stránku Default.aspx.

  14. Otevřete stránku Site.master.

  15. Přepněte do zobrazení Návrh a změňte nadpis Site.master například na Webová stránka Moje role.

Odkazy na stránky s omezeným přístupem

Dále přidáte položky nabídky (karty) na stránce předlohy, které odkazují na stránku správce a stránku členů, které jste právě přidali. To vám umožní vyzkoušet přístup k těmto stránkám později v návodu.

Odkazování na stránky s omezeným přístupem

  1. Na stránce Site.master klikněte pravým tlačítkem myši na ovládací prvek Menu, který obsahuje položky nabídky Home a O produktu a pak klikněte na tlačítko Zobrazit inteligentní značku.

    Zobrazí se dialogové okno Úlohy nabídky.

  2. V části Úkoly nabídky klikněte na možnost Upravit položky nabídky….

    Zobrazí se Editor položek nabídky.

  3. V části Položky klikněte na ikonu Přidat kořenovou položku (první ikona zleva) v panelu nástrojů.

    Přidat Položka nabídky

    Nová položka je vytvořena ve stromu nabídky.

  4. Vyberte možnost Nová položka.

  5. V okně Vlastnosti v Editoru položek nabídky nastavte vlastnost textu na Členy.

  6. V okně vlastností klikněte na možnost NavigateUrl a poté klikněte na tlačítko se třemi tečkami (...).

    Zobrazí se dialogové okno Vybrat adresu URL.

  7. V části Složky projektu klikněte na možnost MembersPages.

  8. V části Obsah složky zvolte možnost Members.aspx a potom klikněte na tlačítko OK.

  9. Použijte stejný postup k přidání další položky nabídky. Tentokrát nastavte vlastnost textu pro správce a vlastnost NavigateUrl na hodnotu ~AdminPages/admin.aspx.

  10. Klepnutím na tlačítko OK zavřete dialogové okno.

    Následující obrázek ukazuje ikonu Přidat kořenovou položku v editoru Přidat položku nabídky.

    Přidat Položka nabídky

Dalším krokem je nastavení členství ASP.NET a rolí. Můžete použít nástroj Správa webu, který poskytuje průvodce pro nastavení konfigurace. Po dokončení konfigurace je ve složce App_Data vytvořena databáze serveru SQL Server s názvem Aspnetdb.mdf. Databáze obsahuje informace o členství pro tento web.

Konfigurování webu pro členství a role

  1. V nabídce Web klikněte na příkaz Konfigurace ASP.NET.

    Nástroj Správa webu je zobrazen v okně prohlížeče.

  2. Vyberte kartu Zabezpečení, klikněte na odkaz K podrobné konfiguraci zabezpečení použijte Průvodce nastavením zabezpečení a potom klikněte na tlačítko Další.

  3. Vyberte možnost Z Internetu.

    Tato volba určuje, že vaše aplikace bude používat ověřování pomocí formulářů technologie ASP.NET, kde se uživatelé budou přihlašovat k webu pomocí přihlašovací stránky, která je součástí webu. (Přihlašovací stránka byla přidána na web automaticky při vytvoření webu dříve v návodu.)

  4. Klepněte na tlačítko Další.

    Průvodce zobrazí zprávu s oznámením, že uživatelské informace budou uloženy pomocí Advanced provider settings. Aplikace bude používat výchozího poskytovatele, který ukládá informace o členství v databázovém souboru systému SQL Server Express ve složce App_Data vašeho webu.

  5. Klepněte na tlačítko Další.

  6. V části Definovat role zaškrtněte políčko Povolit role pro tento web a pak klikněte na tlačítko Další.

  7. V části Vytvořit novou roli v poli Název nové role zadejte slovo Správce a klikněte na možnost Přidat roli.

  8. Do pole Nový název role zadejte Člen a pak klikněte na možnost Přidat roli

    Role, které jste právě vytvořili, se zobrazí v části Stávající role.

    Následující ilustrace znázorňuje stránku Vytvořit novou roli.

    Vytvořit Nový roli

    Dále v návodu budete vytvářet uživatele a přiřazovat je k rolím, které jste právě vytvořili.

    PoznámkaPoznámka

    Ponechejte nástroj Správa webu otevřený.

Nyní můžete přidat uživatele a přiřadit je k rolím. V tomto návodu vytvoříte dva uživatele a jednomu přiřadíte roli správce a druhému roli člena.

Přidání uživatelů

  1. V nástroji Správa webu klikněte na tlačítko Další. Zobrazí se stránka Vytvořit uživatele.

  2. Zadejte informace, které definují uživatele vašeho webu. Řiďte se následujícími hodnotami. (Můžete použít libovolné hodnoty, ale poznamenejte si je. Tato zadání použijete později v návodu.)

    1. Uživatelské jméno    admin1 (bez mezer) nebo ukázkové jméno

    2. Heslo   Heslo. Je vyžadováno silné heslo (které může obsahovat velká a malá písmena, interpunkci, jiné než číselné znaky a které je nejméně osm znaků dlouhé).

    3. E-mail   Vaše vlastní e-mailová adresa. To je užitečné, pokud později potřebujete hledat uživatele v nástroji Správa webu

  3. Vyberte možnost Aktivní uživatel.

  4. Klikněte na položku Vytvořit uživatele a pak klikněte na tlačítko Pokračovat.

  5. Zadejte informace definující jiného uživatele se jménem člen1 a poté klikněte na tlačítko Vytvořit uživatele.

  6. Kliknutím na tlačítko Dokončit se vraťte na domovskou stránku nástroje pro správu webu.

Web, který vytváříte, umožní uživatelům získat přístup ke stránkám na základě jejich rolí. Proto je třeba vytvořit pravidla přístupu pro složky, které obsahují stránky, jež chcete chránit, a nastavit, které role mohou přistupovat ke kterým složkám.

Nastavení pravidel přístupu pro složky webu

  1. V okně Nástroj správy webu klikněte na kartu Zabezpečení.

  2. V okně Pravidla přístupu klikněte na tlačítko Vytvořit pravidla přístupu.

    Zobrazí se stránka Přidat nové pravidlo přístupu, kde můžete vytvořit pravidla určující, které role mohou získat přístup ke stránkám webu.

  3. V části Vybrat adresář pro toto pravidlo rozbalte kořenový uzel.

  4. Vyberte složku MembersPages.

  5. V rámečku Pravidlo se vztahuje na vyberte Anonymní uživatelé.

  6. V rámečku Oprávnění vyberte Odepřít. Toto pravidlo odepírá anonymním uživatelům přístup ke složce MembersPages. Ve výchozím nastavení technologie ASP.NET umožňuje všem uživatelům přístup ke všem složkám, takže je třeba nastavit pravidlo pro vyloučení anonymních uživatelů.

  7. Klepněte na tlačítko Přidat toto pravidlo. Nové pravidlo se zobrazí v mřížce v dolní části stránky.

    Následující obrázek ukazuje dialogové okno Přidat nové pravidlo přístupu.

    Pravidla přístupu
  8. V části Vybrat adresář pro toto pravidlo klikněte na složku AdminPages.

  9. V rámečku Pravidlo se vztahuje na vyberte příkaz Role a v rozevíracím seznamu klikněte na položku Admin.

  10. V nabídce Oprávnění vyberte příkaz Povolit.

    Pravidlo, které vytváříte, uděluje přístupová oprávnění do složky AdminPages všem uživatelům s rolí správce.

  11. Klepněte na tlačítko Přidat toto pravidlo.

  12. V části Vybrat adresář pro toto pravidlo klikněte znovu na možnost AdminPages.

  13. V nabídce Pravidlo se vztahuje na vyberte příkaz Všichni uživatelé.

  14. V rámečku Oprávnění vyberte Odepřít.

  15. Klepněte na tlačítko Přidat toto pravidlo.

    Toto pravidlo pro složku AdminPages zajišťuje, že všichni uživatelé s výjimkou uživatelů v roli Správce mohou získat přístup ke složce AdminPages. Všechna pravidla jsou zobrazena v mřížce v dolní části stránky. Když si uživatelé vyžádají stránku ze složky, jsou pravidla pro složku zkontrolována v pořadí shora dolů. Pravidlo uvedené na prvním místě přepíše pravidlo pod ním a tak dále. Ve výchozím nastavení se použití pravidel vztahuje na složku a všechny podsložky (pokud pro podsložky nevytvoříte jiná pravidla).

  16. Klepněte na tlačítko Dokončit pro vrácení se na kartu Zabezpečení.

    Na kartě zabezpečení (2 uživatelé a 2 role) je zobrazen počet uživatelů a rolí, které jste vytvořili.

PoznámkaPoznámka

Ponechejte nástroj Správa webu otevřený.

Po vytvoření pravidel pro přístup do složek, definování rolí a vytvoření uživatelů můžete přiřadit uživatele k rolím. Můžete přiřadit uživatele do jedné nebo více rolí. Přiřadíte uživatele člen1, kterého jste vytvořili dříve, k roli Člen a uživatele správce1 k rolím Správce a Člen.

Přiřazení rolí

  1. Na kartě Zabezpečení v části Uživatelé klikněte na tlačítko Spravovat uživatele.

    Zobrazí se všichni uživatelé, které jste vytvořili. Pokud má váš web mnoho uživatelů, můžete vyhledat uživatele podle jeho uživatelského jména nebo e-mailové adresy funkcí Hledat uživatele v nástroji Správa webu.

  2. V řádku admin1 klikněte na položku Upravit role.

  3. V části Role vyberte možnost Správce a Člen. To uživateli admin1 přiřadí role Správce a Člen. Tento uživatel má přístup ke stránkám ve složkách MembersPages a AdminPages.

  4. V řádku Člen1 klikněte na tlačítko Upravit role a vyberte možnost Člen. Toto pravidlo umožňuje uživatelům v této roli přistupovat ke složce MembersPages, ale ne ke složce AdminPages.

    Na následujícím obrázku je znázorněna stránka Upravit uživatele.

    AssignRoles
  5. Kliknutím na tlačítko Zpět se vraťte na kartu Zabezpečení.

  6. Ukončete nástroj pro správu webu.

Chcete-li otestovat web, můžete se přihlásit pomocí pověření uživatelů, které jste vytvořili (člen1 a správce1), a zkusit přístup ke stránkám v omezených složkách. Můžete také zaregistrovat nového uživatele a potom otestovat stránky, k nimž má nový uživatel přístup.

Testování webu

  1. V Průzkumníku řešení klikněte pravým tlačítkem myši na stránku Default.aspx a klikněte na příkaz Nastavit jako úvodní stránku. Tím zajistíte, že soubor Default.aspx je zobrazen vždy, když spustíte web v aplikaci Visual Studio.

  2. Stiskněte CTRL+F5.

  3. Klikněte na položku nabídky (kartu) Členové.

    Zobrazí se přihlašovací stránka (Login.aspx), protože přístup na stránku pro členy a stránku pro správce je anonymním uživatelům odepřen.

  4. Přihlaste se jako člen1.

    Všimněte si, že odkaz Přihlásit se změnil na Odhlásit.

  5. Klikněte na položku nabídky (kartu) Členové.

    Zobrazí se stránka Members.aspx, protože uživatelské jméno, se kterým jste se přihlásili, má oprávnění pro přístup ke stránce.

  6. Klikněte na položku nabídky Administrators.

    Znovu se zobrazí stránka Login.aspx, protože přístup na stránku pro správce je odepřen uživatelům, kteří nemají roli správce. Aktuální uživatel (Člen1) je v roli člena, ale nikoli v roli administrátora.

  7. Kliknutím na odkaz Odhlásit se odhlaste jako uživatel members1.

  8. Klikněte na položku nabídky Administrators.

  9. Přihlaste se jako uživatel admin1.

    Tentokrát se stránka správce zobrazí, protože uživatelské jméno, kterým jste se přihlásili, je oprávněno k přístupu ke stránce.

  10. Klepněte na Members.

    Zobrazí se stránka pro členy, protože uživatelské jméno, pod kterým jste přihlášeni (admin1) bylo ověřeno pro přístup ke stránkám pro členy i správce. Uživatel admin1 je přiřazen rolím Admin i Člen.

  11. Odhlaste se a pak klikněte na tlačítko Přihlásit.

  12. Na přihlašovací stránce klikněte na tlačítko Zaregistrovat, vytvořte nového uživatele jménem guest1 a pak klikněte na tlačítko Vytvořit uživatele.

  13. Klikněte na položku Administrators. Zobrazí se stránka Login.aspx, protože uživateli guest1 není přiřazena role správce.

  14. Klepněte na Members. Zobrazí se stránka pro členy. Tento nový uživatel nebyl přiřazen k roli, ale stránka členů se zobrazí, protože všichni ověření uživatelé mají povolen přístup ke složce MembersPages.

    Chcete-li zajistit, že k této složce mají přístup pouze uživatelé, kteří jsou členy role, musíte přidat nové pravidlo zamítající všechny uživatele s výjimkou uživatelů v roli člena. Tento úkol provedete v následující části.

  15. Zavřete prohlížeč.

V této části návodu změníte role a pravidla přístupu, která jste vytvořili dříve, aby bylo možné změnit, kdo je oprávněn k zobrazení stránky členů a stránky správců.

V první části změníte pravidla tak, aby umožňovala přístup ke stránkám ve složce MembersPages pouze uživatelům v roli Člen (ne všem ověřeným uživatelům).

Změna pravidel přístupu

  1. V nabídce Web klikněte na příkaz Konfigurace ASP.NET.

  2. Klikněte na kartu Zabezpečení.

  3. V části Pravidla přístupu klikněte na možnost Spravovat pravidla přístupu.

  4. Klepněte na odkaz Přidat nové pravidlo přístupu.

  5. V části Vybrat adresář pro toto pravidlo vyberte složku MemberPages.

  6. V nabídce Pravidlo se vztahuje na vyberte příkaz Všichni uživatelé.

  7. V nabídce Oprávnění vyberte příkaz Odepřít a poté klikněte na tlačítko OK.

    Toto pravidlo zajišťuje, že všem je odepřen přístup ke složce MembersPages.

  8. Klepněte na odkaz Přidat nové pravidlo přístupu.

  9. Znovu vyberte složku MembersPages.

  10. V části Pravidlo platí pro vyberte možnost Role a v rozevíracím seznamu zvolte možnost Člen.

  11. V nabídce Oprávnění vyberte možnost Povolit, klikněte na tlačítko OK a pak klikněte na tlačítko Hotovo.

    Pravidlo, které jste právě vytvořili, umožňuje přístup ke složce MembersPages pouze uživatelům, kteří jsou v roli člena. Uživateli člen1 je odepřen přístup ke složce MembersPages, ačkoli uživateli člen1 je přiřazena role Členové. To je proto, že pravidlo, které umožňuje přístup k roli Členové, je v seznamu níže, než pravidlo, které odepírá přístup všem uživatelům. Chcete-li zajistit, aby uživatel člen1 měl ke složce přístup, musíte přesunout pravidlo, které povoluje uživatele přidělené k roli Členové, nad pravidlo, které zamítá přístup všem členům.

  12. Vraťte se na kartu Zabezpečení a klikněte na tlačítko Spravovat pravidla přístupu.

  13. Pokud složka MembersPages není vybrána, vyberte ji.

  14. V části Uživatelé a role klikněte na tlačítko Člen a poté pomocí tlačítka Přesunout nahoru přesuňte Člena do horní části seznamu.

  15. Klepnutím na tlačítko Hotovo se vrátíte na kartu Zabezpečení.

Nástroj Správa webu vám umožní měnit role a přiřazovat uživatele k rolím. V nástroji můžete provést následující úlohy:

  • Přidejte nebo odeberte uživatele ze stávající role.

  • Přiřaďte uživatele k nové roli.

  • Přidejte nové role.

  • Zakažte role.

  • Ostraňte role.

V tomto návodu provedete následující úkoly:

  • Odeberte uživatele admin1 z role Admin.

  • Přiřaďte uživatele member1 k roli Admin.

Odebrání uživatele ze stávající role

  1. nástroji Správa webu klikněte na kartu Zabezpečení a pak v části Role klikněte na možnost Vytvořit nebo spravovat role.

  2. V části Název Role vyberte roli Správce a klikněte na tlačítko Spravovat.

    Zobrazí se všichni členové v roli Admin.

  3. V části Uživatel je v roli pro uživatele správce1 zrušte zaškrtnutí políčka a odstraňte uživatele správce1 z role.

  4. Klikněte na tlačítko Zpět.

Přiřazení uživatele nové roli

  1. Kliknutím na tlačítko Zpět se vraťte na kartu Zabezpečení.

  2. Pod Uživatelé klikněte na Spravovat uživatele.

  3. V části Uživatelské jméno, v řádku uživatele člen1 klikněte na tlačítko Upravit uživatele.

    Zobrazí se stránka pro úpravu rolí.

  4. V části Role vyberte roli Správce a Člen a klikněte na možnost Uložit. Uživatel člen1 má nyní roli správce a je mu umožněn přístup ke složce AdminPages.

  5. Klikněte na tlačítko OK a zavřete okno Nástroj pro správu webu.

Nyní můžete změněný web otestovat.

Testování změněného webu

  1. Stisknutím kláves CTRL+F5 spusťte web.

  2. Pokud jste přihlášeni z předchozích testů, odhlaste se.

  3. Přihlaste se jako admin1 a pak klikněte na položku nabídky Správce.

    Zobrazí se stránka Login.aspx, protože přístup na stránku pro členy a stránku pro správce je nyní uživateli admin1 odepřen. Uživatel admin1 byl z role Admin odebrán.

  4. Odhlaste se a potom se přihlaste jako člen1.

  5. Klikněte na nabídku Administrators. Stránka správce se zobrazí, protože Člen1 je přiřazen k roli správce.

Tento návod ilustruje základní funkce správy rolí technologie ASP.NET. Můžete chtít vyzkoušet i další funkce správy rolí, například:

Obsah vytvořený komunitou

Přidat
Zobrazit:
© 2014 Microsoft