Здравствуйте!
В старом приложении на C# (WinForms) вручную (без использования внешних фреймворков авторизации/аутентификации) написана примитивная система входа пользователей в систему под ролями. Нужно добавить в код разграничение доступа по ролям. Т.е. вызов методов или событий возможен для определенных ролей.
Было бы идеально указывать права доступа через атрибут на метода (как в ASP.Net MVC)
[Role("Admin")]
public void Foo()
{
}
Все примеры использования атрибутов, которые я видел, это вытягивание параметров атрибута в самом методе через рефлексию. Но тогда мне проще создать сервис проверки, который вызывать в начале каждого метода, сервис внедрять через DI.
Можно ли, как то в коде атрибута Role, прописать что он вызывается до метода, на который он применен, и проверить роль текущего пользователя, и выдать или запретить команду на исполнение самого метода?
Продвижение своими сайтами как стратегия роста и независимости