Вниз
Скачать: CL | DM;

Manage clients   Найти похожие ветки 

 
Dmitry Borisovets   (2002-03-19 11:52) [0]

Есть вопрос из области понимания CORBA.
Ситуация: есть один сервер и много клиентов. Есть ли способ, позволяющий определять конкретного клиента на уровне CORBA, либо же надо делать это вручную?


 
Олег Лаукарт ©   (2002-03-26 10:33) [1]

Хочу поддержать вопрос. Он уже поднимался в конференции несколько раз. Речь шла про определение ip адреса клиента, про обеспечение безопасности и прочее. Насколько я столкнулся на практике, практически всегда эти вопросы вызваны необходимостью идентификации пользователя, подтверждения его прав доступа и определения контекста доступа. Также этот вопрос поднимается при необходимости поддержки транзакций.
Насколько я понимаю, несмотря на то, что корба работает поверх TCP/IP (IIOP), тоесть есть возможность определить по-крайней мере задекларированного отправителя, не предоставляет возможности определить корба-клиента. Причины мне кажется такие: на одной машине может быть сколько угодно клиентов (с разными правами и т.д. и т.п.); один клиент может получать доступ с разных адресов; ну и наконец упомянутое выше отсутствие в TCP/IP безопасности.
Насколько я знаю в корбе специфицирован сервис безопасности, но он еще сырой и не понятно, есть ли реализации. Кто может что-нибудь рассказать про него, было бы очень интересно услышать.
Я решаю подобную задачу вручную. Схема чем-то похожа на cookies. Клиент регистрируется на сервере, в ответ, тот ему возвращает "контекст", который может включать в себя информацию про клиента (идентификационный код по которому можно получить права и проч.), состояние транзакции, и другое. Для обеспечения минимальной безопасности все это может шифроваться. Клиент при запросах передает этот "контекст" как inout параметр, а сервер при выполнении действий обновляет его содержимое. Проблема, что эту схему нельзя использовать если появляются oneway вызовы. Выход - "контекст" содержит только идентификатор, а содержимое хранится все время на сервере (в базе, кеше...). Но тут тоже есть нюансы. В приведенной схеме есть один огромный недостаток - она применима только для "закрытых" систем, где есть гарантия в "добропорядочности и честности" клиентов - никто не гарантирует, что клиент не передаст свой "контекст" другому, либо не исправит/испортит/.. его.
Хотелось бы услышать кто как решает поднятую задачу.


 
Олег Лаукарт ©   (2002-03-26 11:00) [2]

Тема поднята в "дискуссиях".



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
3-1086329624
t100
2004-06-04 10:13
2004.07.04
SQL-запрос


14-1087291633
Layner
2004-06-15 13:27
2004.07.04
Простого клиента для 1С MS SQL 2000 базы, реально написать?


14-1087001503
cemick
2004-06-12 04:51
2004.07.04
Хотелось бы услышать мнение на счет Borland Delphi 8


8-1082548854
xman
2004-04-21 16:00
2004.07.04
SPEECH.PAS


1-1087313543
vajo
2004-06-15 19:32
2004.07.04
PopupMenu на иконке в трее.




   Наверх