Строка подключения приложения ASP.NET и защита / разрешения SQL Server

Я развертываю приложение ASP.NET и базу данных SQL Server (2008) на работающем (производственном) сервере. Физический сервер работает под управлением SQL Server 2008 и IIS 7 - он предоставляется хостинговой компанией и не является частью нашей внутренней сети.

У меня есть пара вопросов, касающихся безопасности базы данных и строки подключения для приложения ASP.NET.

Ранее я хотел бы создать пользователя базы данных и указать разрешения SELECT/INSERT и т. Д. Для каждой таблицы - но моя проблема в том, что в этой базе данных более 50 таблиц, поэтому это займет много времени.

Приложение требует SELECT/INSERT/DELETE/UPDATE для каждой таблицы.

  • Есть ли лучший способ, чем указание разрешений для каждой таблицы в отдельности?
  • Существует ли эквивалент интегрированной безопасности для живого веб-сервера - каковы недостатки?
  • Или есть способ повышения прав доступа для конкретного пользователя для полного доступа к конкретной базе данных

Кроме того, как изменится строка подключения?

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

Большое спасибо.

1 ответ

Решение

Похоже, вы можете сделать пользователя владельцем базы данных, поскольку вы не указали очень строгие правила безопасности. Я делаю это для всех моих простых сайтов, которым нужен базовый доступ к базе данных. Если вам нужна более строгая политика (т. Е. Некоторые пользователи базы данных доступны только для чтения, а некоторые имеют доступ только к определенным таблицам), тогда это не вариант для вас.

В SQL Server Management Studio разверните Security > Logins и щелкните правой кнопкой мыши пользователя и перейдите к Properties, затем User Mapping, На верхней панели установите флажок рядом с вашей базой данных. Тогда найди db_owner в нижней панели и установите этот флажок. Теперь пользователь может выполнять все функции в этой базе данных, включая INSERT, SELECT, UPDATE, DELETE.

введите описание здесь

Роли на уровне базы данных для более подробной информации о том, что означает каждая из ролей.

Другие вопросы по тегам