Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Formy autentifikácie (najjednoduchšie, odporúčané, ak je to možné):
Ak máte vo svojom nastavení * akúkoľvek * flexibilitu, najjednoduchšie a najčistejšie riešenie je prepnúť na autentifikáciu formulárov . Autentifikácia systému Windows je nepružná a pevne spojená s správou používateľov servera. Autentifikácia formulárov vám umožňuje spravovať používateľské účty vo vašej aplikácii a poskytuje jednoduchý mechanizmus odhlásenia. Potom sa odhlási jednoduchá `Formsauthentication.signout ()` v akcii ovládača.
`` csharp
[Httppost]
verejná akcia Logoff ()
{
Formsauthentication.signout ();
return redirecttoAction („index“, „domov“); // presmerovanie na svoju domovskú stránku
}
`` `
2. Vynútenie novej požiadavky (autentifikácia systému Windows):
Ak * musíte * používať autentifikáciu systému Windows, musíte spustiť novú žiadosť, ktorá vynúti opätovnú autentifikáciu (alebo jej nedostatok). Neexistuje žiadny priamy príkaz „Odhlásenie“; V podstate ničíte cookie relácie:
* presmerovanie na špeciálnu adresu URL: Vytvorte akciu radiča, ktorá nevyžaduje overenie. Táto akcia nerobí nič okrem presmerovania. Dôležitou časťou je, že toto presmerovanie vymaže existujúci overovací cookie. Prehliadač pošle novú žiadosť a IIS uzná, že neexistuje žiadna platná relácia.
`` csharp
[Demontanonymous] // Toto je rozhodujúce! Umožňuje prístup bez overovania
verejná akcia Logoff ()
{
return presmerovanie ("/"); // alebo na akúkoľvek adresu URL, ktorá nevyžaduje overenie
}
`` `
* Clear cookies (JavaScript na strane klienta - menej spoľahlivý): Tento prístup je vo všeobecnosti menej preferovaný, pretože sa spolieha na akcie na strane klienta a nemusí vždy fungovať spoľahlivo v prehliadačoch:
`` `JavaScript
Document.cookie ="asp.net_sessionId =; expires =thu, 1. januára 1970 00:00:00 UTC; path =/;";
// potenciálne potrebujete ďalšie riadky na odstránenie ďalších overovacích súborov cookie špecifických pre vaše nastavenie.
window.location.href ="/logoff"; // presmerovanie na vašu akciu založenia
`` `
Dôležité úvahy o autentifikácii systému Windows:
* IIS nastavenia: Uistite sa, že nastavenia IIS vašej aplikácie sú správne nakonfigurované pre autentifikáciu systému Windows.
* Správa relácií: Autentifikácia systému Windows sa často spolieha na správu relácií servera (stav relácie IIS). Metóda presmerovania vyššie účinne ukončí reláciu tým, že vynúti novú žiadosť bez overovacieho súboru cookie.
* Viacnásobné súbory cookie: V závislosti od vášho nastavenia môže existovať niekoľko súborov cookie súvisiacich s autentifikáciou. Možno budete musieť tieto výslovne vyčistiť (hoci metóda presmerovania zvyčajne postačuje).
* kerberos: Ak je zapojený Kerberos (bežné v podnikových prostrediach), proces odhlásenia môže byť zložitejší, pretože vstupenky Kerberos majú svoj vlastný životný cyklus a správu.
Odporúčanie:
Vážne zvážte prechod na autentifikáciu formulárov, ak máte akúkoľvek kontrolu nad svojím projektom. Spravovať používateľské relácie a odhlásenie je oveľa jednoduchšie. Riešenie odhlásenia autentifikácie systému Windows je vo svojej podstate zložitejšie a menej spoľahlivejšie. Vyššie uvedené prístupy fungujú, ale spoliehajú sa na nepriame metódy ukončenia relácie Windows. Vždy dôkladne otestujte v rôznych prehliadačoch.