Динамическое пользовательское разрешение для защиты папок в MVC3 - PullRequest
2 голосов
/ 26 апреля 2011

Использование MVC3 Я пытаюсь найти способ проверки базы данных, чтобы узнать, разрешен ли пользователю доступ к папке. Администратор имеет индивидуальный контроль над разрешениями каждого пользователя на курсы, поэтому я не могу контролировать это из web.config.

На приведенном ниже снимке экрана представлен пример того, что я пытаюсь выполнить: courseA - пример одной из многих папок, доступ к которым разрешен только определенным пользователям. Я думаю, что я мог бы использовать действие CourseController, например OpenCourse(int id), чтобы проверить базу данных, есть ли у пользователя доступ к курсу, и если да, то "разрешить доступ" ко всей папке курса и открыть player.html. файл, содержащийся в нем. Разрешение пользователя на каждый файл в папке courseA , вероятно, должно сохраняться для сеанса пользователя.

enter image description here

Возможно ли сделать что-то подобное из папки MVC View, или папка courseA может находиться где-то еще?

1 Ответ

1 голос
/ 18 мая 2011

Вы можете применять такие ограничения в вызовах базы данных. Вы могли бы сказать, например:

var courses =  ListCoursesForUser(userId);

Тогда при доступе к определенному курсу вы можете использовать это:

public doSomethingWithCourse(courseId, userId)
{
   var courses =  ListCoursesForUser(userId);

   if(courses.Any(c => c.courseId == courseId))
   {

   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...