Поделиться через


HttpSessionState.SessionID Свойство

Определение

Возвращает уникальный идентификатор сеанса.

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

Значение свойства

Уникальный идентификатор сеанса.

Примеры

В следующем примере кода показан файл Web.config, который настраивает состояние сеанса для использования идентификаторов сеанса без файлов cookie. Дополнительные сведения см. в свойстве IsCookieless.

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

Комментарии

Свойство SessionID используется для уникальной идентификации браузера с данными сеанса на сервере. Это SessionID значение создается случайным образом ASP.NET и хранится в файле cookie сеанса без истечения срока действия в браузере. Затем SessionID значение отправляется в файл cookie с каждым запросом в приложение ASP.NET.

Если вы хотите отключить использование файлов cookie в приложении ASP.NET и по-прежнему использовать состояние сеанса, вы можете настроить приложение для хранения идентификатора сеанса в URL-адресе вместо файла cookie, задав cookieless атрибут элемента trueконфигурации sessionState или в UseUriфайл Web.config для приложения. Вы можете ASP.NET определить, поддерживаются ли файлы cookie браузером, указав значение UseDeviceProfile атрибута cookieless . Кроме того, можно ASP.NET определить, включены ли файлы cookie для браузера, указав значение атрибута AutoDetectcookieless . Если файлы cookie поддерживаются при UseDeviceProfile указании или включено при AutoDetect указании, идентификатор сеанса будет храниться в файле cookie; в противном случае идентификатор сеанса будет храниться в URL-адресе. Дополнительные сведения см. в свойстве IsCookieless.

Он SessionID отправляется между сервером и браузером в виде ясного текста либо в файле cookie, либо в URL-адресе. В результате нежелательный источник может получить доступ к сеансу другого пользователя, получив значение и включив SessionID его в запросы к серверу. Если вы храните частную или конфиденциальную информацию в состоянии сеанса, рекомендуется использовать SSL для шифрования любой связи между браузером и сервером, который включает в SessionIDсебя.

При использовании состояния сеанса на основе файлов cookie ASP.NET не выделяет хранилище данных сеанса до тех пор, пока Session объект не будет использован. В результате для каждого запроса страницы создается новый идентификатор сеанса, пока не будет получен доступ к объекту сеанса. Если приложению требуется статический идентификатор сеанса для всего сеанса, можно реализовать Session_Start метод в файле Global.asax приложения и хранить данные в Session объекте для исправления идентификатора сеанса или использовать код в другой части приложения для явного хранения данных в объекте Session .

Если приложение использует состояние сеанса без файлов cookie, идентификатор сеанса создается в первом представлении страницы и сохраняется для всего сеанса.

Применяется к

См. также раздел