text: Управление доступом к объектам и разрешениями с помощью Entity Framework
  В веб-приложении, использующем Entity Framework 4.1, мы используем членство в SQL Server для управления доступом пользователей. Однако нам нужно реализовать более детальный набор ролей управления разрешениями.
  В базе данных мы уже создали относительные таблицы:
  - UserInRole (roles per user)
  - RolesPermissions (permissions associated to a role)
  Используя атрибуты на некоторых основных объектах, мы семантически ограничиваем доступ с помощью EF, например, для конкретного пользователя он / она может видеть только относительные отгруженные заказы или собственные данные.
  Теперь мы хотели бы ввести разрешения в нем, имея в виду, например, чтопокупатель можно видеть и создавать заказы, аКомпания (это две разные роли) может видеть только заказы на свои продукты, а также печатать отчеты.
  Идея состоит в том, чтобы использовать атрибуты также для разрешений на уровне сущности и проверять, владеет ли текущий пользователь надлежащими правами при вызове метода. Например:
  public void BeforeAdd()
  // Get required permissions for the specific entity (Order as example)
  //Check that current user has permission of creating a new Order
  Такой метод будет вызываться каждым объектом, позволяя централизовать контроль над разрешениями на уровне объекта.
  Мы используем MVC в качестве внешнего интерфейса, и там мы уже реализовали роли и права доступа. Нам нужно сделать то же самое с серверной частью (содержащей слой данных). Это два отдельных сервера, взаимодействующих через веб-сервисы. Внедрение управления разрешениями на серверной части усилит контроль доступа к данным.
  Есть ли какой-либо шаблон или передовой опыт, которому мы могли бы следовать (в конечном итоге используя некоторые встроенные функции EF) для достижения управления разрешениями?