powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF net.tcp: не может загрузить System.Transactions
18 сообщений из 43, страница 2 из 2
WCF net.tcp: не может загрузить System.Transactions
    #38921374
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuhюзер1 на машине1->wcf под юзер2 на машине2 ->sql server на машине3
А с какой это стати юзер2, а не юзер1? У вас же Windows Authentication на sql?
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38921378
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Вас получается, что юзер1 на машине1 вызывает wcf сервис на машине2 под своими креденшиалами, а они при обращении с машины2 к sql на машине3 теряются и принимают юзера1 как анонима. Это и назывется проблема Double Hop, которая, обычно решается настройкой Kerberos аутентификации.
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38921465
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronУ Вас получается, что юзер1 на машине1 вызывает wcf сервис на машине2 под своими креденшиалами, а они при обращении с машины2 к sql на машине3 теряются и принимают юзера1 как анонима. Это и назывется проблема Double Hop, которая, обычно решается настройкой Kerberos аутентификации.

так где и что настраивать? надо ли создавать SPN и какие?
можно ли вот так сделать?

клиент юзер1 (домен1\win7)->wcf (под юзер2, но имперсонифицирующийся под юзер1) (домен1\win7)->sql server (домен1\север1)

что и где сделать?
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38921488
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuh,
Откуда Вы берете юзера2 на wcf?
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38921505
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuh,
Зайдите по ссылке и сделайте то же самое на сервере WCF для своего домен юзера.
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922685
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhЮзер коннектится к сервису
далее коннектиться к SQL Server.

Если коннект к сервису через basichttp - всё ок.
Если через net.tcp - ошибка:

Код: c#
1.
Could not load file or assembly 'System.Transactions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. Either a required impersonation level was not provided, or the provided impersonation level is invalid. (Exception from HRESULT: 0x80070542)



Если сервис на другом компьютере, то там то же, но про

System.EnterpriseServices


куда смотреть?

Сделал типа такого:
http://www.codeproject.com/Articles/38979/How-to-enable-multi-hop-impersonation-using-constr

1. скопировал пальцами из GAC в фолдер сервиса - прошло
2. появилось то же сообщение об System.EnterpriseServices.dll
3. скопировал и эту ассембли - прошло
4. появилась ошибка подключения к SQL Server - incorrect instance name и т.д., но я его правильно указал


По 1-3 - это неправильно, похоже не хватает привилегий для загрузки длл из GAC? но каких?
По 4 - п-ц, вообще непонятно, что нужно.

В Event Viewer вижу, что юзер1 залогинен на серверной машине, правда сообщение 4624 SID = NULL SID? но пишет, что все суксессфульно.
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922726
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronWinnipuh,
Зайдите по ссылке и сделайте то же самое на сервере WCF для своего домен юзера.Баян :) 17449295
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922730
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAAxeleronWinnipuh,
Зайдите по ссылке и сделайте то же самое на сервере WCF для своего домен юзера.Баян :) 17449295
Та чо ты! Проблемы руками так скушно решать...
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922733
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronskyANAпропущено...
Баян :) 17449295
Та чо ты! Проблемы руками так скушно решать...Думаешь в картинках ТС поймёт? :)
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922760
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAAxeleronпропущено...

Та чо ты! Проблемы руками так скушно решать...Думаешь в картинках ТС поймёт? :)
Навряд ли. Ну только, может быть, если цветные...
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922850
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronskyANAпропущено...
Думаешь в картинках ТС поймёт? :)
Навряд ли. Ну только, может быть, если цветные...

да сделал я, задорные смешливые ребята, сделал, нихера не помогло.

Дело не в этом.
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38922937
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuhда сделал я, задорные смешливые ребята, сделал, нихера не помогло.
Дело не в этом.
Есть у меня что-то смутные подозрения, что сделали не на том сервере и не для того юзера....
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38923042
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronWinnipuhда сделал я, задорные смешливые ребята, сделал, нихера не помогло.
Дело не в этом.
Есть у меня что-то смутные подозрения, что сделали не на том сервере и не для того юзера....

не, сделал для всех трех юзеров, на трех серверах, и даже больше сделал. Но - результат никакой.
проверил setspn, пишет, что все ок.
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38923056
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuh,
А рестартанули Claims to Windows Token Service и IIS после изменений?
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38923059
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuh,
А что за юзер в Application Pool для сайта установлен? Его тоже добавили?
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38923174
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronWinnipuh,
А что за юзер в Application Pool для сайта установлен? Его тоже добавили?

для простоты я захостил WCF сервис в консольном приложении
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38923180
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhAxeleronWinnipuh,
А что за юзер в Application Pool для сайта установлен? Его тоже добавили?

для простоты я захостил WCF сервис в консольном приложении
И все то же самое?
...
Рейтинг: 0 / 0
WCF net.tcp: не может загрузить System.Transactions
    #38923188
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronWinnipuhпропущено...


для простоты я захостил WCF сервис в консольном приложении
И все то же самое?

да, как описал выше.

Внутри метода WCF такое:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
[OperationBehavior( Impersonation = ImpersonationOption.Allowed)] // Required )] <--- в статье так, но не думаю, что это важно
public bool Test()
{
  using ( ServiceSecurityContext.Current.WindowsIdentity.Impersonate( ) )
  {
   // здесь уже нужный юзер, контекст сменён(!)

     con.Open();// <-- exception, incorrect sql server instance name и т.д.



Странностей 2 или 1:
то, что не подгружались ассембли из GAC и невозможность открыть коннекцию.
...
Рейтинг: 0 / 0
18 сообщений из 43, страница 2 из 2
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF net.tcp: не может загрузить System.Transactions
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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