Защита файлов в среде MVC3 - PullRequest
       6

Защита файлов в среде MVC3

0 голосов
/ 19 января 2012

Итак, у меня есть приложение MVC3, которое использует FormsAuthentication. Когда пользователь входит в систему, он создает заявку и направляет их на свою панель управления.

На контроллерах я использую атрибут [Authorize], чтобы убедиться, что действия выполняются только авторизованным персоналом.

Однако существует часть сайта, на которой пользователю разрешено загружать файлы. Когда файлы загружаются, они переименовываются в случайную строку с правильным расширением (guid без черточек).

Как мне ограничить неаутентифицированных и неавторизованных пользователей в этом каталоге и просматривать эти файлы на основе FormsAuthentication, который я использую в среде MVC3?

1 Ответ

1 голос
/ 19 января 2012

Создайте файл Web.Config со следующими записями внутри папки, в которой находятся файлы.

<configuration>
  <system.web>
    <authorization>
      <deny users="*"/>
    </authorization>
  </system.web>
</configuration>

Это предотвратит прямой доступ к файлу в папке для всех пользователей. Проверенный интерфейс для доступа к файлам. Там вы можете проверить, к каким файлам пользователь может получить доступ и запретить доступ ко всем файлам.

Если вы хотите предоставить прямой доступ к папке для определенного набора авторизованных пользователей, вам нужно добавить их в роль и дать разрешение на эту роль.

<configuration>
  <system.web>
    <authorization>
      <allow roles="Admin" />
      <deny users="*" />
    </authorization>
  </system.web>
</configuration>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...