Назад | Перейти на главную страницу

Sql Server - минимальные права, позволяющие предоставлять другим людям аналогичные права

Я хотел бы предоставить кому-то из нашей команды веб-разработчиков возможность предоставлять другим пользователям (другим веб-разработчикам, а также пользователям приложений, которые они создают) datareader, datawriter и exec sproc в наших средах разработки и тестирования.

Что мне нужно дать ему, чтобы он смог это сделать? Я хочу дать ему минимум для достижения этой цели.

Quoth писание:

Для добавления членов в гибкие роли базы данных требуется одно из следующих действий:

  • Членство в фиксированной роли базы данных db_securityadmin или db_owner.

  • Членство в роли, которой принадлежит роль.

  • Разрешение ALTER ANY ROLE или разрешение ALTER для роли.

Для добавления участников в фиксированные роли базы данных требуется членство в фиксированной роли базы данных db_owner.

Тем не менее, я бы

  • создать роль [Разработчики] авторизация [dbo]
  • предоставить выбор, вставить, обновить, удалить, выполнить [Разработчикам]
  • предоставить изменение роли :: [Разработчики] [некоторому разработчику]

Затем, в соответствии с третьим пунктом из книг в Интернете, пользователь [какой-нибудь разработчик] может добавить кого угодно к роли разработчика, и они получат разрешения, предоставляемые этой ролью.

Тем не менее, подумайте о том, чтобы предоставить вам более детальную информацию. Например, если ваши пользовательские объекты находятся в схеме, рассмотрите возможность предоставления разрешений на уровне схемы, а не для всего в базе данных, как я сделал выше, не упоминая защищаемый объект в операторе GRANT.