Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Corba";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Corba";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.238 c
14-1086714684
Evgeniy_K
2004-06-08 21:11
2004.07.04
SysUtils


14-1087283760
AlexG
2004-06-15 11:16
2004.07.04
Резюме. Цель.


3-1086329624
t100
2004-06-04 10:13
2004.07.04
SQL-запрос


3-1086766094
Роман
2004-06-09 11:28
2004.07.04
Lookup поля в runtime


1-1087450688
[MATR1X]
2004-06-17 09:38
2004.07.04
ПРОГРЕСС





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский