Базы геоданных представляют собой набор таблиц, видов, функций и сохраненных процедур внутри базы данных. В базах геоданных в базе данных Microsoft SQL Server этот набор объектов может принадлежать пользователю sde или dbo. Кто именно будет собственником базы геоданных, зависит от администратора. Так как имена пользователей и имена схем должны совпадать в базе геоданных, базы геоданных, принадлежащие пользователю sde называются базами геоданных со схемой sde, а принадлежащие dbo называются, соответственно, базы геоданных со схемой dbo.
Примечание:
Важно понимать, как SQL Server управляет доступом к данным и другим объектам. Поэтому, если вы не знакомы с моделью безопасности SQL Server, обратитесь к документации по Microsoft SQL Server. SQL Server проверяет имя пользователя на уровне экземпляра, затем авторизует соответствующего пользователя на уровне базы данных. Экземпляру, определенным базам данных или данным внутри базы данных могут предоставляться различные права. Это может влиять на выбор типа пользователя базы геоданных.
Имя пользователя, из-под которого вы подключаетесь, когда создаете базу геоданных, определяет пользователя, который будет владельцем базы геоданных. Если имя пользователя операционной системы или SQL Server, из-под которого вы подключаетесь, сопоставлено с пользователем dbo, создается база геоданных со схемой dbo. Если имя пользователя операционной системы или SQL Server, из-под которого вы подключаетесь, сопоставлено с пользователем sde, создается база геоданных со схемой sde.
Пользователь sde
Пользователь sde базы данных может быть связан с именем пользователя, проверяемым в SQL Server или средствами операционной системы. Пользователь sde должен иметь права на схему sde, а эта схема должна быть схемой пользователя sde по умолчанию. Пользователь sde также должен обладать правами в базе данных, которые позволяют ему создавать и администрировать базу геоданных.
Пользователь dbo
Пользователь dbo и его схема по умолчанию автоматически присутствуют во всех базах данных. Имена пользователя могут быть связаны с dbo одним из двух способов:
- С помощью создания или назначения владельца определенной базы данных
- С помощью участия в фиксированной серверной роли sysadmin
Имена пользователей, которые сопоставляются с пользователем dbo в определенной базе данных, имеют в ней максимально возможные права, поэтому их достаточно для создания и администрирования базы геоданных. Имена пользователей, которые сопоставляются с пользователем dbo в определенной базе данных, не имеют дополнительных прав в экземпляре SQL Server или в других базах данных, если только дополнительные права не были специально предоставлены.
Имена пользователей, которые являются участниками фиксированной серверной роли sysadmin, сопоставляются с пользователем dbo в каждой базе данных экземпляра SQL Server, и также имеют максимально возможные права во всем экземпляре SQL Server. Такие пользователи имеют права, достаточные для создания и администрирования базы геоданных, и могут создавать, изменять, удалять и администрировать другие защищенные данные в экземпляре.
Все объекты базы данных, принадлежащие пользователю dbo, хранятся в схеме dbo.
Какому пользователю должна принадлежать база геоданных?
Между этими двумя типами схем баз геоданных не существует различий в производительности и функциональности. Каждая имеет свои преимущества и недостатки. Выберите пользователя (и, соответственно, схему) которая лучше всего подходит в вашей системе и модели безопасности.
Ниже дается сравнение двух типов схем, основанных на типе использованной аутентификации:
Схема | Аутентификация | Плюсы | Минусы |
---|---|---|---|
Dbo (член sysadmin) | Операционная система или имя пользователя SQL Server |
|
|
Dbo (сопоставленный с dbo в определенной базе данных) | Операционная система или имя пользователя SQL Server |
|
|
Sde | учетная запись SQL Server |
|
|
Sde | Имя пользователя операционной системы |
|
|
*Большинство учетных записей операционных систем, особенно доменных учетных записей, принадлежат определенным пользователям. Это имя используется сотрудником для входа в компьютер и доступа к приложениям, включая SQL Server. Соответственно этот сотрудник всегда подключается к базе геоданных как пользователь sde. Если один и тот же человек является и администратором базы геоданных и создает данные в базе геоданных, вам возможно, потребуется создать другую учетную запись операционной системы, и сопоставить с ней другого пользователя базы данных, с правами меньшего уровня, соответственно дав сотруднику два имени пользователя. Однако это означает, что пользователь должен будет переключаться между учетными записями в компьютере, в зависимости от того, какую задачу он в данный момент выполняет в базе геоданных. Во многих организациях не допускается создание нескольких учетных записей для одного пользователя, поскольку это влияет на безопасность и усложняет управление учетными записями пользователей. В этом случае идентификация пользователя sde средствами операционной системы не очень подходит для сотрудника, если он выполняет несколько ролей в базе геоданных.