HttpSessionState.SessionID Vlastnost

Definice

Získá jedinečný identifikátor relace.

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

Hodnota vlastnosti

String

Jedinečný identifikátor relace.

Příklady

Následující příklad kódu ukazuje soubor Web.config, který konfiguruje stav relace tak, aby používal identifikátory relace bez souborů cookie. Další informace najdete v IsCookieless této vlastnosti.

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

Poznámky

Vlastnost SessionID slouží k jedinečné identifikaci prohlížeče s daty relace na serveru. Hodnota SessionID je náhodně generována ASP.NET a uložena v souboru cookie relace, který nevypršela platností v prohlížeči. Hodnota SessionID se pak odešle do souboru cookie s každou žádostí do ASP.NET aplikace.

Pokud chcete zakázat používání souborů cookie v aplikaci ASP.NET a přesto používat stav relace, můžete aplikaci nakonfigurovat tak, aby místo souboru cookie uložila identifikátor relace do adresy URL, a to nastavením cookieless atributu elementu konfigurace sessionState na truehodnotu , nebo na UseUri, v Web.config souboru pro vaši aplikaci. Můžete mít ASP.NET určit, jestli jsou soubory cookie podporovány prohlížečem zadáním hodnoty UseDeviceProfile atributucookieless. Můžete také ASP.NET určit, jestli jsou pro prohlížeč povoleny soubory cookie zadáním hodnoty AutoDetect atributucookieless. Pokud jsou soubory cookie podporovány, pokud UseDeviceProfile jsou zadány nebo povoleny při AutoDetect zadání, pak se identifikátor relace uloží do souboru cookie. Jinak bude identifikátor relace uložen v adrese URL. Další informace najdete v IsCookieless této vlastnosti.

Odesílá SessionID se mezi serverem a prohlížečem ve formátu prostého textu, a to buď v souboru cookie, nebo v adrese URL. V důsledku toho by nežádoucí zdroj mohl získat přístup k relaci jiného uživatele získáním SessionID hodnoty a zahrnutím do požadavků na server. Pokud ukládáte soukromé nebo citlivé informace do stavu relace, doporučujeme použít ssl k šifrování veškeré komunikace mezi prohlížečem a serverem, který obsahuje SessionID.

Při použití stavu relace založeného na souborech cookie ASP.NET nepřiděluje úložiště pro data relace, dokud se Session objekt nepoužívá. V důsledku toho se pro každý požadavek na stránku vygeneruje nové ID relace, dokud se k objektu relace nebude přistupovat. Pokud vaše aplikace vyžaduje ID statické relace pro celou relaci, můžete buď implementovat metodu Session_Start v souboru Global.asax aplikace a uložit data do objektu Session k opravě ID relace, nebo můžete použít kód v jiné části aplikace k explicitní ukládání dat do objektu Session .

Pokud vaše aplikace používá stav relace bez souborů cookie, ID relace se vygeneruje v prvním zobrazení stránky a udržuje se pro celou relaci.

Platí pro

Viz také