Я создаю приложение MVC с помощью форм auth. Я проверяю подлинность активного каталога и создал пользовательский RoleProvider. Мое приложение связано только с небольшим набором ролей, которые до сих пор я определял в разделе appSettings моего web.config:
<appSettings>
<add key="DirectorRole" value="Domain\Directors" />
<add key="ManagementRole" value="Domain\Managers" />
...
</appSettings>
Однако я столкнулся с несколькими проблемами с этим подходом:
- Я не могу ссылаться на эти настройки в аннотациях данных контоллера:
[Authorize(Roles = ConfigurationManager.AppSettings["DirectorRole"])]
, поскольку он не компилируется, поэтому я должен снова указать имя группы:[Authorize(Roles = "Domain\\Directors")]
. - В моем web.config я хотел бы указать groupsToUse для моего поставщика ролей и просто ссылаться на уже существующий список, а не поддерживать два отдельных списка одного и того же набора ролей.
Кажется, что должен быть лучший/многоразовый способ определения ролей в web.config, может кто-нибудь указать мне в правильном направлении?