このCodingHorrorの記事に触発された "Protecting Your Cookies: HttpOnly"ASP.NETでhttpOnlyCookiesをどのように正確に設定しますか?
どのようにこのプロパティを設定しますか? Web設定のどこかに?
このCodingHorrorの記事に触発された "Protecting Your Cookies: HttpOnly"ASP.NETでhttpOnlyCookiesをどのように正確に設定しますか?
どのようにこのプロパティを設定しますか? Web設定のどこかに?
あなたはASP.NET 2.0以上を使用している場合、あなたはそれをオンにすることができますWeb.configファイルに保存します。
<httpCookies httpOnlyCookies="true"/>
Rickへの小道具(ブログ記事の2番目のコメントが記載されています)は、httpOnlyCookiesのMSDN articleです。
ボトムラインは、あなたがちょうどあなたのweb.configファイルであなたのsystem.webセクションで、次のセクションを追加することです:
<httpCookies domain="" httpOnlyCookies="true|false" requireSSL="true|false" />
実際にはdomain = "String"を使用しないでください。有効なドメインを設定するか、その属性をそのままにしてください。 –
@JonGallowayキャッチをありがとう、私はそれに応じてコードを更新しました。 –
@ Dillie-Oこの要素をロックする原因は何ですか?私のweb.configファイルに設定すると、「要素httpcookiesが上位レベルの設定でロックされています」というエラーが表示されます。 – StackTrace
あなたはコードでそれを行うにしたい場合は、System.Web.HttpCookie.HttpOnlyプロパティを使用します。<のsystem.web >セクションでは、次の行を追加します。
これは、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);
は、あなたが選択HttpOnlyのがあるとされていないどのクッキーを選択することができます。
興味深いことに<httpCookies httpOnlyCookies="false"/>
を入れても、ASP.NET 2.0ではhttpOnlyCookies
が無効になっているようです。 SessionID and Login Problems With ASP .NET 2.0についてこの記事をチェックしてください。
Microsoftがweb.configから無効にすることを許可していないように見えます。これを確認してくださいpost on forums.asp.net
これは私のためには機能しません。私は " "どちらの設定も動作しませんでした。 –
rolls
@rolls私は同じ問題があります。あなたは解決策または原因を見つけましたか? – Neothor
はい私はそれをコードで行いました。以下の答えを確認してください。 – rolls