HttpSessionState.SessionID HttpSessionState.SessionID HttpSessionState.SessionID HttpSessionState.SessionID Property

定義

セッションの一意の識別子を取得します。Gets the unique identifier for the session.

public:
 property System::String ^ SessionID { System::String ^ get(); };
public string SessionID { get; }
member this.SessionID : string
Public ReadOnly Property SessionID As String

プロパティ値

一意のセッション識別子。The unique session identifier.

次のコード例は、クッキーレスセッション識別子を使用するようにセッション状態を構成する web.config ファイルを示しています。The following code example shows a Web.config file that configures session state to use cookieless session identifiers. 詳細については、IsCookieless プロパティを参照してください。For more information, see the IsCookieless property.

<configuration>  
  <system.web>  
    <sessionState   
      cookieless="true"  
      regenerateExpiredSessionId="true"  
      timeout="30" />  
  </system.web>  
</configuration>  

注釈

SessionIDプロパティは、サーバー上のセッションデータを使用してブラウザーを一意に識別するために使用されます。The SessionID property is used to uniquely identify a browser with session data on the server. SessionID値は ASP.NET によってランダムに生成され、ブラウザーの有効期限が切れていないセッション cookie に格納されます。The SessionID value is randomly generated by ASP.NET and stored in a non-expiring session cookie in the browser. このSessionID値は、ASP.NET アプリケーションに対する各要求と共に cookie で送信されます。The SessionID value is then sent in a cookie with each request to the ASP.NET application.

ASP.NET アプリケーションで cookie の使用を無効にし、引き続きセッション状態を使用する場合は、 cookieless sessionState の属性を設定することにより、セッション識別子を cookie ではなく URL に格納するようにアプリケーションを構成できます。アプリケーションの web.config trueファイル内のUseUri、またはの構成要素。If you want to disable the use of cookies in your ASP.NET application and still make use of session state, you can configure your application to store the session identifier in the URL instead of a cookie by setting the cookieless attribute of the sessionState configuration element to true, or to UseUri, in the Web.config file for your application. ASP.NET を使用して、 UseDeviceProfile cookieless属性の値を指定することにより、ブラウザーで cookie がサポートされているかどうかを判断できます。You can have ASP.NET determine whether cookies are supported by the browser by specifying a value of UseDeviceProfile for the cookieless attribute. ASP.NET を使用して、 AutoDetect cookieless属性の値を指定することにより、ブラウザーで cookie が有効になっているかどうかを判断することもできます。You can also have ASP.NET determine whether cookies are enabled for the browser by specifying a value of AutoDetect for the cookieless attribute. を指定したときUseDeviceProfileに cookie がサポートされAutoDetectている場合、またはが指定されている場合は、セッション識別子が cookie に格納されます。それ以外の場合は、セッション識別子が URL に格納されます。If cookies are supported when UseDeviceProfile is specified, or enabled when AutoDetect is specified, then the session identifier will be stored in a cookie; otherwise the session identifier will be stored in the URL. 詳細については、IsCookieless プロパティを参照してください。For more information, see the IsCookieless property.

SessionID 、cookie または URL のいずれかで、サーバーとブラウザーの間でクリアテキストで送信されます。The SessionID is sent between the server and the browser in clear text, either in a cookie or in the URL. その結果、不要なソースは、 SessionID値を取得し、それをサーバーへの要求に含めることによって、別のユーザーのセッションにアクセスできる可能性があります。As a result, an unwanted source could gain access to the session of another user by obtaining the SessionID value and including it in requests to the server. プライベートまたは機密情報をセッション状態に保存する場合は、SSL を使用して、 SessionIDを含むブラウザーとサーバー間の通信を暗号化することをお勧めします。If you are storing private or sensitive information in session state, it is recommended that you use SSL to encrypt any communication between the browser and server that includes the SessionID.

Cookie ベースのセッション状態を使用する場合、ASP.NET では、 Sessionオブジェクトが使用されるまで、セッションデータのストレージは割り当てられません。When using cookie-based session state, ASP.NET does not allocate storage for session data until the Session object is used. その結果、セッションオブジェクトがアクセスされるまで、ページ要求ごとに新しいセッション ID が生成されます。As a result, a new session ID is generated for each page request until the session object is accessed. アプリケーションでセッション全体に静的セッション id が必要な場合は、アプリケーションの global.asax ファイルSession_Startにメソッドを実装し、 Sessionオブジェクトにデータを格納してセッション id を修正するか、の別の部分でコードを使用することができます。Sessionオブジェクトにデータを明示的に格納するアプリケーション。If your application requires a static session ID for the entire session, you can either implement the Session_Start method in the application's Global.asax file and store data in the Session object to fix the session ID, or you can use code in another part of your application to explicitly store data in the Session object.

アプリケーションが cookie なしのセッション状態を使用する場合、セッション ID は最初のページビューに生成され、セッション全体で保持されます。If your application uses cookieless session state, the session ID is generated on the first page view and is maintained for the entire session.

適用対象

こちらもご覧ください