Следует ли использовать схемы сервера sql для логической или административной группировки? - PullRequest
4 голосов
/ 25 февраля 2009

Является ли хорошей идеей разделить мои объекты SQL Server на схемы, основанные на их логической группировке (своего рода пространство имен s.a. sales, user, common), или они должны в первую очередь использоваться для создания различных границ безопасности?

Ответы [ 4 ]

1 голос
/ 25 февраля 2009

Я бы, возможно, отделял только на основе пользовательских объектов от объектов приложения / системы То есть заказы, продукты и т. Д. Являются объектами пользователя. Таблицы безопасности являются системными объектами.

В какой-то момент вы также можете обнаружить, что у вас есть перекрытие разрешений, если вы предоставляете права на схему (как предложено). Либо вы не можете классифицировать объект, либо он используется в разных областях.

Если вы следовали передовому опыту задолго до SQL 2005 и прошли обновление, у вас могут быть сотни баз данных, где каждая ссылка на объект является схемой, квалифицированной как "dbo". Вы нарушаете свои соглашения об именах для новых баз данных и, возможно, нарушаете все ваши полезные сценарии, основанные на «dbo».?

Edit: Если вы решите сделать это, остерегайтесь цепочки владения

1 голос
/ 25 февраля 2009

Вы можете поместить хранимые процедуры в схемы в зависимости от уровня безопасности. Затем предоставьте роль execute на схеме. Нет больше предоставления.

1 голос
/ 25 февраля 2009

Новый проект Microsoft под названием «Осло» использует схемы для группировки объектов в пространства имен.

1 голос
/ 25 февраля 2009

Я бы пошел на логическую группировку и установить безопасность с помощью ролей. но обычно логические группы и группы безопасности совпадают. обычно :) 1001 *

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