2012-06-19 2 views
3

이 새로운 HTTP 처리기를 제작하여 수행 할 수 있습니다에 의해 디렉토리에 대한 액세스를 제공하지만, 다음?ASP.NET은 사용자 이름

  1. 사이트를 구성하는 간단한 방법이 기준으로 설정이다 사용자 명은 A001, A002 ....라고 말합니다. 파일 및 이미지

내가 ASP.NET에서의 역할 및 권한 부여를 사용하여 있었 문제를 포함 할 수 있습니다 그들은 등 자신의 디렉토리 (/ A001)에서 자신의 리소스에 액세스 할 수있는 사용자가 로그인 한 번

  • ... 역할이 일반 (역할에 의해 정의 됨, 로그인 한 사용자 예를 들어 리소스에 액세스 할 수 있음) 또는 사용자 계정이 생성되는 동적 환경에서 명확하게 실현 될 수없는 web.config 파일에 하드 코딩 됨 :

    <authorization> 
    
    <allow users="John"/> // allow John only 
    <deny users="*"/> // deny others 
    
    </authorization> 
    

    특정 사용자 만 자신의 폴더에만 액세스 할 수있는 간단한 방법이 있습니까?

  • 답변

    1

    HTTP 모듈을 사용하면 충분히 간단 할 것입니다.

    • Application_BeginRequest :

      먼저이 요청 라이프 사이클이다.

    • Application_AuthenticateRequest.
    • Application_PostAuthenticateRequest.
    • Application_DefaultAuthentication.
    • Application_AuthorizeRequest.
    • Application_PostAuthorizeRequest.
    • Application_ResolveRequestCache.
    • Application_PostResolveRequestCache.
    • Application_MapRequestHandler. 서버가 IIS 7을 통합 모드로 실행하고 적어도> Net Framework 3.0을 실행하는 경우에만 발생합니다.
    • Application_PostMapRequestHandler.
    • Application_AcquireRequestState.
    • Application_PostAcquireRequestState.
    • Application_PreRequestHandlerExecute.
    • 페이지 이벤트 핸들러가 실행됩니다. (페이지 수명주기 참조)
    • Application_PostRequestHandlerExecute.
    • Application_ReleaseRequestState.
    • Application_PostReleaseRequestState
    • Application_UpdateRequestCache.
    • Application_PostUpdateRequestCache
    • Application_LogRequest. 서버가 IIS 7 통합 모드이고 적어도 .Net Framework 3.0 인 경우에만 발생합니다.
    • Application_PostLogRequest. 서버가 IIS 7 통합 모드이고 적어도 .Net Framework 3.0 인 경우에만 발생합니다.
    • Application_EndRequest.더 많은 정보를 들어

    : http://msdn.microsoft.com/en-us/library/system.web.httpapplication.aspx

    나는 당신의 요구에 맞는 최고의 이벤트가이 경로에 액세스하고 얻을 수 있습니다 여기에 Application_AuthorizeRequest

    생각하고, 당신은 지도을 가질 수 귀하 귀하의 용도와 허용 경로를 연결하는 데이터베이스 :

    UserID   Path 
    userID1  ~/UserFiles/User1 
    userID2  ~/UserFiles/User2 
    userID3  ~/UserFiles/User3 
    

    그런 다음이지도를 읽고 사용자의 승인 여부를 결정하십시오.