중간 신뢰 환경에서 현재 FormsauthenticationModule에 어떻게 연결할 수 있습니까?
-
08-07-2019 - |
문제
내 응용 프로그램에 httpmodule이 있습니다.
public void Init(HttpApplication context)
{
FormsAuthenticationModule faModule =
(FormsAuthenticationModule)context.Modules["FormsAuthentication"];
faModule.Authenticate +=
new FormsAuthenticationEventHandler(faModule_Authenticate);
}
불행히도, 컨텍스트로의 호출은 앱이 중간 트러스트 환경에서 실행되어야하기 때문에 실패합니다. 이 행사에 연결할 수있는 또 다른 방법이 있습니까?
해결책
그것은 힘든 일입니다. 글로벌 애플리케이션 파일 내에서 모듈 컬렉션에 액세스 할 수 없습니다.
Global의 AuthenticateRequest 핸들러에서 사용자 정의 코드를 호출 할 수 있습니다.
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
// Call your module's code here..
}
컬렉션에서 사용자 정의 모듈을 잡을 수 없으므로 모듈 라이브러리에 대한 정적 참조가 필요합니다.
aspnethostingpermission을 부여하는 것 외에 (다른 권한에 대해 자세히 설명 하듯이) Machine Level Web.config의 귀하의 사이트에 아이디어가 없습니다!
제휴하지 않습니다 StackOverflow