HttpSessionState.SessionID Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri a munkamenet egyedi azonosítót.
public:
property System::String ^ SessionID { System::String ^ get(); };
public string SessionID { get; }
member this.SessionID : string
Public ReadOnly Property SessionID As String
Tulajdonság értéke
Az egyedi munkamenet-azonosító.
Példák
Az alábbi példakód egy Web.config fájlt mutat be, amely a munkamenet-állapotot cookie nélküli munkamenet-azonosítók használatára konfigurálja. További információért lásd a IsCookieless tulajdonságot.
<configuration>
<system.web>
<sessionState
cookieless="true"
regenerateExpiredSessionId="true"
timeout="30" />
</system.web>
</configuration>
Megjegyzések
A SessionID tulajdonság segítségével egyedileg azonosíthatja a böngészőt a kiszolgáló munkamenetadataival. A SessionID értéket véletlenszerűen generálja ASP.NET, és egy nem lejáró munkamenet cookie-ban tárolja a böngészőben. A SessionID értéket ezután a rendszer egy cookie-ban küldi el az egyes kérésekkel a ASP.NET alkalmazásnak.
Ha le szeretné tiltani a cookie-k használatát az ASP.NET alkalmazásban, és továbbra is használni szeretné a munkamenet-állapotot, úgy konfigurálhatja az alkalmazást, hogy cookie helyett az URL-ben tárolja a munkamenet-azonosítót a cookieless konfigurációs elemének true attribútumának beállításával, vagy UseUri, az alkalmazás Web.config fájljában. ASP.NET meghatározhatja, hogy a böngésző támogatja-e a cookie-kat a UseDeviceProfile attribútum cookieless értékének megadásával. A AutoDetect attribútum cookieless értékének megadásával ASP.NET is meghatározhatja, hogy a cookie-k engedélyezve vannak-e a böngészőben. Ha a cookie-k megadásakor UseDeviceProfile támogatottak, vagy AutoDetect ha meg van adva, akkor a munkamenet-azonosító egy cookie-ban lesz tárolva, ellenkező esetben a munkamenet-azonosító az URL-címben lesz tárolva. További információért lásd a IsCookieless tulajdonságot.
A SessionID rendszer a kiszolgáló és a böngésző között világos szövegben, egy cookie-ban vagy az URL-címben küldi el. Ennek eredményeképpen egy nemkívánatos forrás hozzáférést kaphat egy másik felhasználó munkamenetéhez az SessionID érték beolvasásával és a kiszolgálóhoz irányuló kérésekbe való beleszámításával. Ha privát vagy bizalmas adatokat tárol munkamenet-állapotban, javasoljuk, hogy SSL használatával titkosítsa a böngésző és a kiszolgáló közötti kommunikációt, amely tartalmazza a SessionID.
Cookie-alapú munkamenet-állapot használatakor ASP.NET nem foglal le tárolót a munkamenet-adatokhoz, amíg a Session objektumot nem használja. Ennek eredményeképpen a rendszer minden oldalkéréshez új munkamenet-azonosítót hoz létre, amíg a munkamenet-objektum hozzá nem fér. Ha az alkalmazás a teljes munkamenethez statikus munkamenet-azonosítót igényel, implementálhatja a Session_Start metódust az alkalmazás Global.asax fájljában, és adatokat tárolhat az Session objektumban a munkamenet-azonosító javításához, vagy az alkalmazás egy másik részén található kód használatával explicit módon tárolhatja az adatokat az Session objektumban.
Ha az alkalmazás cookie nélküli munkamenet-állapotot használ, a munkamenet-azonosító az első oldalnézeten jön létre, és a teljes munkamenethez megmarad.