Как проверить логин в базах данных Azure SQL - PullRequest
0 голосов
/ 01 июня 2018

Я хочу подтвердить логин пользователя перед установкой нашего программного обеспечения.У них есть возможность использовать встроенную защиту или вход в систему sql.Этот логин не является и не должен быть в роли системного администратора, но это выходит за рамки этого вопроса.

На мой взгляд, это должно быть так же просто, как составление строки соединения без «Начального каталога» и проверкалогин.Это должно подключиться к базе данных пользователей по умолчанию, и мы можем убедиться, что соединение было в порядке.

Это не тот случай, когда речь идет о базах данных Azure SQL.Обычные пользователи обычно не имеют действующей базы данных по умолчанию, так как она установлена ​​на master.Пользователи не имеют доступа к мастеру.

sqlcmd -U xxxUser -S xxxdatabases.database.windows.net
Password: Sqlcmd: Error: Microsoft ODBC Driver 11 for SQL Server : The server principal "xxxdatabases" is not able to access the database "master" under the current security context..
Sqlcmd: Error: Microsoft ODBC Driver 11 for SQL Server : Login failed for user 'xxxdatabases'..
Sqlcmd: Error: Microsoft ODBC Driver 11 for SQL Server : Cannot open user default database. Login failed..

Я мог бы использовать учетную запись администратора, чтобы проверить, есть ли у пользователей доступ к какой-либо из существующих баз данных, и подключить пользователя к этой базе данных.Но это похоже на глупое решение и, возможно, вступает в противоречие с нашим собственным лицензионным соглашением, поскольку нам не разрешено подключаться к случайным базам данных.

У кого-нибудь есть советы по проверке входа в базы данных SQL Azure?

1 Ответ

0 голосов
/ 01 июня 2018

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

sqlcmd -U xxxUser -S xxxdatabases.database.windows.net -d DatabaseName

У логинов в базе данных SQL Azure нет базы данных по умолчанию, поскольку одно соединение не может переключаться между базами данных, напримерна обычном экземпляре SQL.

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