Я создаю свой первый сайт в ASP.NET MVC, и я хотел бы знать, как я могу настроить права доступа или роли на основе определенного элемента для конкретного пользователя.Специфичные для конкретного объекта разрешения в ASP.NET MVC-сайте
На моем сайте есть проекты и пользователи, в которых каждый пользователь может быть членом одного или нескольких проектов. Каждому пользователю, являющемуся участником проекта, будет присвоено определенное количество ролей в отношении этого проекта. Но каждому пользователю могут быть назначены разные роли для каждого проекта, членом которого они являются.
В любом случае я могу воспользоваться встроенными ролями членства, чтобы сделать что-то вроде этого? Из того, что я вижу, пользовательский подход к роли, применяемой ко всему сайту, не относится к определенному элементу, подобному проекту.
Я думал о создании ролей, объединив ProjectId и роль проекта в единую комбинированную роль, такую как 3213ProjectEditor. Поэтому позже я смогу использовать User.IsInRole(currentProject.ID+"ProjectEditor")
, чтобы определить, является ли пользователь редактором в currentProject. Это кажется мне взломом, хотя.