Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

ASP.NET 지원 음성 열

소개

Microsoft ASP.NET 지원 음성 열에 오신 것을 환영합니다! 저는 ASP.NET 개발자 지원 팀과 함께 Nilay B. Shah입니다. 저는 1년 반 이상 ASP.NET 지원과 함께 일해 왔습니다. 양식 인증은 정말 멋진 인증 기능입니다. 이 문서에서는 양식 인증 티켓의 관계, 양식 인증 쿠키 및 관련 설정과 같이 사용자가 양식 인증과 혼동하는 몇 가지 문제를 다룹니다. ASP.NET 지원 팀의 기술 리더인 제리 오먼(Jerry Orman)에게 놀라운 도움을 주신 것에 대해 감사드립니다!

사람 양식 인증 "티켓"과 "쿠키"가 밀접하게 관련되어 있기 때문에 때때로 궁금해합니다. 쿠키 만료와 티켓 만료의 차이점을 설명해 주시겠습니까? 쿠키가 만료되면 사용자는 로그온 페이지로 리디렉션됩니다. 티켓이 만료되면 어떻게 되나요? 쿠키가 만료되나요? SlidingUpdate는 실제로 무엇을 업데이트하나요?

다음 질문에 답하기 위해 이 문서에서 양식 인증의 두 가지 측면에 집중하겠습니다.

  • 양식 인증 티켓 및 양식 인증 쿠키란? 그들은 어떻게 관련되어 있습니까?

  • 양식 인증에서 티켓의 역할은 무엇인가요?

  • 쿠키 만료 및 티켓 만료는 어떻게 관련되어 있나요?

  • 양식 인증 티켓 및 양식 인증 쿠키의 컨텍스트에서 슬라이딩 만료는 어떻게 작동하나요?

  • 양식 인증 쿠키 및 양식 인증 티켓의 제한 시간 속성은 어디에서 설정할 수 있나요?

  • 문제 시나리오: 양식 인증은 구성 파일에 설정된 시간 제한 특성 값 이전에 제한 시간이 초과할 수 있습니다.

양식 인증 티켓 및 양식 인증 쿠키란? 그들은 어떻게 관련되어 있습니까?

양식 인증 쿠키는 양식 인증 티켓에 대한 컨테이너에 지나지 않습니다. 티켓은 각 요청과 함께 양식 인증 쿠키의 값으로 전달되며 인증된 사용자를 식별하기 위해 서버의 양식 인증에서 사용됩니다.

그러나 쿠키 없는 양식 인증을 사용하도록 선택하면 티켓이 암호화된 형식으로 URL로 전달됩니다. 때때로 클라이언트 브라우저가 쿠키를 차단하기 때문에 쿠키 없는 양식 인증이 사용됩니다. 이 기능은 Microsoft .NET Framework 2.0에 도입되었습니다.

자세한 내용은 다음 MSDN(Microsoft Developer Network) 웹 사이트를 참조하세요.

http://msdn2.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.cookieless.aspx

양식 인증에서 티켓의 역할은 무엇인가요?

양식 인증 티켓은 ASP.NET 애플리케이션에 사용자가 누구인지 알려주는 데 사용됩니다. 따라서 티켓은 Forms 인증 보안의 구성 요소입니다.

티켓은 서버 Machine.config 파일의 <machineKey> 구성 요소를 사용하여 암호화되고 서명됩니다. ASP.NET 2.0은 <machineKey> 요소의 decryptionKey 및 새 암호 해독 특성을 사용하여 양식 인증 티켓을 암호화합니다. 암호 해독 특성을 사용하면 사용할 암호화 알고리즘을 지정할 수 있습니다. ASP.NET 1.1 및 1.0은 구성할 수 없는 3DES 암호화를 사용합니다. 티켓 값 변조는 서버에서 티켓의 암호를 해독하지 못하여 결정됩니다. 결과적으로 사용자는 로그온 페이지로 리디렉션됩니다.


애플리케이션이 웹 팜에 배포된 경우 각 서버의 구성 파일이 각각 티켓의 해시 및 암호 해독에 사용되는 <machineKey> 태그의 validationKey 및 decryptionKey 특성에 대해 동일한 값을 공유해야 합니다. 연속 요청을 처리할 서버를 보장할 수 없으므로 이 작업을 수행해야 합니다. FormsAuthenticationTicket 암호화 및 웹 팜 배포 고려 사항에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

http://msdn2.microsoft.com/en-us/library/ms998288.aspx

FormsAuthenticationTicket 클래스를 사용하여 양식 인증 티켓을 수동으로 생성할 수 있습니다. 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket.aspx

쿠키 만료 및 티켓 만료는 어떻게 관련되어 있나요?

비영구 쿠키의 경우 티켓이 만료되면 쿠키도 만료되고 사용자가 로그온 페이지로 리디렉션됩니다. 다른 쪽에서는 티켓이 영구로 표시되고 쿠키가 클라이언트 상자에 저장되는 경우 브라우저는 언제든지 동일한 인증 쿠키를 사용하여 웹 사이트에 로그온할 수 있습니다. 그러나 FormsAuthentication.SignOut 메서드를 사용하여 영구 쿠키 또는 비영구 쿠키를 명시적으로 삭제할 수 있습니다.

FormsAuthentication.SignOut 메서드에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthentication.signout.aspx쿠키 없는 양식 인증을 사용하면 브라우저가 닫혀 있으면 티켓이 손실되고 다음 요청에 따라 새 티켓이 생성됩니다.

양식 인증 티켓 및 양식 인증 쿠키의 컨텍스트에서 슬라이딩 만료는 어떻게 작동하나요?

슬라이딩 만료는 정확히 동일한 방식으로 작동합니다!

예를 들어 로그온 페이지가 오후 5:00 00:00:00에 액세스하는 경우 시간 제한 특성이 10이고 slidingExpiration 특성이 TRUE로 설정된 경우 오후 5:10 00:00:00에 만료됩니다. 이제 오후 5:05 00:00:00에 웹 페이지를 다시 검색하면 쿠키 및 티켓 제한 시간이 오후 5:15 00:00:00으로 다시 설정됩니다.

참고 만료 시간의 절반이 지나기 전에 웹 페이지에 액세스하면 티켓 만료 시간이 다시 설정되지 않습니다. 예를 들어 오후 5:04 00:00:00에 웹 페이지에 다시 액세스하는 경우 쿠키 및 티켓 제한 시간이 다시 설정되지 않습니다.

자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

http://msdn2.microsoft.com/en-us/library/1d3t3c61(vs.71).aspx

양식 인증 쿠키 및 양식 인증 티켓의 제한 시간 값은 어디에서 설정할 수 있나요?

만들 수 있는 유일한 설정은 Web.config 파일 또는 Machine.config 파일의 <양식> 태그에 있습니다. 이 변경은 티켓이 수동으로 생성되지 않는 한 티켓 또는 쿠키의 컨텍스트에서 양식 인증의 시간 제한 기간을 결정합니다.


<!-- forms 특성:
name="[cookie name]" - Forms 인증에 사용되는 쿠키의 이름을 설정합니다.
loginUrl="[url]" - 인증을 위해 클라이언트를 리디렉션할 URL을 설정합니다.
protection="[All|없음|암호화|유효성 검사]" - 쿠키의 데이터에 대한 보호 모드를 설정합니다.
timeout="[minutes]" - 쿠키가 유효한 기간을 설정합니다(각 요청에서 다시 설정).
path="/" - 쿠키의 경로를 설정합니다.
requireSSL="[true|false]" - 양식 인증 쿠키는 SSL을 통해서만 보내야 하나요?
slidingExpiration="[true|false]" - 양식 인증 쿠키 및 티켓이 만료될 경우 재발행해야 하나요?
--> 자세한 내용은 다음 MSDN 웹 사이트를 방문하세요.

http://msdn2.microsoft.com/en-us/library/1d3t3c61.aspxFormsAuthenticationTicket 클래스를 사용하여 티켓을 수동으로 생성하는 경우 Expiration 특성을 통해 시간 초과를 설정할 수 있습니다. 이 값은 구성 파일에 지정된 시간 제한 특성 값을 재정의합니다.

FormsAuthenticationTicket 멤버에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket_members.aspx

문제 시나리오: 양식 인증은 구성 파일에 설정된 시간 제한 특성 값 이전에 제한 시간이 초과할 수 있습니다.

양식 인증 티켓이 수동으로 생성되면 티켓의 제한 시간 속성이 구성 파일에 설정된 값을 재정의합니다. 따라서 해당 값이 구성 파일의 값보다 작은 경우 양식 인증 티켓은 구성 파일 제한 시간 특성 값 이전에 만료되고 그 반대의 경우도 마찬가지입니다. 예를 들어 시간 제한 특성에><양식이 Web.config 파일에서 30으로 설정되고 티켓의 만료 값이 20분으로 설정된다고 가정해 보겠습니다. 이 경우 양식 인증 티켓은 20분 후에 만료되며 사용자는 그 후에 다시 로그온해야 합니다.

관련 링크

910439 양식 인증 문제 해결
 

301240 C# .NET을 사용하여 ASP.NET 애플리케이션에서 양식 기반 인증을 구현하는 방법
 

이 정보가 ASP.NET 양식 인증 티켓 및 쿠키와 관련된 혼란을 완화하는 데 도움이 되기를 바랍니다. 지원 음성 열은 사용자에게 적합합니다.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×