powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / SqlRoleProvider impersonation
5 сообщений из 5, страница 1 из 1
SqlRoleProvider impersonation
    #34099872
Andy_MAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос такой — может ли SqlRoleProvider или SqlMembershipProvider авторизоваться на удаленном SQL сервере (не там, где стоит IIS) используя Trusted Connection от имени пользователя, взаимодействующего с сайтом?

Сейчас у меня строка подключения к БД выглядит одинаково и для бизнес-логики и для ASP.NET провайдеров. Всякие там делегирования и прочее настроены верно — бизнес-логика с той же самой connection string работает. А вот ASP.NET провайдеры пытаются подключиться к базе данных используя identity, под которым выполняется соответствующий Application Pool (Network Service). В результате SQL Server справедливо пишет — login failed for domain\iismachine$.

Неужели нельзя сделать как я хочу? Спасибо.
...
Рейтинг: 0 / 0
SqlRoleProvider impersonation
    #34101026
Gollum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, Andy_MAN, Вы писали:

A_M>Вопрос такой — может ли SqlRoleProvider или SqlMembershipProvider авторизоваться на удаленном SQL сервере (не там, где стоит IIS) используя Trusted Connection от имени пользователя, взаимодействующего с сайтом?

Без переделки врядли. SqlProfileProvider точно не может, см. http://blogs.gotdotnet.ru/personal/Gollum/PermaLink.aspx?guid=c4ed494e-3f7a-4ace-bed6-28a8a136de34
Думаю c RoleProvider и MembershipProvider все то же самое. На мой взгляд использования имперсонации следует по возможности избегать.В инфракрасный прицел мы видны, как небесный ОМОН
...
Рейтинг: 0 / 0
SqlRoleProvider impersonation
    #34101476
Andy_MAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Gollum, Вы писали:

G>Без переделки врядли. SqlProfileProvider точно не может, см. http://blogs.gotdotnet.ru/personal/Gollum/PermaLink.aspx?guid=c4ed494e-3f7a-4ace-bed6-28a8a136de34
G>Думаю c RoleProvider и MembershipProvider все то же самое. На мой взгляд использования имперсонации следует по возможности избегать.

Интересно, почему разработчики так сделали? Решили жестко закодировать best practice? Не рекомендуем-мол имперсонацию, и не будем ее в sqlproviderах использовать и все тут?

А имперсонацию я по традиции использую для ведения истории, при этом на sql server используя SYSTEM_USER. можно, коненчо ведение истории и получение имени текущего пользователя перевести в бизнес-логику на веб-сервере... но как то уже переделывать не хочется.
...
Рейтинг: 0 / 0
SqlRoleProvider impersonation
    #34101820
Gollum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, Andy_MAN, Вы писали:

A_M>Интересно, почему разработчики так сделали? Решили жестко закодировать best practice? Не рекомендуем-мол имперсонацию, и не будем ее в sqlproviderах использовать и все тут?

Не знаю, к сожалению. :(

A_M>А имперсонацию я по традиции использую для ведения истории, при этом на sql server используя SYSTEM_USER. можно, коненчо ведение истории и получение имени текущего пользователя перевести в бизнес-логику на веб-сервере... но как то уже переделывать не хочется.

Значит придется что-нибудь придумывать, например попробовать выдрать рефлектором код провайдера и написать такой же, только без отмены имперсонации. Или попробовать унаследоваться и убрать отмену имперсонации.killalll -SIGWALL self
...
Рейтинг: 0 / 0
SqlRoleProvider impersonation
    #34101977
Andy_MAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Gollum, Вы писали:

A_M>>А имперсонацию я по традиции использую для ведения истории, при этом на sql server используя SYSTEM_USER. можно, коненчо ведение истории и получение имени текущего пользователя перевести в бизнес-логику на веб-сервере... но как то уже переделывать не хочется.

G>Значит придется что-нибудь придумывать, например попробовать выдрать рефлектором код провайдера и написать такой же, только без отмены имперсонации. Или попробовать унаследоваться и убрать отмену имперсонации.

Понятно, спасибо. Неприятно натыкаться на такие нелогичные вещи. Да к тому же и недокументированные.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / SqlRoleProvider impersonation
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]