DetailPage-MSS-KB

기술 자료

기술 자료: 910443 - 마지막 검토: 2013년 9월 25일 수요일 - 수정: 2.0

 
ASP.NET 지원 음성 열

이 열을 필요에 맞게 다루었으면 보려고 하는 문제와 관심 있는 항목에 대 한 아이디어를 향후 기술 자료 문서 및 Support Voice 칼럼을 초대 하려고 합니다. 아이디어와 의견을 사용 하 여 전송할 수 있는 요청 (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) 양식입니다. 이 칼럼의 맨 아래에 폼에 대 한 링크가 있습니다.

이 페이지에서

소개

Microsoft ASP.NET Support Voice 칼럼을 시작 합니다. Nilay B. 샤 난 ASP.NET 개발자 지원 팀. 내가 한 반 년 이상에 대 한 ASP.NET 지원 작업. 폼 인증 정말 멋진 인증 기능입니다. 이 문서에서는 사용자가 폼 인증을 폼 인증 티켓이 및 폼 인증 쿠키 및 관련 설정을 관계 혼란 찾은 몇 가지 문제를 다룹니다. ASP.NET 지원 팀에 대 한 그의 놀라운 도움말에 대 한 기술 리더, Jerry Orman 감사 하겠습니다!

때로는 사람들이 밀접 하 게 관련 된 티켓"폼 인증" 및 "쿠키"에 대 한 궁금해. 이러한 질문을 통해 왔 나: 쿠키 만료 및 티켓 만료 차이 설명할 사람이 수 있습니까? 쿠키가 만료 되 면 사용자는 로그온 페이지로 리디렉션됩니다. 티켓이 만료 되 면 어떻게 됩니까? 또한 만료 되는 쿠키를 만들 것이? 어떤은 SlidingUpdate 실제로 업데이트 하 시겠습니까?

이 문서의 다음 질문에 대답 하려면 폼 인증의 두 가지 측면 중점적:
  • 인증 하 고 formsauthentication 티켓 쿠키 형성 이란? 어떻게 관련 되어 있습니다.
  • FormsAuthentication 티켓의 역할은 무엇입니까?
  • 쿠키 만료 및 티켓 expirationrelated은 무엇입니까?
  • Formsauthentication 티켓의 컨텍스트에서 상대 (sliding) 만료 작동 방법과 폼 인증 쿠키?
  • Authenticationcookie 폼 및 폼 인증 티켓 시간 제한 속성 설정 위치
  • 문제 시나리오: 폼 인증의 configurationfile에 설정 된 제한 시간 특성 값 outbefore 시간 수

폼 인증 티켓 및 폼 인증 쿠키는 무엇입니까? Arethey 관계?

폼 인증 쿠키는 폼 인증 티켓의 컨테이너에만 있습니다. 티켓 각 요청에 폼 인증 쿠키 값으로 전달 되 고 서버에서 폼 인증을 통해 인증된 된 사용자를 식별 하기 위해 사용 됩니다.

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

자세한 내용은 다음 Microsoft Developer Network (MSDN) 웹 사이트를 방문 하십시오.
http://msdn2.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.cookieless.aspx (http://msdn2.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.cookieless.aspx)

인증을 알리고 티켓의 역할은 무엇입니까?

폼 인증 티켓은 ASP.NET 응용 프로그램에서 사용자에 사용 됩니다. 따라서 티켓 폼 인증 보안 빌딩 블록입니다.

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

각 서버의 구성 파일에 있는 validationKeydecryptionKey 특성에 대해 같은 값을 공유 하는 있는지 확인 해야 응용 프로그램을 웹 팜에 배포 하는 경우는 <machineKey></machineKey> 각각 해시 및 티켓의 암호 해독에 사용 되는 태그입니다. 후속 요청을 처리할 서버를 보장할 수 없습니다 때문에 이렇게 해야 합니다. FormsAuthenticationTicket 암호화 및 웹 팜 배포 고려 사항에 대 한 자세한 내용은 다음 MSDN 웹 사이트를 방문 하십시오.
http://msdn2.microsoft.com/en-us/library/ms998288.aspx (http://msdn2.microsoft.com/en-us/library/ms998288.aspx)
수동으로 키를 생성 하는 방법을 단계별로 다음 Microsoft 기술 자료 문서에서 찾을 수 있습니다.
312906  (http://support.microsoft.com/kb/312906/ ) 폼 인증에 사용 하기 위해 VISUAL C#를 사용 하 여 키를 생성 하는 방법
313091  (http://support.microsoft.com/kb/313091/ ) 폼 인증에 사용 하기 위해 Visual Basic.NET을 사용 하 여 키를 생성 하는 방법
폼 인증 티켓 FormsAuthenticationTicket 클래스를 사용 하 여 수동으로 생성할 수 있습니다. 자세한 내용은 다음 MSDN 웹 사이트를 방문 하십시오.
http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket.aspx (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 (http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthentication.signout.aspx)
쿠키 없는 폼 인증을 사용 하 여 브라우저를 닫은 경우 티켓이 손실 되 고 요청 시 새 티켓이 생성 됩니다.

컨텍스트 offorms 인증 티켓에 슬라이딩 만료 작업을 수행 하 고 폼 인증 쿠키가 어떻게?

요소가 동일한 방식으로 작동!

하자 예로: 5:00 로그온 페이지에 액세스 하는 경우 오후 00시: 00, 만료 5:10:00: 00 오후 경우 timeout 특성 10 slidingExpiration 특성이 TRUE로 설정 되어 있습니다. 이제 웹 페이지를 다시 5시 05분에 찾아볼 오후 00시: 00, 5:15 쿠키 및 티켓 시간 제한 기간을 재설정 됩니다 오후 00시: 00입니다.

참고 만료 시간 패스 절반을 전에 웹 페이지에 액세스 하면 티켓 만료 시간이 다시 설정 되지 않습니다. 5시 04분에 다시 액세스 하는 웹 페이지 전경 들어 오후 00시: 00, 쿠키 및 티켓 시간 초과 기간이 다시 설정할 수 없습니다.

자세한 내용은 다음 MSDN 웹 사이트를 방문 하십시오.
http://msdn2.microsoft.com/en-us/library/1d3t3c61 (vs.71).aspx (http://msdn2.microsoft.com/en-us/library/1d3t3c61(vs.71).aspx)

폼 인증 cookieand 폼 인증 티켓 시간 제한 값 설정 위치

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

<!--
forms Attributes: 
name="[cookie name]" - Sets the name of the cookie used for Forms Authentication.
loginUrl="[url]" - Sets the URL to redirect client to for authentication.
protection="[All|None|Encryption|Validation]" - Sets the protection mode for data in cookie.
timeout="[minutes]" - Sets the duration of time for cookie to be valid (reset on each request).
path="/" - Sets the path for the cookie.
requireSSL="[true|false]" - Should the forms authentication cookie be sent only over SSL?
slidingExpiration="[true|false]" - Should the forms authentication cookie and ticket be reissued if they are about to expire?
-->
자세한 내용은 다음 MSDN 웹 사이트를 방문 하십시오.
http://msdn2.microsoft.com/en-us/library/1d3t3c61.aspx (http://msdn2.microsoft.com/en-us/library/1d3t3c61.aspx)
티켓 FormsAuthenticationTicket 클래스를 사용 하 여 수동으로 생성 되는 경우 제한 시간 만료 속성을 통해 설정할 수 있습니다. 이 값은 구성 파일에 지정 된 제한 시간 특성 값 보다 우선 합니다.

FormsAuthenticationTicket 멤버에 대 한 자세한 내용은 다음 MSDN 웹 사이트를 방문 하십시오.
http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket_members.aspx (http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket_members.aspx)

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

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

관련된 링크

910439  (http://support.microsoft.com/kb/910439/ ) 폼 인증 문제 해결
891032  (http://support.microsoft.com/kb/891032/ ) ASP.NET 문제 해결
301240  (http://support.microsoft.com/kb/301240/ ) C#.NET을 사용 하 여 ASP.NET 응용 프로그램에서 폼 기반 인증을 구현 하는 방법
308157  (http://support.microsoft.com/kb/308157/ ) Visual Basic.NET을 사용 하 여 ASP.NET 응용 프로그램에서 폼 기반 인증을 구현 하는 방법
이 내용은 일부 ASP.NET 폼 인증 티켓 및 쿠키와 관련 된 혼동을 부드럽게 하는 데 도움이 발견 바랍니다. 기억 Support Voice 칼럼은! 항상 원하는 주제에 대 한 의견을 자유롭게 배달 나중에 열 또는 사용 하 여 Microsoft 기술 자료에 있는 요청 (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) 양식입니다.

본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
키워드: 
kbhowto kbasp kbmt KB910443 KbMtko
기계 번역된 문서기계 번역된 문서
이 문서는 Microsoft 기계 번역 소프트웨어를 이용하여 번역되었으며 Microsoft Community에 의한 Community Translation Framework(CTF) 기술 혹은 사람이 번역한 내용에 의하여 사후 편집될 수 있습니다. Microsoft는 Knowledge Base에 있는 모든 문서에 다양한 언어로 접근할 수 있도록 하기 위하여 기계 번역, 사람에 의한 번역 및 커뮤니티가 편집한 내용을 모두 제공합니다. 번역된 문서는 어휘, 구문 및/혹은 문법에 오류가 있을 수 있습니다. Microsoft는 번역 오류로 인한 부정확성, 오류 및/또는 손해와 이를 고객이 사용하는 데에 대하여 책임을 지지 않습니다.
이 문서의 영문 버전 보기:910443  (http://support.microsoft.com/kb/910443/en-us/ )
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store
중소기업이 아닙니까?
소셜 채널로 문의하기