Я предоставляю разрешения для пользователя, прошедшего проверку подлинности Windows (ранее присутствовала только общедоступная роль сервера по умолчанию, без добавления пользовательских сопоставлений или защищаемых объектов), в приведенном ниже примере в главной базе данных, но он также создает схема пользователя:
--Database Context
USE [master]
--Role Memberships
EXEC sp_addrolemember @rolename=[db_datareader],@membername=[Username]
EXEC sp_addrolemember @rolename=[db_datawriter],@membername=[Username]
--Database Level Permissions
GRANT CONNECT TO [Username]
--Set default schema
ALTER USER [Username] WITH default_schema = dbo
Хотя права доступа установлены правильно, мне неясно, почему он также создает схему пользователя. Я проверил онлайн и не вижу ничего, что могло бы это объяснить.
Является ли это результатом sp_addrolemember, поскольку пользователь отсутствует в базе данных?