Мы пытаемся установить релиз для нашего приложения.Программа использует 2 учетных записи SLQ: SA и SAA2.
SAA2 должен быть стандартным пользователем, который может выполнять некоторые операторы выбора.SA - супер администратор (Капитан Очевидность).
Однако мы застряли двумя разными способами:
1) Если мы предоставим sysadmin право на SAA2, наши сценарии не смогут работать, поскольку это относится к определенной схеме, реализованной на странице входа в системуучетная запись.Как мы поняли, поскольку он связан с sysadmin, схема по умолчанию меняется на dbo.Но учетная запись может успешно войти в систему
Если мы хотим разрешить ее таким способом, мы должны реализовать этот обходной путь:
- Принудительно использовать для своей учетной записи собственную схему по умолчанию
- Измените наши сценарии на полное имя без использования схемы (невозможно)
Неверное имя объекта ...
2) Если мы хотимиспользовать SAA2 в качестве стандартных учетных записей (поскольку сценарии в основном сосредоточены на SELECT), MSSSQL отказывает учетной записи в подключении.Действительно, если мы попытаемся просто войти в систему, используя учетные данные SQL, то как системный администратор это работает, как обычный пользователь, это не так.(например, https://social.msdn.microsoft.com/Forums/sqlserver/en-US/23952fef-7ad7-4374-b7e9-89476a62adc9/users-unable-to-access-their-database-unless-they-are-given-sysadmin-permission?forum=sqlsecurity)
Ошибка с номером 18456, уровень серьезности 14, состояние 1
Мы просто хотим найти способ выполнить наш запрос как системный администратор или нет.