2015-03-24 4 views
0

Я заметил, что могу создать логин под узлом sql server/security tree. Я также могу создать логин в узле sql server/databases/database name/security tree node. Мой вопрос в чем разница между этими двумя входами в систему безопасности?sql server security security vs server security

ответ

1

Порядок, на который пользователь получает доступ к SQL Server, сначала является пользователем (будь то вход в систему Windows или вход в SQL Server), созданный на уровне экземпляра - на узле дерева сервера/безопасности. После создания логина создается пользователь, sql server/databases/database name/security tree node, из входа в каждую базу данных, с которой они будут взаимодействовать. Некоторые пользователи, ставшие членами определенных групп (например, как члены системных администраторов SQL Server, имеют разрешения для всех баз данных), но почти все другие логины необходимо добавлять в каждую базу данных, для которой они должны будут работать.

Таким образом, если пользователю Windows User необходимо прочитать определенные таблицы в базе данных Sales, сначала будет создан логин на уровне экземпляра, а затем Joe будет добавлен в базу данных продаж и назначены разрешения на объекты, необходимые для выполнения их работы ,

+0

Пожалуйста, объясните, что произойдет, если пользователь находится в базе данных/безопасности, но НЕ в дереве сервера/безопасности? Его логин - просто отрицание? У меня есть случай, когда я нашел много пользователей в дереве базы данных, но они не находятся в дереве сервера и. – Tobia

+0

Это обычная проблема, которая обычно возникает, когда база данных привязана к экземпляру. Он называется сиротой. Иногда пользователь существует на обоих уровнях, но у них разные SIDS (Security IDS). Помните, что пользователи обычно имеют разрешение на объекты и/или могут быть членами групп, которые предоставляют им разрешения. Удаление пользователя означает, что все разрешения уходят. Если пользователь владеет объектом, его нельзя отбросить. Очевидно, что пользователи, которые не существуют на уровне экземпляра, не могут войти в систему. –

+0

Я видел, что это происходит всегда, когда я восстанавливаю базу данных с другого сервера, в этом случае я должен удалить пользователя из базы данных/безопасности и повторно использовать сопоставления пользователей с сервера/безопасность. благодаря – Tobia