HttpSessionState.SessionID 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
세션의 고유 식별자를 가져옵니다.
public:
property System::String ^ SessionID { System::String ^ get(); };
public string SessionID { get; }
member this.SessionID : string
Public ReadOnly Property SessionID As String
속성 값
고유한 세션 식별자입니다.
예제
다음 코드 예제에서는 쿠키 없는 세션 식별자를 사용 하도록 세션 상태를 구성 하는 Web.config 파일을 보여 줍니다. 자세한 내용은 IsCookieless 속성을 참조하세요.
<configuration>
<system.web>
<sessionState
cookieless="true"
regenerateExpiredSessionId="true"
timeout="30" />
</system.web>
</configuration>
설명
이 SessionID 속성은 서버에서 세션 데이터가 있는 브라우저를 고유하게 식별하는 데 사용됩니다. 값은 SessionID ASP.NET 의해 임의로 생성되고 브라우저의 만료되지 않는 세션 쿠키에 저장됩니다. SessionID 그런 다음 각 요청이 있는 쿠키에서 값이 ASP.NET 애플리케이션으로 전송됩니다.
ASP.NET 애플리케이션에서 쿠키 사용을 사용하지 않도록 설정하고 세션 상태를 계속 사용하려는 경우 sessionState 구성 요소true의 특성을 애플리케이션의 Web.config 파일에 설정하여 cookieless 쿠키 대신 URL에 세션 식별자를 저장하도록 UseUri애플리케이션을 구성할 수 있습니다. ASP.NET 특성 값을 UseDeviceProfilecookieless 지정하여 브라우저에서 쿠키를 지원하는지 여부를 확인할 수 있습니다. 특성 값을 AutoDetectcookieless 지정하여 브라우저에 쿠키를 사용할 수 있는지 여부를 ASP.NET 확인할 수도 있습니다. 쿠키가 지정된 경우 UseDeviceProfile 지원되거나 지정된 경우 AutoDetect 사용하도록 설정되면 세션 식별자가 쿠키에 저장되고, 그렇지 않으면 세션 식별자가 URL에 저장됩니다. 자세한 내용은 IsCookieless 속성을 참조하세요.
SessionID 서버와 브라우저 간에 쿠키 또는 URL에서 명확한 텍스트로 전송됩니다. 따라서 원치 않는 원본은 값을 가져와 SessionID 서 서버에 대한 요청에 포함하여 다른 사용자의 세션에 액세스할 수 있습니다. 세션 상태에 개인 또는 중요한 정보를 저장하는 경우 SSL을 사용하여 브라우저와 서버를 포함하는 SessionID모든 통신을 암호화하는 것이 좋습니다.
쿠키 기반 세션 상태를 사용하는 경우 ASP.NET 개체가 사용될 때까지 세션 데이터에 대한 스토리지를 Session 할당하지 않습니다. 따라서 세션 개체에 액세스할 때까지 각 페이지 요청에 대해 새 세션 ID가 생성됩니다. 애플리케이션에 전체 세션에 대한 정적 세션 ID가 필요한 경우 애플리케이션의 Global.asax 파일에서 메서드를 구현 Session_Start 하고 개체에 Session 데이터를 저장하여 세션 ID를 수정하거나 애플리케이션의 다른 부분에 있는 코드를 사용하여 개체에 Session 데이터를 명시적으로 저장할 수 있습니다.
애플리케이션에서 쿠키 없는 세션 상태를 사용하는 경우 세션 ID는 첫 번째 페이지 보기에서 생성되고 전체 세션에 대해 유지 관리됩니다.