Entity Framework Security - PullRequest
       9

Entity Framework Security

1 голос
/ 26 апреля 2010

В моей организации мы только начинаем использовать Entity Framework для некоторых приложений. В прошлом мы заставляли разработчиков использовать хранимые процедуры для всего доступа к базе данных. Мы не только помогали с внедрением SQL, но и пытались предоставить логинам доступ к хранимым процедурам только для обеспечения относительно строгой безопасности.

Хотя вставка, обновление и удаление легко выполняются с помощью хранимых процедур в EF, представляется сложным использовать хранимые процедуры для запроса данных с EF. Однако использование LINQ или Entity SQL и разрешение EF создавать запросы означает предоставление пользователю доступа для чтения ко всей базе данных.

Как другие справились с этой дилеммой?

1 Ответ

3 голосов
/ 27 апреля 2010

Какую защиту данных вы пытаетесь применить?

С помощью EF вы можете написать слой бизнес-логики, тестируемый модулем, который будет обрабатывать гораздо больше сценариев авторизации, чем вы можете сделать на уровне базы данных (хотя я вижу, как несколько уровней безопасности делают вас более безопасными):

  • Запрос AD (этот пользователь является менеджером этого пользователя?)
  • Вызов веб-сервисов
  • Проверка других условий окружающей среды

Если ваши обстоятельства означают, что вы не готовы думать о базе данных как о хранилище данных, а не о уровне безопасности и бизнес-логики, то, возможно, EF не подходит для вашего проекта.

P.S. EF защитит вас от внедрения SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...