Новый пользователь не может войти в SQL Azure - PullRequest
52 голосов
/ 25 июня 2011

Я создаю нового пользователя для чтения / записи в SQL Azure следующим образом:

-- Connected to master
create login [fred] with password = 'xxx';

-- Connected to my DB
create user [fred] from login fred;
EXEC sp_addrolemember 'db_datareader', 'fred';
EXEC sp_addrolemember 'db_datawriter', 'fred';

При входе в систему с использованием SSMS я получаю сообщение об ошибке Cannot open database "master" requested by the login. The login failed.

Что я делаю неправильно или отсутствует?

Ответы [ 4 ]

81 голосов
/ 26 июня 2011

По умолчанию SSMS пытается подключиться к мастеру, но ваша новая учетная запись не имеет доступа к мастеру;я предполагаю только пользовательскую базу данных.

На экране входа в систему SSMS также необходимо указать имя базы данных;просто нажмите на значок Параметры >> , который откроет вкладку Свойства подключения.Там укажите имя базы данных, к которой вы пытаетесь подключиться.

32 голосов
/ 13 июля 2013

После создания пользователя базы данных в конкретной базе данных Database1, снова выберите «мастер» и создайте базу данных пользователя. Выполните приведенный ниже оператор дважды - один для базы данных 1, а другой для «мастера»

CREATE USER appuser1 FROM LOGIN appuser1;

К сожалению, это не задокументировано в справке Azure. http://msdn.microsoft.com/en-us/library/windowsazure/ee336235.aspx

10 голосов
/ 11 ноября 2016

-> Открыть новое окно запроса для основной базы данных и выполнить следующие команды

CREATE LOGIN AppLogin WITH password='XXXXXX'
GO

CREATE USER [AppUser] FOR LOGIN [AppLogin] WITH DEFAULT_SCHEMA=[dbo]
GO

-> Открыть новое окно запроса для ВАШЕЙ базы данных

CREATE USER [AppUser] FOR LOGIN [AppLogin] WITH DEFAULT_SCHEMA=[dbo]
GO

EXEC sp_addrolemember 'db_owner', 'AppUser';
GO

Источник:Как создать пользовательский логин пользователя для базы данных SQL Azure

2 голосов
/ 16 октября 2017

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

В нашем случае проблема заключалась в том, что пользователи, которых мы создали в наших базах данных, были отключены. the blackened users are the users we added... and were like that

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

  GRANT CONNECT TO [ourDbUser]

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

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