다음을 통해 공유


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 파일을 보여 줍니다. 자세한 내용은 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 특성에 대한 cookieless 값을 UseDeviceProfile 지정하여 브라우저에서 쿠키를 지원하는지 여부를 확인할 수 있습니다. 또한 특성에 대한 값을 AutoDetectcookieless 지정하여 브라우저에 쿠키를 사용할 수 있는지 여부를 ASP.NET 확인할 수도 있습니다. 가 지정될 때 UseDeviceProfile 쿠키가 지원되거나 AutoDetect 가 지정되면 세션 식별자가 쿠키에 저장되고, 그렇지 않으면 세션 식별자가 URL에 저장됩니다. 자세한 내용은 IsCookieless 속성을 참조하세요.

SessionID 쿠키 또는 URL에서 서버와 브라우저 간에 명확한 텍스트로 전송됩니다. 따라서 원치 않는 원본은 값을 가져와 SessionID 서 서버에 대한 요청에 포함하여 다른 사용자의 세션에 액세스할 수 있습니다. 세션 상태에 개인 정보 또는 중요한 정보를 저장하는 경우 SSL을 사용하여 를 포함하는 SessionID브라우저와 서버 간의 통신을 암호화하는 것이 좋습니다.

쿠기 기반 세션 상태를 사용하는 경우 ASP.NET은 Session 개체를 사용할 때까지 세션 데이터에 대해 스토리지를 할당하지 않습니다. 따라서 세션 개체에 액세스할 때까지 각 페이지 요청에 대해 새 세션 ID가 생성됩니다. 전체 세션에 대 한 정적 세션 ID를 필요로 하는 애플리케이션을 구현 하거나 수를 Session_Start 애플리케이션의 Global.asax 파일 및 저장소 데이터에 대 한 메서드는 Session 세션 ID를 해결 하려면 개체 또는 다른 부분에서 코드를 사용할 수 있습니다 명시적으로 데이터를 저장 하는 애플리케이션을 Session 개체입니다.

애플리케이션에서 쿠키 없는 세션 상태를 사용 하는 경우 세션 ID를 첫 번째 페이지 보기의 생성 되 고 전체 세션에 대 한 유지 관리 됩니다.

적용 대상

추가 정보