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

Я использую SQL Server Management Studio v17.9.1.Я следовал указаниям этого поста , чтобы использовать приведенную ниже команду, но не удалось с ошибкой.

REVOKE VIEW ANY DATABASE FROM PUBLIC

Защищаемый класс 'server' не поддерживается в этой версии SQL Server.

Я пробовал также код ниже с той же ошибкой:

USE master;
GO
DENY VIEW ANY DATABASE TO TestUser;
GO

Что не так для этого?

1 Ответ

0 голосов
/ 01 февраля 2019

В базе данных SQL Azure (и предварительно размещенных базах данных) пользователи могут проходить аутентификацию на уровне базы данных без входа в систему на уровне сервера.Например, в контексте базы данных Team1:

CREATE User Team1User WITH PASSWORD='<complex-password-here>';

И аналогично для другой базы данных:

CREATE User Team2User WITH PASSWORD='<complex-password-here>';

При подключении пользователи должны указать нужную базу данных и каталог sys.databasesview возвращает только текущую базу данных.

...