2012-10-09 7 views
1

ASP.Net MVC를 사용하고 있는데 특정 파일에 대한 액세스를 어떻게 제한 할 수 있는지 궁금합니다. 나는 [Authorize] 사용에 관해 읽었지 만 그것은 컨트롤러와 액션에 적용됩니다. 나는 web.config 내에서 사용하려고하지만 MVC가 다중을 볼 때 혼동을 야기한다는 것을 극히 권고하지 않습니다.MVC에서 특정 파일에 대한 액세스를 제한하는 방법

내 파일은 응용 프로그램의 기본 내에 있습니다 (예 :)./MyApp/MyFile. 사용자가 파일을 탐색 할 때 수행하고 싶은 작업입니다. 사용자가 볼 것입니다, 만약 내가 틀렸다면, HTTP 401 오류 또는 뭔가를 수정하십시오.

+0

파일로 바로 이동 하시겠습니까? 아니면 컨트롤러 동작을 통해 이동 하시겠습니까? – James

+0

늦게 언급 한 것에 대해 죄송합니다. 바로 파일로 이동하십시오. – gibz357

답변

1

이렇게하려면 App_Data 아래의 폴더에있는 파일을 붙여 직접 액세스하지 못하게하고 파일에 대한 액세스를 처리 할 컨트롤러를 만들어야합니다.

routes.MapRoute("", "Files/{file}", new { controller = "File", action = "View" }); 

을 한 후 권한 부여는 행동 특성 및

return File(...); 

실제로 사용자에게 파일을 반환하는 데 사용 적용 : 첫 번째 경로를 만듭니다.

관련 문제