Princip lístek ověřování formulářů a souborů Cookie

ID článku: 910443 - Produkty, které se vztahují k tomuto článku.
PROSTŘEDÍ ASP.NET podpora hlasové sloupce

Princip lístek ověřování formulářů a souborů Cookie

Chcete-li upravit tento sloupec vašim potřebám, chceme vás pozvat předložit své nápady o tématech, které zajímají je a problémy, které chcete zobrazit určeno v budoucnu článků znalostní báze a podpora hlasové sloupce. Můžete odeslat své myšlenky a pomocí zpětné vazby Požádat o to formulář. Je také odkaz na formulář v dolní části tohoto sloupce.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Úvod

Vítá vás Microsoft ASP.Sloupec NET podporu hlas! Jsem Nilay B. Shah s ASP.Tým podpory ČISTÉ developer. I práce s PROSTŘEDÍ ASP.NET podporu pro více než jeden a půl roku. Ověřování pomocí formulářů je skutečně skvělé ověřování funkce. Tento článek zahrnuje některé problémy, které Uživatelé mají nalézt matoucí s ověřování pomocí formulářů, jako je například vztah ověřovací lístek formuláře a soubor cookie ověřování formulářů a jejich příslušné nastavení. Chtěl bych Děkujeme Jerry Orman, technický vedoucí ASP.ČISTÉ podpory týmu, jeho neuvěřitelnou nápovědu!

Lidé někdy Wonder o ověřování formulářů "vstupenky" a "cookies", protože jsou úzce souvisí. Přijde I přes otázky, jako jsou tyto: kdokoli vysvětlovat rozdíl mezi vypršení platnosti souboru cookie a vypršení platnosti lístku? Když soubor cookie vyprší, uživatel, budete přesměrováni na přihlašovací stránku. Co se stane Když vyprší platnost lístku? Bude také vytvořit soubor cookie vyprší? Co znamená SlidingUpdate skutečně aktualizovat?

Lze se zaměří na tyto dva aspekty Ověřování pomocí formulářů v tomto článku odpovězte na následující otázky:
  • Co je ověřovací lístek formuláře a formuláře ověřovací soubor cookie? Jak se vztahují?
  • Co je role lístek ve formulářích Ověřování?
  • Jak se vypršení platnosti souboru cookie a vypršení platnosti lístku související?
  • Jak posuvné vypršení práce v rámci formuláře ověřování formulářů a lístek ověřovací soubor cookie?
  • Kde lze vlastnost časového limitu pro ověřování formulářů nastavit soubor cookie a formuláře ověřovací lístek?
  • Scénář problém: ověřování formulářů vypršet časový limit před hodnotu časového limitu atributu, který je nastaven v konfiguraci soubor

Co je ověřovací lístek formuláře a formuláře ověřovací soubor cookie? Jak jsou vztahují?

Soubor cookie ověřování formulářů je nic ale kontejner pro formuláře ověřovací lístek. Lístek je předán jako hodnota formulářů ověřovací soubor cookie s každým požadavku a používá ověřování pomocí formulářů, na server pro identifikaci ověřený uživatel.

Avšak v případě, že jsme zvolili Chcete-li používat ověřování pomocí formulářů cookieless, lístek bude předán do adresy URL v šifrovaném formátu. Ověřování pomocí formulářů cookieless je použita, protože někdy klientské prohlížeče blokovat soubory cookie. Tato funkce je zavedena Microsoft .Rozhraní .NET Framework 2.0.

Další informace naleznete v následující části Webový server služby Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/System.web.Configuration.formsauthenticationconfiguration.cookieless.aspx

Co je lístek v roli Ověřování pomocí formulářů?

Ověřovací lístek formulářů používá k zjištění ASP.NET aplikace, kdo jste. Lístek tedy stavební blok formulářů Ověřování zabezpečení.

Lístek je zašifrován a podepsán pomocí na <machinekey></machinekey> Konfigurace prvku souboru serveru Machine.config. PROSTŘEDÍ ASP.NET 2.0 používá decryptionKey a nové dešifrování atribut <machinekey></machinekey> prvek k zašifrování lístcích ověřování pomocí formulářů. Na dešifrování atribut umožňuje určit šifrovací algoritmus, který chcete použít. PROSTŘEDÍ ASP.NET 1.1 a 1.0 pomocí šifrování 3DES, který není konfigurovatelné. Falšování s lístku je hodnota určena selhání dešifrovat lístek na Server. Následkem toho uživatel přesměrováni na přihlašovací stránku.

V případě, že aplikace je zavedena ve webové serverové farmě, je třeba ověřit, zda konfigurační soubory na každém serveru sdílejí stejnou hodnotu pro validationKey a decryptionKey atributy v <machinekey></machinekey> značku, která se používají k výpočtu hodnoty hash a dešifrování lístek v uvedeném pořadí. Musíte to provést, protože nelze zaručit, který server bude zpracovávat požadavky na sobě. Další informace o FormsAuthenticationTicket šifrování a důležité informace webové farmy o zavádění, navštivte následující web služby MSDN:
http://msdn2.microsoft.com/en-us/library/ms998288.aspx
Procházet metod pro ruční generování klíčů lze nalézt. v následujících článcích znalostní báze Microsoft Knowledge Base:
312906 Jak vytvořit klíče pomocí aplikace Visual C#.NET pro použití při ověřování pomocí formulářů
313091 Jak Vytvoření klíče pomocí jazyka Visual Basic.NET pro použití při ověřování pomocí formulářů
Mohou být generovány formulářů ověřovacích lístků ručně pomocí FormsAuthenticationTicket Třída. Další informace naleznete na webu MSDN:
http://msdn2.microsoft.com/en-us/library/System.web.Security.formsauthenticationticket.aspx

Jak vypršení platnosti souboru cookie a vypršení platnosti lístku souvisí?

V případě z-trvalý soubor cookie, pokud vypršela platnost lístku souborů cookie také vyprší, a uživatel, budete přesměrováni na přihlašovací stránku. V druhé straně, pokud lístku je označen jako trvalé, kde je uložen soubor cookie v okně klientské prohlížeče používají stejný soubor cookie ověřování přihlášení k na webu kdykoli. Však můžeme použít FormsAuthentication.SignOut způsob odstranění trvalých nebo nejsou trvalé soubory cookie explicitně.

Další informace o FormsAuthentication.SignOut Metoda, naleznete na následujícím webu MSDN:
http://msdn2.microsoft.com/en-us/library/System.web.Security.formsauthentication.Signout.aspx
S ověřování pomocí formulářů cookieless, pokud je zavřený v prohlížeči, lístek je ztracena a bude vygenerován nový lístek při dalším požadavku.

Jak posuvné vypršení práce v souvislosti s ověřovací lístek formulářů a formulářů ověřovací soubor cookie?

Klouzavé vypršení funguje stejným způsobem!

Dejte nám vzít Příklad: Pokud přihlašovací stránka je přístupná v 17:00 00:00:00, by měl být vypršení platnosti na 10 00:00:17: 00, pokud časový limit atribut je 10 a slidingExpiration atribut je nastaven na hodnotu TRUE. Nyní, pokud znovu procházení stránek WWW v 17:05:00: 00 00, soubory cookie a časový limit lístku bude obnoveno 15 17:00:00: 00.

Poznámka: Pokud na webové stránce zobrazují před polovinu času vypršení platnosti průchody, čas vypršení platnosti lístku již nelze vynulovat. Popředí, pokud například některý Web stránka je přístupná znovu v 17:04:00: 00 00, soubory cookie a časový limit lístku období, nebude obnovena.

Další informace naleznete v následující části Webu MSDN:
http://msdn2.microsoft.com/en-us/library/1d3t3c61 (vs.71) .aspx

Kde lze limitu hodnota souboru cookie ověřování formulářů a nastavit ověřovací lístek formulářů?

Je pouze nastavení, které lze provést v souboru Web.config nebo souboru Machine.config v souboru <forms></forms> značka. Tato změna určí časový limit formulářů ověřování v rámci souborů cookie lístku nebo pokud je lístek generován ručně.

<!--
forms Attributes: 
name="[cookie name]" - Sets the name of the cookie used for Forms Authentication.
loginUrl="[url]" - Sets the URL to redirect client to for authentication.
protection="[All|None|Encryption|Validation]" - Sets the protection mode for data in cookie.
timeout="[minutes]" - Sets the duration of time for cookie to be valid (reset on each request).
path="/" - Sets the path for the cookie.
requireSSL="[true|false]" - Should the forms authentication cookie be sent only over SSL?
slidingExpiration="[true|false]" - Should the forms authentication cookie and ticket be reissued if they are about to expire?
-->
Další informace naleznete na webu MSDN:
http://msdn2.microsoft.com/en-us/library/1d3t3c61.aspx
Pokud lístku je generován ručně pomocí FormsAuthenticationTicket třídy, časový limit lze nastavit až Vypršení platnosti atribut. Tato hodnota přepíše časový limit Hodnota atributu určen v konfiguračních souborech.

Pro Další informace o FormsAuthenticationTicket Členové, naleznete na následujícím webu MSDN:
http://msdn2.microsoft.com/en-us/library/System.web.Security.formsauthenticationticket_members.aspx

Scénář problém: ověřování formulářů vypršet časový limit před atribut hodnotu časového limitu, který je nastaven v konfiguračním souboru

Pokud ověřovací lístek formulářů je generován ručně, Vlastnost časový limit lístku přepíše hodnotu nastavenou v konfigurační soubor. Proto je-li tato hodnota je menší než hodnota v konfigurační soubor formulářů ověřovací lístek vyprší před konfigurační soubor časový limit Hodnota atributu a naopak. Například Předpokládejme, že na <forms></forms>časový limit atribut v souboru Web.config nastavena na 30 a Vypršení platnosti letenky hodnotu 20 minut. V tomto případě formulářů ověřovací lístek vyprší po 20 minutách a uživatel bude muset. poté se znovu přihlaste.

Související odkazy

910439 Poradce při ověřování pomocí formulářů
Chcete-li získat soubor FormsAuthLogger.exe, který je uvedené v článku znalostní báze Microsoft Knowledge Base 910439, navštivte následující Web společnosti Microsoft:
http://www.microsoft.com/downloads/details.aspx?FamilyID = 4a54e56f-61b4-48a8-9e01-4187173539da & displaylang = cs
891032 Poradce při potížích PROSTŘEDÍ ASP.NET
301240 Jak implementovat ověřování na základě formulářů aplikace ASP.NET aplikací pomocí jazyka C#.NET
308157 Jak implementovat ověřování na základě formulářů aplikace ASP.NET aplikací pomocí jazyka Visual Basic.NET
Doufám, že nalezené tyto informace užitečné pro náběh/doběh některé související s prostředím ASP zmatení.ČISTÉ formuláře ověřovací lístek a soubor cookie. Nezapomeňte, že podpora hlasové sloupce jsou pro vás! Jako vždy využívejte odeslání nápady na témata chcete adresou v budoucnu sloupcích nebo v Pomocí znalostní báze Microsoft Knowledge Base Požádat o to formulář.

Vlastnosti

ID článku: 910443 - Poslední aktualizace: 22. května 2011 - Revize: 3.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
Klíčová slova: 
kbhowto kbasp kbmt KB910443 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:910443

Dejte nám zpětnou vazbu