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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Server на C#: RPC SOAP XML-RPC SSL, Хочу RPC, но через SSL 
V
    Опции темы
JohnWest
  Дата 22.11.2007, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Так вот. Мне нужно сделать сервер, который будет разпаковывать XML-RPC или SOAP запросы на исполнение кода. В ответ он убдет запаковывать в такойже формат ответ.
Сделать через HTTP смог. Но как включить аутентификацию клиентом сервера, и наоборот? плюс шифровать поток например через SSL ?  smile 
Неделю куру, никак не вкурю. Как вариант, думаю сделать TcpListener и SslStream и сам пак/депак объектов делать. Но клиент хочет быть стандартным. Т.е. юзать например SOAP. Вот я и не знаю, как сделать его стандартным. Самому эмулировать работу Web сервера?  smile 

Есть предложение сделать приложение, которое будет WEB сервер запускать через CGI, но это не то. Хочу обособленную вещь.

Это сообщение отредактировал(а) JohnWest - 22.11.2007, 14:15
PM MAIL WWW ICQ Skype   Вверх
Experimenter
Дата 22.11.2007, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



JohnWest, приветствую на форуме!
Цитата

Но как включить аутентификацию клиентом сервера, и наоборот? плюс шифровать поток например через SSL ?

Для работы по SSL я использую стандартный код обмена с применением HttpWebRequest-HttpWebResponse, единственный момент - перед началом работы приложения по HTTPS необходимо зайти на нужный сайт через IE и вручную установить в системе предложенный сертификат. После этого твое приложение будет работать по SSL так же, как по открытому протоколу (я имею в виду без дополнительных усилий). Шифровать самому тоже ничего не нужно, протокол сам все зашифрует. Так что стандартность обеспечена.

Это сообщение отредактировал(а) Experimenter - 22.11.2007, 19:36


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
JohnWest
Дата 22.11.2007, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Т.о.  мне его надо будет захостить под IIS, так? А я хочу свой сервер.
Код

ChannelServices.RegisterChannel(channel, true);

сделать нельзя, т.к. 
Цитата

Setting ensureSecurity to true throws a RemotingException for  TcpServerChannel on win98 (Since secure tcp channel is not supported on wi9x)  , and for Http Server Channel on all platforms (Users need to host service in IIS if they want secure http channel). 

Получается придется делать TcpListener и ручками ПОСЛЕ аутентификации эмулировать web среду.
Надо через https сделать возможность передачи SOAP или XML в чистом виде... Это я могу. Но я хотел через SSL сделать Remoting. Ведь он по дефолту по чистому каналу тока работает.
Вощем курю... Спасибо за камент... Технологии мной пока не изучены. Возможно чето недопонимаю, но основная идея это сделать Remoting через шифрованный канал. Чтобы в идеальном случае это было двустороннее айтентифицирование. Сервер узнал клиента, клиент доверяет именно этому серверу.
PM MAIL WWW ICQ Skype   Вверх
JohnWest
Дата 23.11.2007, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



сделал "aspnet_regiis.exe -i", но это мелочи.

Короче выработал такую технологию: Создал WebService. Он все общение оборачивает в SOAP.
Все обрабатываемые запросы будут через Remoting выполнятся в основной проге, которая тоже висит всегда (ведет свою простейшую базу данных и работает с другим софтом через API. )
Собсно, все вопросы шифрования и аутентификации ложаться на IIS. Прога тока данными манипулирует.

Мешпроцессорное взаимодействие думаю сделать на IPC технологии с BinaryFormatter. Будет быстро и просто. имхо.
Вопос безопасности рекомендуют просто решить локальной политикой юзеров.

Получается стандартный WebService по стандартному протоколу гоняет данные, все вызовы по IPC перенаправляет в реальный сервер, который мутит данные. 

Немного громоздко, увы... Умнее решения пока не нашел...
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

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

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

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


 




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


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

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