У меня есть несколько пользователей на моем сервере SQL, каждый из которых МОЖЕТ войти в систему на сервере; однако один пользователь, вошедший в систему, не может ничего запускать (выбирать, изменять, редактировать) в определенном представлении, но может во всех остальных.
Пользовательские настройки такие же, как и у другой учетной записи, которая имеет полный доступ (серьезно они идентичны). Для пользователя, который не может выбрать и т. Д. Из его представления, я получаю эту ошибку:
SELECT Top 1 * From View
Msg 18456, Level 14, State 1, Line 1
Login failed for user 'some user'.
Однако, когда я пытаюсь сделать это
select top 1 * from view2
я получаю эту ошибку:
Msg 2809, Level 18, State 1, Line 1
The request for procedure 'View2' failed because 'view2' is a view object.
но опять это исчезает, когда я удаляю верхнюю 1 и отлично работает:
select * from View2
Так что у меня три конфликтующие проблемы ... когда я делаю select * from every view
бар, первый вид работает, когда я делаю select top 1 *
из тех же самых взглядов, он не работает, и когда я пытаюсь что-либо (выбрать, изменить , изменить) с первого взгляда я получаю ошибку при входе, хотя я уже вошел в систему.
Я уже пытался удалить и воссоздать пользователя - не повезло. Я также пробовал искать в окне просмотра событий и не могу найти никаких сообщений журнала, связанных с ошибкой входа в систему.
Я не могу найти папку безопасности> аудита в обозревателе объектов, чтобы проверить там, но когда я проверяю управление> Журналы SQL Server, я тоже там ничего не нахожу ..
Любая помощь очень ценится, поскольку все, что я до сих пор нашел, касается неспособности фактически войти в систему на полной остановке сервера.