0

내 어플리케이션에서 사용자는 데이터베이스에 저장된 로그인/암호 또는 디지털 인증을 사용하여 인증 할 수 있습니다.디지털 인증이없는 경우 모든 http 요청을 차단합니다.

로그인이 성공하면 쿠키가 생성되어 사용자와 연결됩니다.

FormsAuthentication.SetAuthCookie(model.UserName, false); 
return RedirectToAction("Index", "Home"); 

이 부분이 필요합니다. 사용자가 디지털 인증서로 로그인하는 경우 인증서에 여기에 이 있는지 확인하고 싶습니다. 그렇지 않으면 오류가 발생합니다.

인증서가 없으면 사용자가 아무 것도 할 수 없기 때문에 개념입니다.

그렇게하기가 어렵습니까?

답변

0

나는 이것에 간단한 해결책을 발견했다.

IIS에서는 사이트 고급 설정에서 연결 시간 제한을 설정할 수있는 방법이 있습니다. 연결이 끊어지기 전에 비활성 상태를 유지할 수있는 시간 (초)입니다.

작업 창에서 사이트 노드를 클릭하고 고급 설정을 클릭 한 다음 연결 제한에 +를 클릭하고 연결 시간 제한 (초)을 관련성이있는 시간으로 설정합니다.

1로 설정됩니다. 기본적으로 사용자가 작업을 호출 할 때마다 인증서를 확인합니다. 그곳에 있으면 응용 프로그램이 정상적으로 계속됩니다.

디지털 인증서가 필요하기 때문에 저에게 효과적입니다. 정상적인 로그인/암호 양식을 사용하는 사람들에게는 더 나은 방법을 찾아야하며 그렇지 않은 경우 사용자는 항상 로그인 페이지로 리디렉션됩니다.