Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не получается вызвать WCF сервис с другого компьют 
:(
    Опции темы
cha0ss
Дата 8.9.2009, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 8.9.2009

Репутация: нет
Всего: нет



Всем здраствуйте, возникла проблема следюущего характера:
Скачал простой пример с интеренета (вложено).
Одно консольное приложение - клиент, другое - сервис. При вызове метода GetMessage соответственно появляется Helloword.
Так вот при запуске клиента и сервера на localhost все работает нормально. Стоит только поднять сервер на одном компьютере и попробовать вызвать сервис с другого компьютера выдается сообщение ошибки:

Error while using service: Сбой согласования режима безопасности SOAP с "http://
komp1:6669/MessageService" для целевого объекта "http://komp1:6669/MessageSe
rvice". Подробнее см. внутреннее исключение.

Что мешает связи между клиентом и сервисом. Заранее спасибо.

Присоединённый файл ( Кол-во скачиваний: 13 )
Присоединённый файл  Examples.Wcf.SimpleService.zip 10,18 Kb
PM MAIL   Вверх
mihryak
Дата 8.9.2009, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 731
Регистрация: 28.4.2007
Где: С-Пб

Репутация: 3
Всего: 36



связи мешают проблемы аутентификации, в данном случае надо указать user principal name в клиентском конфиге, про это как раз написано в inner exception
Цитата

"Сбой проверки подлинности интерфейса поставщика поддержки безопасности (SSPI). Возможно, сервер не запущен в контексте учетной записи с удостоверением "host/srvvolts". Если на сервере используется учетная запись некоторой службы (например сетевой службы), укажите имя ServicePrincipalName (SPN) этой учетной записи в качестве удостоверения в параметре EndpointAddress сервера. Если на сервере используется учетная запись пользователя, укажите имя UserPrincipalName этой учетной записи в качестве удостоверения в параметре EndpointAddress сервера."

Код

      <endpoint address="http://comp:6669/MessageService" name="messageServiceEndpoint" 
                contract="Blog4j.Examples.WCF.SimpleService.IMessageService" binding="wsHttpBinding">
        <identity>
          <userPrincipalName value="domain\user"/>
        </identity>
      </endpoint>


Это сообщение отредактировал(а) mihryak - 8.9.2009, 16:31
PM MAIL ICQ   Вверх
cha0ss
Дата 9.9.2009, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 8.9.2009

Репутация: нет
Всего: нет



Попробовал, не помогло. Все равно пишет такую же ошибку.
Может еще где нужно пароль прописать?
PM MAIL   Вверх
mihryak
Дата 9.9.2009, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 731
Регистрация: 28.4.2007
Где: С-Пб

Репутация: 3
Всего: 36



довольно странно, мне помогло
во внутреннем исключении текст тоже не поменялся? пользователя правильно указал? в каком отношении эти компьютеры, под одним ли пользователем запускаешь оба приложения?

вариантов аутентификации у WCF много, с паролем в том числе, но windows-аутентификация его не требует
PM MAIL ICQ   Вверх
cha0ss
Дата 9.9.2009, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 8.9.2009

Репутация: нет
Всего: нет



Создал 2 одинаковых пользователей на 2 компьютерах и стало работать и без тегов identity.
Но в моей логике приложения нужна возможность, чтобы если не получилось приконектиться с текущим пользователем система предложила окно выбора пользователь / пароль. Может в WCF есть что-то такое встроенное?
В любом случае огромное спасибо, уже долго с этой ерундой возимся.

А если не используя Windows Autentification, то что прописывать в настройках?. (Может есть источник на хорошую литературу в интернете про все эти настройки коннекта, желательно на русском. Пробовал искать ничего нормального не смог найти)

Это сообщение отредактировал(а) cha0ss - 9.9.2009, 15:06
PM MAIL   Вверх
mihryak
Дата 9.9.2009, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 731
Регистрация: 28.4.2007
Где: С-Пб

Репутация: 3
Всего: 36



Цитата(cha0ss @  9.9.2009,  16:04 Найти цитируемый пост)
Может в WCF есть что-то такое встроенное?

очень много встроенного есть, в том числе и возможность задавать произвольные креды. всё зависит от требований к сервису, и первая задача - определиться в них
WCF Security Best Practices - поможет сориентироваться

Это сообщение отредактировал(а) mihryak - 9.9.2009, 15:37
PM MAIL ICQ   Вверх
cha0ss
Дата 9.9.2009, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 8.9.2009

Репутация: нет
Всего: нет



Всем спасибо, вопрос можно считать решенным.
PM MAIL   Вверх
Google
  Дата 19.1.2020, 14:20 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




[ Время генерации скрипта: 0.1199 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.