Я довольно новичок в ASP.NET MVC, и я пытаюсь создать веб-сайт, на котором используются встроенные методы авторизации MVC 5.Индивидуальная авторизация страницы на основе ролей в ASP.NET MVC 5
Вот что я сделал до сих пор:
- Создано число пользователей в таблице AspNetUsers.
- Создал ряд ролей в таблице AspNetRoles.
- Назначение ролей пользователям через таблицу AspNetUserRoles путем подключения RoleID и UserID.
Теперь, чтобы создать одну страницу, чтобы показывать только определенный контент для пользователей с админ-роли, и скрыть это иначе, я сделал это:
@if(User.IsInRole("Admin"))
{
<p>You are logged in as an admin.</p>
} else
{
<p>You are not logged in as an admin.</p>
};
Допустимо ли это сделать , или это плохо? Я играл с ним довольно долгое время, и он работает, как и ожидалось (насколько я могу судить).
Я знаю, что могу создавать атрибуты CustomAuthorizationAttributes и назначать их ActionMethods в контроллере, но я не на 100% удобен с синтаксисом на этом.
Кажется, что. Будет очень ограниченным, и если вы сделаете это в нескольких местах, у вас будет высокое обслуживание кода. Подумайте о создании постоянной коллекции для имен ролей, чтобы вы могли, по крайней мере, переименовать их или легко изменить их в будущем, если понадобится :) –