MVC 3: список авторизованных пользователей динамически - PullRequest
2 голосов
/ 02 декабря 2011

Я использую аутентификацию Windows. Я ограничиваю доступ на контроллерах с помощью этого:

[Authorize(Users = @"MYDOMAIN\BillB, MYDOMAIN\MaryH, MYDOMAIN\BobN")]
public class MyController : Controller
{
  //stuff
}

Но я хочу получить этот список динамически из базы данных. Что-то вроде:

[Authorize(Users = MyListOfAuthorizedUsers)]

Я попытался просто составить список вручную, чтобы проверить концепцию:

List<string> MyListOfAuthorizedUsers = new List<string>()
    {
        "MYDOMAIN\BillB",
        "MYDOMAIN\\MaryH",
        "MYDOMAIN\\BobN"
    };

Конечно, не работает ... но есть ли такой способ?

1 Ответ

0 голосов
/ 02 декабря 2011

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

Эта ссылка показывает пример того, как это будет выглядеть. На полпути вниз - метод AuthorizeCore, который нужно переопределить.

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