HttpSessionState.IsCookieless プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > HttpSessionState.IsCookieless プロパティの意味・解説 

HttpSessionState.IsCookieless プロパティ

セッション ID を URL に埋め込むか、HTTP cookie に格納するかを示す値を取得します。

名前空間: System.Web.SessionState
アセンブリ: System.Web (system.web.dll 内)
構文構文

Dim instance As HttpSessionState
Dim value As Boolean

value = instance.IsCookieless
public bool IsCookieless { get;
 }
public:
property bool IsCookieless {
    bool get ();
}
/** @property */
public boolean get_IsCookieless ()

プロパティ値
セッションを URL に埋め込む場合は true。それ以外の場合は false。

解説解説

ASP.NET は、ブラウザごとにセッションを一意に識別します。既定では、セッションの一意の識別子はブラウザの無期限のセッション Cookie に格納されます。sessionState 構成要素の cookieless 属性を true に設定すると、セッション識別子が Cookie に保存されないようにすることができます。

メモメモ

セキュリティを向上するために、アプリケーションは、ユーザーがログアウトできるようにし、その時点で Abandon メソッドを呼び出す必要があります。これによって、不適切な接続元が URL に一意の識別子を使用して、セッションに格納されたユーザーのプライベート データを取得する危険性を軽減できます。

ASP.NET は、ページの URL に自動的に一意のセッション ID を挿入することによって、Cookie なしのセッション状態を維持します。たとえば、次の URL は ASP.NET によって一意なセッション ID (lit3py55t21z5v55vlm25s55) を含むように変更されています。

http://www.example.com/(lit3py55t21z5v55vlm25s55)/orderform.aspx

ASP.NET は、各ページをブラウザに送信する直前に、要求されたすべてのページに含まれるリンクにセッション ID の値を組み込んで変更します。セッション状態は、サイトが提供するリンクのパスをユーザーがたどっている限り保持されます。しかし、ユーザー エージェントが URL を書き換えた場合は、セッション状態のインスタンスが失われます。

セッション ID は、アプリケーション名の後のスラッシュの後、既存ファイルまたは仮想ディレクトリの識別子の前に組み込まれます。これによって、要求に SessionStateModule が関与する前に、ASP.NET がアプリケーション名を解決できます。

既定では、Cookie なしのセッションで使用されるセッション識別子は再利用されます。つまり、有効期限切れのセッション ID を使用して要求が実行されると、要求が提示するセッション ID を使用して新しいセッションが開始されます。この動作により、検索エンジンおよびその他のプログラムを介して複数のブラウザ間で Cookie なしのセッション ID を含んだリンクが共有される場合に、セッション データが不適切に共有される事態が発生することがあります。セッション識別子の再利用を無効にすると、複数のクライアントによるセッション データの共有の可能性を減らすことができます。そのためには、sessionState 構成要素の regenerateExpiredSessionId 属性を true に設定します。これにより、期限切れになったセッション ID を使用して Cookie なしのセッションの要求が行われたときには、新しいセッション ID が生成されるようになります。期限切れになったセッション ID で実行された要求で HTTP の POST メソッドを使用している場合、regenerateExpiredSessionId が true のときにはポストされたデータは失われることに注意してください。これは、ブラウザが URL 内に新しいセッション ID を持つようにするために、ASP.NET がリダイレクトを実行するためです。

メモメモ

regenerateExpiredSessionId 属性を true に設定すると、セッション データの不適切な共有の可能性は軽減されますが、不適切な接続元が SessionID 値を取得してサーバーへの要求に含めることにより、別のユーザーのセッションにアクセスすることを防ぐことはできません。セッション状態に個人情報または機密情報を格納する場合は、SSL を使用してブラウザと SessionID を含むサーバー間のすべての通信を暗号化することをお勧めします。

使用例使用例

Web.config ファイルで cookieless セッション属性を true に設定するコード例を次に示します。

<configuration>
  <system.web>
    <sessionState 
      mode="InProc"
      cookieless="true"
      regenerateExpiredSessionId="true"
      timeout="30" />
  </system.web>
</configuration>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
HttpSessionState クラス
HttpSessionState メンバ
System.Web.SessionState 名前空間
その他の技術情報
セッション状態の概要



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「HttpSessionState.IsCookieless プロパティ」の関連用語

HttpSessionState.IsCookieless プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



HttpSessionState.IsCookieless プロパティのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS