Jak dokładnie skonfigurować httpOnlyCookies w ASP.NET?

Zainspirowany tym artykułem CodingHorror, "Ochrona plików cookie: HttpOnly "

Jak ustawić tę właściwość? Gdzieś w konfiguracji sieci?

Author: Cheekysoft, 2008-08-28

4 answers

Jeśli używasz ASP.NET 2.0 lub nowszy, można go włączyć w Internecie.plik konfiguracyjny. W systemie<.web> sekcja, Dodaj następujący wiersz:

<httpCookies httpOnlyCookies="true"/>
 70
Author: Corey McKinnon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-05-25 06:00:49

Z rekwizytami do Ricka (drugi komentarz w poście na blogu), oto artykuł MSDN na httpOnlyCookies.

Najważniejsze jest to, że wystarczy dodać następującą sekcję w systemie.sekcja www w Twojej sieci.config:

<httpCookies domain="" httpOnlyCookies="true|false" requireSSL="true|false" />
 10
Author: Dillie-O,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-26 23:27:00

Jeśli chcesz to zrobić w kodzie, użyj systemu .Www.HttpCookie.Właściwość HttpOnly .

Jest to bezpośrednio z dokumentów MSDN:

// Create a new HttpCookie.
HttpCookie myHttpCookie = new HttpCookie("LastVisit", DateTime.Now.ToString());
// By default, the HttpOnly property is set to false 
// unless specified otherwise in configuration.
myHttpCookie.Name = "MyHttpCookie";
Response.AppendCookie(myHttpCookie);
// Show the name of the cookie.
Response.Write(myHttpCookie.Name);
// Create an HttpOnly cookie.
HttpCookie myHttpOnlyCookie = new HttpCookie("LastVisit", DateTime.Now.ToString());
// Setting the HttpOnly value to true, makes
// this cookie accessible only to ASP.NET.
myHttpOnlyCookie.HttpOnly = true;
myHttpOnlyCookie.Name = "MyHttpOnlyCookie";
Response.AppendCookie(myHttpOnlyCookie);
// Show the name of the HttpOnly cookie.
Response.Write(myHttpOnlyCookie.Name);

Robienie tego w kodzie pozwala selektywnie wybrać, które Pliki cookie są HttpOnly, a które nie.

 9
Author: Portman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-08-29 02:48:00

Ciekawe umieszczenie <httpCookies httpOnlyCookies="false"/> nie wydaje się wyłączać httpOnlyCookies w ASP.NET 2.0. Sprawdź ten artykuł o SessionID i problemach z logowaniem w ASP.net 2.0.

Wygląda na to, że Microsoft podjął decyzję, aby nie zezwolić na wyłączenie go z sieci.config. Sprawdź ten post na forums.asp.net

 3
Author: Matthew Lock,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-15 13:01:53