[ELMA3] Права на просмотр/редактирование поля в пользовательском интерфейсе объекта
В статье рассмотрено как реализовать права доступа к полям системных объектов в веб форме.
Для того, чтобы сделать поле объекта доступным только для определенных групп пользователей, необходимо при выведении поля на форму осуществлять проверку принадлежности текущего пользователя нужной группе. В приведенном ниже примере файла разметки поле "Примечания" будет видно только пользователям, входящим в группу "Администраторы":
1 2 3 4 5 6 7 8 9 10 11 12 13 | @using EleWise.ELMA.Security.Managers; @using EleWise.ELMA.Security.Services; @using EleWise.ELMA.Security.Models; <table> @{ var admins = UserGroupManager.Instance.Load( "Администраторы" ); var inAdmins = UserGroupManager.Instance.GetUsersByGroup(admins.Id).Any(a => a == AuthenticationService.GetCurrentUser<IUser>().Id); if(inAdmins) { @Html.EditableProperty( "Primechaniya" ) } } </table> |