Программная настройка DCOM
Для программной настройки DCOM можно воспользоваться процедурами модуля BDcomPrm
DefaultProperties
Элемент | Процедура | Описание | 9x | NT |
Enable Distributed COM on this computer | IsDCOMOk | Проверяет наличие поддержки DCOM | + | + |
IsEnabledDCOM | Проверяет разрешен ли DCOM на данной машине | + | + | |
SetEnableDCOM | Разрешает DCOM на данной машине | + | + | |
IsDCOMProtocolsEnabled | Проверяет наличие протоколов DCOM | - | + | |
Default Authentication LevelDefault Impersonation Level | IsInitializeSecurityOk | Проверяет можно ли устанавливать параметры Security. Возвращает True для платформы NT и False для 9x | - | + | InitializeDefaultSecurity | Устанавливает параметры Security по умолчанию.Вызов данной процедуры необходимо поместить перед Application.Initialize в клиентской и серверной программе.Процедуру можно вызывать только один раз для текущего процесса.Процедура должна быть вызвана до первого обращения к COM-объекта, требующего маршалинга | .+ | + |
SetDefaultDCOMCommunicationProperties | Устанавливает параметры по умолчанию для Authentication Level, Impersonation Level | + | + | |
CreateRemoteComObjectEx | Определяет Authentication Level, Impersonation Level запускаемого серверного приложения.Данная процедура может использоваться вместо CreateRemoteComObject | + | + | |
Provide additional security for reference tracking | RemoveLegacySecure-References | При разрешении DCOM необходимо вызвать эту процедуру, чтобы сбросить флажок Повышенной безопасности для отслеживания ссылок | + | + |
DefaultSecurity
Элемент | Процедура | Описание | 9x | NT |
Enable remote connection | IsDCOMOk, IsEnabledDCOM, SetEnabledDCOM | + | + | |
Default access permissions | ListDefaultAccessACL | Возвращает в строке описание разрешений доступа к DCOM приложениям по умолчанию. Данное описание может быть выведено в Memo. | - | + |
ChangeDefaultAccessACL | ChangeDefaultAccessACL Изменяет параметры доступ к DCOM приложениям по умолчанию.Principal - имя пользователя (например Everyone)SetPrincipal - True добавить пользователя в список, False - удалить.Permit - разрешить параметры для указанного пользователя | - | + | |
Default launch permissions | ListDefaultLaunchACL | Возвращает в строке описание разрешений запуска DCOM приложений по умолчанию. Данное описание может быть выведено в Memo | - | + |
ChangeDefaultLaunchACL | ChangeDefaultLaunchACL Изменяет параметры запуска DCOM приложений по умолчанию - + | - | + | |
IsDefaultLaunchAccess-Allowed | Возвращает True, если разрешен запуск DCOM приложений по умолчанию. | - | + |
Application Security
Все процедуры и функции данной категории получают в качестве входного параметра AppID - CLSID объекта сервера.
Элемент | Процедура | Описание | 9x | NT |
Access permissions | ListAppIDAccessACL | Возвращает в строке описание разрешений доступа к DCOM приложению. Данное описание может быть выведено в Memo.AppID - CLSID объекта сервера. | - | + |
ChangeAppIDAccessACL | Изменяет параметры доступ к DCOM приложениям по умолчанию.AppID - CLSID объекта сервера.Principal - имя пользователя (например Everyone)SetPrincipal - True добавить пользователя в список, False - удалить.Permit - разрешить параметры для указанного пользователя | - | + | |
Default launch permissions | ListAppIDLaunchACL | Возвращает в строке описание разрешений запуска DCOM приложения. Данное описание может быть выведено в Memo.AppID - CLSID объекта сервера. | - | + |
ChangeAppIDLaunchACL | Изменяет параметры запуска DCOM приложений по умолчанию.AppID - CLSID объекта сервера. | - | + | |
IsLaunchAccessAllowed | Возвращает True, если разрешен запуск DCOM приложения. | - | + | |
AllowLaunchAccess | Разрешает запуск DCOM приложения | - | + |
Все процедуры и функции данной категории получают в качестве входного параметра AppID - CLSID объекта сервера.
Элемент | Процедура | Описание | 9x | NT |
Which user account do you want to use to run this application | IsInteractiveUser | Проверяет, используется ли для запуска приложения учетная запись взаимодействующего пользователя | - | + |
SetInteractiveUser | Устанавливает параметр: использовать для запуска приложения учетную запись взаимодействующего пользователя | - | + |
Все остальные процедуры и функции модуля BDcomPrm носят служебный характер.
Абдулин Марат
,
руководитель отдела программирования
Скачать исходные коды: (28 K)
Статьи по теме: