2009-07-31 2 views
0

У меня есть база данных, скажем, TestDatabase.I уже добавила пользователя под NTAuthority \ SYSTEM (Role) Db_owner.Sql Server, добавляющий другого пользователя

Снова я хочу добавить другого пользователя в ту же базу данных под NTAuthority \ System с другой ролью.

я получил следующее сообщение об ошибке:

The login already has an accoind under different username. 

SQL Server Error :15063 

Как я могу добавить различные пользователь в те же базу данных с другой ролью.

Буду признателен, если я получу разъяснение.

+0

Пожалуйста, снимите этот вопрос как Community Wiki. CW обычно для объективных вопросов без «реального» ответа. – Brandon

ответ

1

Вы не можете. Вы добавляете одного пользователя к нескольким ролям.

db_owner уже имеет все права на использование базы данных, поэтому любые другие разрешения являются излишними.

CREATE USER [NTAuthority\SYSTEM] FROM LOGIN [NTAuthority\SYSTEM]; 
EXEC sp_addrolemember 'db_owner', 'NTAuthority\SYSTEM' 
-- ...and fails 
CREATE USER [bob] FROM LOGIN [NTAuthority\SYSTEM]; 

--Normally, for one user in multiple roles 
EXEC sp_addrolemember 'DoStuff', 'NTAuthority\SYSTEM' 
EXEC sp_addrolemember 'DoSpecialStuff', 'NTAuthority\SYSTEM' 
--... and for another user 
EXEC sp_addrolemember 'DoStuff', 'AnotherUser' 
--... and for yet another user 
EXEC sp_addrolemember 'DoLimitedStuff', 'TheThirdUser' 

Edit:

Посмотрите документацию MS: Database-Level Roles и родительским Identity and Access Control тему

+0

Тогда какова вероятность наличия аутентификации на основе роли на той же БД? – user146584

+0

Добавлен образец кода, чтобы показать множественное членство в ролях – gbn

+0

Good Explanation.It дает полную информацию о том, что я ожидал. – user146584

0
  1. если это db_owner нет смысла в добавлении его в любой другой роли.

  2. добавить существующий пользователь в новую роль, которую вы запустите sp_roleaddmember

+0

Pls, дайте мне знать, как я могу достичь двух разных ролей, имеющих разные права на одной и той же БД. – user146584

Смежные вопросы