В «общедоступном» приложении рекомендуется использовать служебную учетную запись для доступа к базе данных (выполнять запросы, выполнять хранимые процедуры) и вычислять контроль доступа пользователя на уровне кода.
Это предотвращает необходимость добавления новых пользователей в диспетчер безопасности базы данных.
Единственный случай, когда я видел отдельные учетные записи базы данных SQL, - это разделение функциональности приложения, и даже тогда они являются служебными учетными записями. т.е.
- Предоставить выбор в ReportService
- Предоставить выбор, обновление, удаление в TransactionService
Затем вы можете запустить свое веб-приложение как ReportService или TransactionService, исходя из его потребностей.
Объединив эти две концепции (доступ пользователей в коде, распознавание функций для сервисов), вы можете эффективно провести модульное тестирование работы ваших механизмов контроля доступа пользователей. В противном случае вам нужно настроить пользователя в базе данных, а затем посмотреть, какое поведение вы получаете от базы данных.