Настройка системы безопасности DCOM сервера
Алексей Вуколов
Как я понял, основная проблема в DCOM, с которой сталкиваются разработчики - настройка системы безопасности. Далее описано, как были сделаны настройки безопасности у меня.
Создана группа, в которую включены пользователи, которым нужен доступ к данному DCOM серверу (назовем ее DCOM_DEBUG).
В DCOMCNFG : (это было добавлено и на сервере и на клиенте)
DefaultSecurity -> Default Access Permissions
DCOM_DEBUG: Allow Access
SYSTEM: Allow Access
Everyone: Allow Access
2.DefaultSecurity -> Default Launch Permissions
DCOM_DEBUG: Allow Launch
SYSTEM: Allow Launch
INTERACTIVE: Allow Launch
Everyone: Allow Launch
3.DefaultSecurity -> Default Configuration Permissions
SYSTEM: Full Control
DCOM_DEBUG: Full Control
Everyone: Full Control
Установка этих параметров необходима, по-моему, потому, что контекст безопасности интерфейса передаваемого на сервер для нотификации клиента берется из установок по умолчанию.
Только на сервере.
Установки параметров безопасности для объекта были установлены точно такие же, за исключением того, что Everyone включена не была. На вкладке Identity был выбран пользователь, от имени которого запускается COM сервер. Одна тонкость: у пользователя, от имени которого запускается COM сервер должно быть право "Log on as batch job", иначе сервер не запустится (это право было дано всей группе DCOM_DEBUG). Если выбрать Interactive User, то сервер не запустится, в том случае если пользователь делает Logoff. В случае с Launching User происходили какие-то невнятные проблемы (видимо это было связано со спецификой решаемой мной задачи - DCOM сервер с поддержкой множественных клиентских соединений).