Мне нужно раз и навсегда предоставить пользователю разрешения на уровне сервера для резервного копирования любой существующей или будущей базы данных на экземпляре сервера, не делая пользователя системным администратором. Как я могу это сделать?
Я пытался предоставить пользователям: dbcreator, serveradmin, setupadmin, но пользователь по-прежнему не может создать резервную копию базы данных, если он не является db_owner.
Моя команда много занимается настройкой тестирования и синхронизацией сред. Члены команды должны иметь возможность создавать новые базы данных по желанию, а также выполнять резервное копирование и восстановление по желанию. В настоящее время мы должны продолжать предоставлять людям права db_owner на вновь создаваемые базы данных. Есть ли способ избежать этого?
Я не знаю никаких вариантов уровня сервера как таковых, но некоторые из них могут работать.
Измените базу данных модели так, чтобы ей была назначена роль операторов резервного копирования для группы, в которой находится ваш пользователь.
Каждую ночь запускайте сценарий t-sql, который просматривает каждую базу данных и назначает роль.
Кроме того, чтобы еще раз подтвердить, см. Здесь ... https://dba.stackexchange.com/questions/28472/is-there-a-backup-operator-role-in-microsoft-sql-server-2008
IIRC, вы можете предоставить пользователю разрешения «BACKUP DATABASE» и «BACKUP LOG». SQL Server 2008 не позволит вам создать роль на уровне сервера, поэтому вы можете застрять в предоставлении этих разрешений для каждого пользователя. Посмотри это страница и посмотрите в разделе «Примечания».