Я хотел бы предоставить кому-то из нашей команды веб-разработчиков возможность предоставлять другим пользователям (другим веб-разработчикам, а также пользователям приложений, которые они создают) datareader, datawriter и exec sproc в наших средах разработки и тестирования.
Что мне нужно дать ему, чтобы он смог это сделать? Я хочу дать ему минимум для достижения этой цели.
Quoth писание:
Для добавления членов в гибкие роли базы данных требуется одно из следующих действий:
Членство в фиксированной роли базы данных db_securityadmin или db_owner.
Членство в роли, которой принадлежит роль.
Разрешение ALTER ANY ROLE или разрешение ALTER для роли.
Для добавления участников в фиксированные роли базы данных требуется членство в фиксированной роли базы данных db_owner.
Тем не менее, я бы
Затем, в соответствии с третьим пунктом из книг в Интернете, пользователь [какой-нибудь разработчик] может добавить кого угодно к роли разработчика, и они получат разрешения, предоставляемые этой ролью.
Тем не менее, подумайте о том, чтобы предоставить вам более детальную информацию. Например, если ваши пользовательские объекты находятся в схеме, рассмотрите возможность предоставления разрешений на уровне схемы, а не для всего в базе данных, как я сделал выше, не упоминая защищаемый объект в операторе GRANT.