ASP.NET WebApi с Entity Framework - подключаться к базе данных под разными пользователями - PullRequest
0 голосов
/ 10 мая 2018

У меня есть проект в ASP.NET WebAPI (веб-сервис), который обслуживает веб-сайт и подключается к базе данных SQL Server с помощью Entity Framework.

Entity Framework подключается к базе данных под одним логином, который хранится в файле config. Но я должен подключиться к базе данных под логином и паролем, который пользователь заполнил на сайте, и выполнить все запросы этого пользователя (у пользователя должен быть свой собственный сеанс на SQL Server).

Может ли кто-нибудь сказать мне, возможно ли это или нет? И если это возможно, я должен понять это?

Большое спасибо!

1 Ответ

0 голосов
/ 10 мая 2018

Если пользователь отправляет имя пользователя и пароль в запросе в WebAPI, то вам необходимо динамически сгенерировать строку подключения, а затем использовать ее для подключения к базе данных.

Другой вариант, вы можете настроить аутентификацию kerberos в webapi, а затем добавить некоторую логику в базу данных на основе параметра SYSTEM_USER.Или, в зависимости от версии сервера SQL, вы можете использовать Role Based Security

https://docs.microsoft.com/en-us/sql/relational-databases/security/row-level-security?view=sql-server-2017

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...