Я запускаю следующий скрипт и не получаю никаких ошибок и предупреждений. Я также проверю, что пользователь действительно был создан. Когда я нажимаю на него, я вижу роли (зарегистрировано членство db_owner).Не удается войти в систему с пользователем роли db_owner
create login normalLogin
with password = 'normalpass',
check_policy = off
create login adminLogin
with password = 'adminpass',
check_policy = off
create user common for login normalLogin;
create user admin for login adminLogin;
execute sp_addrolemember db_owner, admin
Однако, когда я пытаюсь войти на сервер с помощью администратора в качестве имени пользователя и adminpass в качестве пароля (авторизации SQL), я получаю сообщение об ошибке, говоря мне это.
Login failed for user 'admin'. (Microsoft SQL Server, Error: 18456)
Доступ к helping link, я получаю два возможных предложения.
- Убедитесь, что SQL Server настроен в режиме смешанной аутентификации.
- Убедитесь, что существует учетная запись SQL Server и что вы правильно ее произвели.
Я уверен, что (1) является правильным (все же, как я могу его перепроверить?), Поэтому подозрения падают на (2). Недостаточно ли сценария? У меня такое ощущение, что, возможно, пользователю на уровне БД недостаточно, и что мне нужно создать его на уровне сервера. Это так? Как я могу выполнить такую операцию? Я желаю, конечно, сохранить безопасность и разделить ее.
Попробуйте войти в систему с пользователем, чьи логины/учетные данные вы запускали скрипт через SQL Management Studio и в свойствах сервера, проверьте, включена ли аутентификация смешанного режима. Это должно быть проблемой. –
https://msdn.microsoft.com/en-IN/library/ms188670.aspx –
@GaneshR. Он проверен, как я думал, на * SQL Server и режиме проверки подлинности Windows *. Что я могу сделать для пользователя, созданного сценарием? –