|  | 
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Юзер коннектится к сервису далее коннектиться к SQL Server. Если коннект к сервису через basichttp - всё ок. Если через net.tcp - ошибка: Код: c# 1. Если сервис на другом компьютере, то там то же, но про System.EnterpriseServices куда смотреть? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 27.03.2015, 20:04 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Winnipuh, Похоже на то, что надо копать в сторону ключевых слов WCF и Impersonate a client after authentication. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 27.03.2015, 20:18 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ AxeleronWinnipuh, Похоже на то, что надо копать в сторону ключевых слов WCF и Impersonate a client after authentication. на локальной машине - все ок. Проверил на двух парах разных - вот такая фигня. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 11:13 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ WinnipuhAxeleronWinnipuh, Похоже на то, что надо копать в сторону ключевых слов WCF и Impersonate a client after authentication. на локальной машине - все ок. Проверил на двух парах разных - вот такая фигня.System.Transactions относится к SQL CLR. На локале небось обновил до версии 4.0 и лежит все в GAC. А на других машинах нет. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 14:58 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ skyANA, Ты б почитал сообщение ошибки сперва прежде чем отвечать - там черным по белому два раза сказано слово Impersonation. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 15:00 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Вообще не исключаю, что ошибка связано с проблемой double hop ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 15:10 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ skyANAWinnipuhпропущено... на локальной машине - все ок. Проверил на двух парах разных - вот такая фигня.System.Transactions относится к SQL CLR. На локале небось обновил до версии 4.0 и лежит все в GAC. А на других машинах нет. Не совсем так. Есть машины сервер и клиент. На сервере ставлю WCF, на клиенте NET приложение и там, и там используется net.tcp. Пускаю приложение - есть ошибка. Далее: ставлю на сервер клиентское приложение, пускаю - нет ошибки. Такая фигня, думаю, что если бы было так как описал skyANA, то ошибка бы воспроизводилась и при локальном варианте. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 15:52 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ WinnipuhskyANAпропущено... System.Transactions относится к SQL CLR. На локале небось обновил до версии 4.0 и лежит все в GAC. А на других машинах нет. Не совсем так. Есть машины сервер и клиент. На сервере ставлю WCF, на клиенте NET приложение и там, и там используется net.tcp. Пускаю приложение - есть ошибка. Далее: ставлю на сервер клиентское приложение, пускаю - нет ошибки. Такая фигня, думаю, что если бы было так как описал skyANA, то ошибка бы воспроизводилась и при локальном варианте. То что говорил skyANA, предполагалось, что на клиентской машине что-то недоустановлено в GAC. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 15:55 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ skyANAWinnipuhпропущено... на локальной машине - все ок. Проверил на двух парах разных - вот такая фигня.System.Transactions относится к SQL CLR. На локале небось обновил до версии 4.0 и лежит все в GAC. А на других машинах нет. да, но должен сказать, что эксцепция возбуждается на sqlConnection.Open(); ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 15:55 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ WinnipuhskyANAпропущено... System.Transactions относится к SQL CLR. На локале небось обновил до версии 4.0 и лежит все в GAC. А на других машинах нет. да, но должен сказать, что эксцепция возбуждается на sqlConnection.Open(); Поэтому я и говорю что у Вас проблема в возбуждении правильной имперсоны! ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 16:18 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Winnipuh, И очень вероятно, что проблема Ваша - в double hop ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.03.2015, 16:21 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ AxeleronskyANA, Ты б почитал сообщение ошибки сперва прежде чем отвечать - там черным по белому два раза сказано слово Impersonation.Написано, что не могу загрузить сборку.  ИЛИ  проблемы с Impersonation. Перечитал три раза, слово ИЛИ не исчезло :) ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 11:45 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ skyANAAxeleronskyANA, Ты б почитал сообщение ошибки сперва прежде чем отвечать - там черным по белому два раза сказано слово Impersonation.Написано, что не могу загрузить сборку.  ИЛИ  проблемы с Impersonation. Перечитал три раза, слово ИЛИ не исчезло :) Ага, сначала последствие: Код: c# 1. А потом и причина через или Код: c# 1. or Код: c# 1. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 11:49 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Axeleron, короче 1. в первый раз я читал с мобилы; 2. тупо кинуть сборку нужной версии в папку сервиса - минутное дело. HRESULT: 0x80070542 - это ERROR_BAD_IMPERSONATION_LEVEL. ИМХО эккаунту, из-под которого работает сервис надо выдать право: Act as part of the operating system . ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 11:57 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ skyANAAxeleron, короче 1. в первый раз я читал с мобилы; 2. тупо кинуть сборку нужной версии в папку сервиса - минутное дело. HRESULT: 0x80070542 - это ERROR_BAD_IMPERSONATION_LEVEL. ИМХО эккаунту, из-под которого работает сервис надо выдать право: Act as part of the operating system . тупо скинуть не проблема, но поможет ли? 1. Попытался подключиться с того же клиента к сервису на другом компьютере: получил то же сообщение, но вместо System.Transactions там System.EnterpriseServices 2. Скопировал клиента на обе машины с сервисами и локально проверил - все работает. Значит не в длл дело? 3. Возможно причина в имперсонификации. Как правильно сделать: Клиент использует net.tcp, на машине залогинен юзер1, коннектится к сервису на машине, где залогинен юзер2, сервис запущен под консолью для простоты, нужно чтобы в сервисе SqlConnection (Trusted) делался от юзера юзер1. ? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 12:14 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Winnipuh2. Скопировал клиента на обе машины с сервисами и локально проверил - все работает. Значит не в длл дело? 3. Возможно причина в имперсонификации. Как правильно сделать: Клиент использует net.tcp, на машине залогинен юзер1, коннектится к сервису на машине, где залогинен юзер2, сервис запущен под консолью для простоты, нужно чтобы в сервисе SqlConnection (Trusted) делался от юзера юзер1. ?"локально проверил" - это зашёл под собой и проверил? :) В чём проблема залогинить юзер1 вместо юзер2? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 12:22 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Winnipuh, набери в пуске "Local Security Policy", в появившемя окне в дереве выбери "User Rights Assignment". Справа в табличке втань на строку "Act as part of the operating system", нажми на правую кнопку мыши, выбери "Properties". В появившемся окошке ткни в "Add User or Group..." и добавь своего юзер2. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 12:30 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ skyANAWinnipuh2. Скопировал клиента на обе машины с сервисами и локально проверил - все работает. Значит не в длл дело? 3. Возможно причина в имперсонификации. Как правильно сделать: Клиент использует net.tcp, на машине залогинен юзер1, коннектится к сервису на машине, где залогинен юзер2, сервис запущен под консолью для простоты, нужно чтобы в сервисе SqlConnection (Trusted) делался от юзера юзер1. ?"локально проверил" - это зашёл под собой и проверил? :) В чём проблема залогинить юзер1 вместо юзер2? мы о разных вещах: 1. есть сервис, запущенный на машине2 под юзер2 2. к сервису конектится клиент1, запущенный на машине1 под юзер1_1 3. к сервису конектится клиент2, запущенный на машине1 под юзер1_2 4. сервис делает коннект к SQL Server по трастед как юзер, который к нему коннектнулся. В сервисе сделал тако1 вывод в лог: Код: c# 1. 2. 3. 4. 5. 6. 7. В логе вижу Код: c# 1. 2. 3. почти сарзу после этого вывода делаю грубо говоря так: Код: c# 1. 2. 3. 4. 5. 6. хотя данный юзер имеет права на скл сервере, собственно домен\Domain Users имеют. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 12:57 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Winnipuh, Вами описана типичная ситуация проблемы double hop ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 13:01 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ AxeleronWinnipuh, Вами описана типичная ситуация проблемы double hop Сервер работает как консольное приложение, запущенное юзер2 sqlconnection.Open() выдает эксцепцию catch (Exception x) { var windowsIdentity = WindowsIdentity.GetCurrent(); if (windowsIdentity != null) mainLogger.MainLogger.ErrorFormat("Connection: Name={0}, x={1}", windowsIdentity.Name, x.Message); Name='домен\юзер1';// !!!<-- правильный юзер, пришедший с клиента1 x= {"Login failed for user 'NT AUTHORITY\\ANONYMOUS LOGON'."} System.Exception {System.Data.SqlClient.SqlException} ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 13:24 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ та же фигня и под IIS x= {"Login failed for user 'NT AUTHORITY\\ANONYMOUS LOGON'."} System.Exception {System.Data.SqlClient.SqlException} ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 13:27 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Winnipuh, Ага, о чем и речь ведем. До сервиса исперсонация дошла, а сервис уже не подхватывает ее для конекции с БД. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 13:27 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Тут нужен не NTLM, а Keberos. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 13:28 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ Chapter 6: Impersonation and Delegation in WCF  См. параграф Controlling Impersonation on the Client Side . ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 13:43 |  | ||
| 
WCF net.tcp: не может загрузить System.Transactions | |||
|---|---|---|---|
| #18+ AxeleronWinnipuh, Ага, о чем и речь ведем. До сервиса исперсонация дошла, а сервис уже не подхватывает ее для конекции с БД. да, и? схема такая: юзер1 на машине1->wcf под юзер2 на машине2 ->sql server на машине3 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 30.03.2015, 15:36 |  | ||
|  | 

| start [/forum/topic.php?fid=19&msg=38921106&tid=1396891]: | 0ms | 
| get settings: | 10ms | 
| get forum list: | 13ms | 
| check forum access: | 3ms | 
| check topic access: | 3ms | 
| track hit: | 43ms | 
| get topic data: | 9ms | 
| get forum data: | 2ms | 
| get page messages: | 52ms | 
| get tp. blocked users: | 1ms | 
| others: | 13ms | 
| total: | 149ms | 

| 0 / 0 | 
