2012-09-11 4 views
4

asp.net.i에서 폼 인증을 사용하고 있습니다. 인증 쿠키 만료를 60 분으로 설정하고 web.config에서 세션 시간을 60 분으로 제한하고 web.config에서 60으로 제한합니다. 나는 무엇을 알 필요가 mins.but 사용자가 사용자가 60 후 로그인 페이지로 리디렉션해야 60 분 동안 유휴 상태 인 경우 내가 폼 인증을 사용하고 있기 때문에도에서 60 분인증 쿠키 asp.net

<authentication mode="Forms"> 
     <forms loginUrl="~/Account/Login.aspx" timeout="60" defaultUrl="~/Landing.aspx" slidingExpiration="true"/> 
    </authentication> 
    <system.web> 
     <sessionState timeout="60" mode="InProc"/> 
    FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
    2,        // Version number 
    txtUserName.Text.Trim(),  // Username 
    DateTime.Now,     // Issue date 
    DateTime.Now.AddMinutes(60), // Expiration date 
    false,       // Persistent? 
    userData     // User data 
    ); 

밖으로 유휴 시간을 IIS 및 분 사용자가 60 분 동안 유휴 상태가 아닌 경우 인증 쿠키가 만료됩니까? 사실 사용자가 여전히 인증 되더라도?

편집

은 내가

답변

0

더 나은 당신이 아래의 링크를 읽고 내가 네트워크 서비스에 IIS에서 응용 프로그램 풀 ID를 설정 한 가지 더 놓쳤다. 그것은 당신을 위해 더 빠를 것입니다. 둘러보기

만료 시간이 만료되기 전에 각 요청마다 만료가 새로 고쳐집니다.

Understanding the Forms Authentication Ticket and Cookieforms Element

2

예 사용자가 아직 만료되며, 그/그녀는 서버에서 사용 가능한 자원을 사용할 수있는 권한이되지 않습니다. FormsAuthentication Ticket의 간단한 컨테이너 인 Forms 인증 쿠키를 사용하고 있습니다.

티켓이 비 지속성이므로 "쿠키"가 만료되어 사용자를 로그인 페이지로 리디렉션합니다. 이것은 "인증"만 처리하고 Session과 혼동하지 않도록주의하십시오.

세션이 "만료"되었지만 사용자가 계속 인증되어 문제가 될 수 있습니다.

직접 질문에 대답하기 위해 "사용자 인증"이 만료되며 로그인 할 때 새 쿠키가 만들어 질 로그인 페이지로 리디렉션되고 다른 "세션"개체가 생성됩니다. 초과 근무는 만료됩니다.

조언 : "Web.config"의 Forms Timeout을 Session보다 작게 지정하십시오. 모든 인증/보안 관련 세션에 대한 의존성을 구축하지 마십시오. 두 개는 다른 용기이며 그와 같이 취급되어야합니다.