SessionStateSection.Cookieless プロパティ

定義

Cookie を使用してクライアント セッションを識別するかどうかを示す値を取得または設定します。

public:
 property System::Web::HttpCookieMode Cookieless { System::Web::HttpCookieMode get(); void set(System::Web::HttpCookieMode value); };
[System.Configuration.ConfigurationProperty("cookieless")]
public System.Web.HttpCookieMode Cookieless { get; set; }
[<System.Configuration.ConfigurationProperty("cookieless")>]
member this.Cookieless : System.Web.HttpCookieMode with get, set
Public Property Cookieless As HttpCookieMode

プロパティ値

true すべての要求が Cookie レスとして扱われる場合、または要求が Cookie レスとして扱われなかった場合に false する場合、または HttpCookieMode 値の 1 つ。 ASP.NET バージョン 2.0 の既定値は AutoDetect。 以前のバージョンでは、既定値は falseでした。

属性

次のコード例では、 Cookieless プロパティを取得する方法を示します。 SessionStateSection オブジェクトにアクセスする方法については、SessionStateSection クラスのトピックのコード例を参照してください。

// Display the current Cookieless property value.
Console.WriteLine("Cookieless: {0}",
  sessionStateSection.Cookieless);
' Display the current Cookieless property value.
Console.WriteLine("Cookieless: {0}", sessionStateSection.Cookieless)

注釈

セッション状態で、クライアントとサーバー セッションを関連付ける一意の ID を格納するには、クライアントに HTTP Cookie を格納するか、URL でセッション ID をエンコードする方法の 2 つの方法があります。 セッション ID を Cookie に格納する方が安全ですが、Cookie をサポートするにはクライアント ブラウザーが必要です。

さまざまなモバイル デバイスなど、Cookie をサポートしていないクライアントを許可するアプリケーションの場合、セッション ID が URL に格納される場合があります。 URL オプションにはいくつかの欠点があります。 サイト上のリンクが相対的であり、新しいクエリ文字列値を使用してセッションの開始時にページがリダイレクトされ、クエリ文字列内のセッション ID が公開され、セキュリティ攻撃で使用するために取得できる必要があります。

Cookie のサポートがないクライアントをサポートする必要がある場合にのみ、Cookie レス モードを使用することをお勧めします。

セッション状態では、 UseDeviceProfileAutoDetectの 2 つの追加オプションもサポートされています。 前者では、セッション状態モジュールで、ブラウザーの機能に基づいて、クライアントごとに使用されるモード (Cookie または Cookie レス) を決定できます。 AutoDetect オプションは、ブラウザーとのハンドシェイクを実行して Cookie が格納される可能性があるかどうかを確認するため、決定を行うために追加の要求が必要です。 Cookie レス クライアントをサポートする必要がある場合は、 UseDeviceProfile を使用して、必要なクライアントに対してのみ Cookie レス URL を生成することを強くお勧めします。

UP を使用します。ブラウザー 4.1 または UP。ブラウザー 3.2 Redirectは、HttpBrowserCapabilities オブジェクトの SupportsRedirectWithCookie プロパティの値がfalseされているかのように常に動作します。ただし、Web.config の SessionState セクションのCookieless プロパティが明示的にtrueに設定されている場合を除きます。

ASP.NET バージョン 1.1 では、この設定のオプションは true または falseでしたが、ASP.NET 2.0 では選択肢が展開され、 AutoDetect が既定の設定になりました。 Web アプリケーションで Cookieless プロパティがブール値に設定されている場合、 Redirect は、これらのブラウザーで想定どおりに動作する必要があります。

適用対象

こちらもご覧ください