tag:blogger.com,1999:blog-5092972944722879737.post7262519730111469612..comments2023-06-06T13:29:57.630+03:00Comments on Stump's Workshop: Web сервис и протокол HTTPS (SSL)Sergey Rozovikhttp://www.blogger.com/profile/13717493609449785600noreply@blogger.comBlogger12125tag:blogger.com,1999:blog-5092972944722879737.post-74342010383047795592010-07-16T13:35:20.898+04:002010-07-16T13:35:20.898+04:00Спасибо..так подробно описано.
У вас ошибочка в аб...Спасибо..так подробно описано.<br />У вас ошибочка в абзаце:<br />При этом в кач.. не <b>казано</b>. В пос...sad comradehttps://www.blogger.com/profile/06849492523603983047noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-15047746363915551322009-03-25T11:23:00.000+03:002009-03-25T11:23:00.000+03:00SuperSuperdimahttps://www.blogger.com/profile/15055351836426160972noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-59640341268250695762008-05-14T09:39:00.000+04:002008-05-14T09:39:00.000+04:00Все верно. Наши приложение становится клиентом для...Все верно. <BR/>Наши приложение становится клиентом для приложения Б. <BR/><BR/>А потом мы становимся сервером на который посылается Пост запрос от приложения Б и от нас требуют серверный сертификат.<BR/>Что в этом случае?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-46241735755735645862008-05-13T14:55:00.000+04:002008-05-13T14:55:00.000+04:00Что значит "С этого приложения осущевстляется реди...Что значит "С этого приложения осущевстляется редирект на другое внешнее веб-приложение"? <BR/>Вы делаете новый запрос или редиректите поступивший от клиента запрос?<BR/>Судя по тому, что "требует от нашего клиентский сертификат.Эту часть реализовали", вы делаете новый запрос. Т.е. теперь ваше приложение выступает в роли клиента к другому серверу. Если для этого соединения требуется SSL - чудесно. Указывайте в адресе "https" и вперед. <BR/>Не путайте клиентский и серверный сертификаты. Серверный сертификат используется для организации сесии SSL. А клиентский используется только для аутентификации клиента на сервере.Sergey Rozovikhttps://www.blogger.com/profile/13717493609449785600noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-83632736076910359622008-05-13T14:26:00.000+04:002008-05-13T14:26:00.000+04:00Здравствуйте Сергей.У меня такая ситуаця:Стоит при...Здравствуйте Сергей.<BR/><BR/>У меня такая ситуаця:<BR/>Стоит приложение веб, на нем настроен ССЛ.<BR/>С этого приложения осущевстляется редирект на другое внешнее веб-приложение, которое требует от нашего клиентский сертификат.Эту часть реализовали, но проблема случается когда внешнее приложение требует от нас тоже ССЛ. <BR/><BR/>Что в таком случае делать? <BR/><BR/>IIS ведь поддерживает только один сертификат.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-30513765097965361852008-02-06T12:02:00.000+03:002008-02-06T12:02:00.000+03:0006.02.2008Устранил некоторые неточности и добавил ...06.02.2008<BR/>Устранил некоторые неточности и добавил описание обработки ошибок сертификатов.Sergey Rozovikhttps://www.blogger.com/profile/13717493609449785600noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-88749935262511553422007-04-26T17:29:00.000+04:002007-04-26T17:29:00.000+04:00> получается что проксикласс для доступа к методам...> получается что проксикласс для доступа к методам вебсервиса может работать без выставленного сертификата, <BR/><BR/>Да, в принципе может. <BR/><BR/>> И второе, правильно ли я понимаю - использование SSL не влияет на способ/процесс аутентификации.<BR/><BR/>Тоже верно. Аутентификация не входит задачи протокола SSL. Он просто обеспечивает установление защищенного канала к конкретным клиентом.Sergey Rozovikhttps://www.blogger.com/profile/13717493609449785600noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-43792612203743102292007-04-26T17:23:00.000+04:002007-04-26T17:23:00.000+04:00Согласен, что выставить адрес сервиса было не лучш...Согласен, что выставить адрес сервиса было не лучшей идеей (это как нибудь правиться?), просто опыт общения в сети показывает, как часто бывает трудно тому, кто выступает в роли "вопрошающего", соблюсти в вопросе баланс между деталями и "глобальными" проблемами. Я понимаю что, от обилия деталей рябит в глазах и закрадывается подозрение, что вас просят "решить задачку".<BR/><BR/>Если без персоналий, получается что проксикласс для доступа к методам вебсервиса может работать без выставленного сертификата, если этот сертификат уже установлен на клиентском компьютере? То есть описанный у Вас способ просто позволяет снять с пользователя обязанность установки сертификата в хранилище. <BR/>И второе, правильно ли я понимаю - использование SSL не влияет на способ/процесс аутентификации. SSL – это только шифрованный трафик, плюс проявление доверия к корневому центру сертификации? :)<BR/>Спасибо.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-27079204903151981302007-04-26T16:06:00.000+04:002007-04-26T16:06:00.000+04:00Мне бы не хотелось коментировать в публичном блоге...Мне бы не хотелось коментировать в публичном блоге реально работающий сервис обмена данными известного ретейлера :)<BR/>Можно рассматирвать его в качестве примера того, как не надо делать такие сервисы. Одно только отсутствие Xml namespace у сервиса говорит о том, что тот кто его делал имеет весьма поверхностное представление о предмете. <BR/>Вам лучше обратиться в поставщику сервиса за разьяснениями протокола работы с ним.<BR/>Удачи.Sergey Rozovikhttps://www.blogger.com/profile/13717493609449785600noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-44572072785766847562007-04-26T15:19:00.000+04:002007-04-26T15:19:00.000+04:00Сергей!Я столкнулся с ситуацией которая отличается...Сергей!<BR/>Я столкнулся с ситуацией которая отличается от описанной вами схемы работы с сервисами по htpps. А именно - есть сторонний сервис https://<BR/>dip.7cont.ru/DataExch/DataExchangeService.asmx, для меня черный ящик с интерфейсом, есть мой прокси класс созданный визардом VS. На компьютере где запускается клиент устновлен сертификат сервера(или может быть точнее сказать - сертификат клиента полученный от сервера?), т.е. iexplorer открывает страницу сервиса без каких либо предупреждений. Странность в том, что два метода вебсервиса (из порядка 40) работают без "зарядки" экземпляра прокси<BR/>- ни сертификатом<BR/>//srv.ClientCertificates.Add(cr) <BR/>- ни NetworkCredential<BR/>//srv.Credentials = new NetworkCredential<BR/>Методы это самые простые - один типа HelloWorld, другой возвращает DataSet с информацией о сервисе. Т.е. на этом этапе можно рассуждать так – сервис не требует аутентификации, а ssl лишь обеспечивает шифрование канала (сертификат на компьютере пользователя установлен и используется прозрачно для программы-клиента).<BR/><BR/>Дальше, пробуем вызвать другие методы, но уже требующие lgoin (без пароля!!!) в качестве параметра. Получаем сообщение – Server was unable to process request. ---> Access denied! Что за дела? Обращаемся за помощью к поисковикам и находим среди прочего и вашу статью. <BR/><BR/>Дальше, сформулировать проблему становится сложновато. Все похоже на набор разрозненных фактов из которых ни как ни сложиться хоть какая-то картина.<BR/>У меня самого есть небольшой опыт разработки вебсервисов и клиентов к ним, в частности я использую на IIS аутентификацию windows (без SSL), внешнее проявление которой – запрос пароля пользователя стандартными средствами ОС при попытке доступа к странице вебсервиса с помощью iexplorer-a. Вебсервис о котором идет речь – пускает к своей странице всех у кого установлен его сертификат без запроса какого либо пароля. Но мы знаем точно, что логин и пароль используются системой, частью которой является этот сервис, т.к. в нашем распоряжении есть программа-клиент написанная разработчиком самого сервиса и в его настройках необходимо прописать логин и пароль (к слову - сам разработчик сейчас не доступен). Можно предположить что используется собственный механизм аутентификации, но был случай когда пользователь сбил настройки программы-клиента и сделал несколько попыток обращения к сервису, после чего, даже восстановление настроек не привели к работоспособности клиента - Server was unable to process request. ---> Access denied! и все. Звонок в техподдержку держателя сервиса дал понять что «учетная запись заблокирована после нескольких неудачных попыток входа» - больше похоже на поведение стандартной политики windows. Еще – ни один из методов не требует пароля в качестве параметра! Для схемы используемой и упомянутой мной (с windows аутентификацией) такое возможно, пароль передается при установлении самого соединения, через CredentialCache или NetworkCredential. Тут же, если это случай с собственной схемой аутентификации или, возможно, аутентификации на уровне SQL сервера, на какой-то стадии необходимо передать пароль.<BR/>Сергей! буду благодарен если вы прокомментируете этот "случай".Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-28459805869017234542006-12-14T17:39:00.000+03:002006-12-14T17:39:00.000+03:00Спасибо. Поправил ссылочку.Спасибо. Поправил ссылочку.Sergey Rozovikhttps://www.blogger.com/profile/13717493609449785600noreply@blogger.comtag:blogger.com,1999:blog-5092972944722879737.post-84048982189335357062006-12-14T17:32:00.000+03:002006-12-14T17:32:00.000+03:00IIS6 Resource Kit Tools:
http://www.microsoft.com...IIS6 Resource Kit Tools:<br /><br />http://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&DisplayLang=envadhttps://www.blogger.com/profile/07539619158783345146noreply@blogger.com