Являются ли надлежащая практика обеспечения безопасности и диапазон автоматической идентификации mgmt взаимоисключающими? - PullRequest
3 голосов
/ 24 мая 2011

Я пытаюсь использовать Автоматическое управление диапазоном идентификаторов .Однако единственный способ убедиться, что мои пользователи могут вставлять записи в таблицы со столбцами идентификаторов, - сделать их db_owner.Я что-то упустил?


Для полного фона, пожалуйста, обратитесь к моему предыдущему вопросу: Разрешить не-db_owner разрешения INSERT в репликации слиянием с автоматическим диапазоном идентификации mgmt

1 Ответ

3 голосов
/ 24 мая 2011

Видимо, они взаимоисключающие.

Вот выдержка из блога сотрудника Microsoft (примечание , это не «официальная» документация, но она примерно такая же близкая, как и ):

Типичные проблемы диапазона идентификаторов

1) Учетная запись, которая делает вставки в издатель или подписные таблицы, не является db_owner.

Подписчики SQL 2005/8 имеют триггеры репликации слиянием, которые могут настроить исчерпанный первичный диапазон на вторичный вспомогательный диапазон, если учетная запись, выполняющая вставки, является членом роли db_owner. Издатели также могут обновить диапазон (создать новые первичные и вторичные диапазоны), если подключенная учетная запись является членом роли db_owner. Однако, если учетная запись, выполняющая вставки в таблицы, не принадлежит роли db_owner, триггеры не могут выполнять такие корректировки. В этом случае агент слияния должен быть выполнен, чтобы выполнить эти корректировки до того, как диапазон исчерпан, чтобы избежать сбоя новых вставок, или член db_owner должен вручную запустить системную хранимую процедуру sp_adjustpublisheridentityrange (Transact-SQL).

ЧТО!?!?! Кто там пишет приложения баз данных, где единственными пользователями, вставляющими записи, являются db_owners?

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