Службы компонентов dcom. Настройка параметров по умолчанию

  • Часть 1. Установка OPC компонент, необходимых для функционирования OPC интерфейса.
  • Часть 2. Настройка DCOM и OPC. Создание пользователя и выдача прав.
  • Часть 3. Настройка брандмауэра Windows 2008 и Windows 7 для разрешения работы DCOM и OPC.
  • Часть 4. Настройка параметров DCOM. Dcomcnfg.
  • Часть 5. Настройка DCOM и OPC. Проблемы и их решение.

4. Настройка параметров DCOM

Для корректной работы OPC серверов необходимо настроить сетевые параметры и параметры безопасности DCOM.

Настройка OpcEnum не требуется, поскольку данная служба автоматически настраивается при установке "OPC Core Components".

Пример настройки параметров приведен для тестового OPC сервера "Те st OPC Server". Настройка параметров DCOM выполняется с помощью служебной команды "dcomcnfg".

Для запуска "dcomcnfg" нажмите на клавиатуре Win+ R, чтобы открыть окно запуска программ из командной строки.

Рис. 20 Запуск службы компонентов

4.1 Настройка параметров по умолчанию

Рис. 21 Свойства

Рис. 22 Безопасность COM

Кликните по кнопке №1 (рис. 22). В появившемся диалоговом окне (рис.23):

  1. Кликните на кнопке "Добавить";
  2. Добавьте группу пользователей "Пользователи DCOM", выполнив действия, аналогичные показанным на рисунках 7 – 9;
  3. Установите для нее права доступа;
  4. Сохраните изменения, кликнув по кнопке "OK".

Рис. 23 Настройка прав доступа

Повторите действия в диалоговом окне "Разрешение на запуск и активацию" (рис.24), которое появляется при клике на кнопке №2 "Изменить умолчания" (рис.22).

Рис. 24 Настройка разрешений на запуск

На закладке "Набор протоколов" (рис.25) удалите все протоколы, кроме TCP/ IP и нажмите "OK" для того чтобы сохранить изменения в диалоговом окне "Свойства: Мой компьютер".

Рис. 25 Настройка разрешений на запуск

4.2 Настройка параметров для OPC сервера

Рис. 26 Настройка DCOM для OPC сервера

Поскольку все параметры были настроены для всего компьютера, то необходимо убедиться, что OPC сервер использует параметры по умолчанию.

Рис. 27 Общие свойства OPC сервера

Рис. 28 Свойства безопасности

Рис. 29 Конечные узлы

Рис. 30 Удостоверение

На закладке "Удостоверение" необходимо указать имя пользователя, который был создан ранее, от имени которого будет запускаться OPC сервер.

Замечание 1. Перед изменением настроек OPC сервера необходимо убедиться, что он не запушен и отсутствует в списке активных процессов. Или перезапустить OPC сервер после изменения настроек.

Замечание 2. Для некоторых OPC серверов необходимо, чтобы они были запущены хотя бы один раз с правами администратора, для того чтобы зарегистрироваться в системе и инициализировать параметры OPC сервера. Только после такой инициализации они будут доступны для обнаружения через OpcEnum и подключения.

4.3 Настройка доступа к OPC серверам "Для всех"

Внимание! Разрешение доступа для всех может снизить уровень безопасности компьютера.

Иногда требуется разрешить доступ к OPC серверу для всех, включая анонимных пользователей. Например, когда компьютер с сервером не включен в домен, а к серверу будут подключаться множество клиентов.

Преимущества:

  1. Компьютер с сервером может быть не включен в домен;
  2. Не требуется создавать пользователей на компьютере с OPC сервером;
  3. Пользователи могут запускать OPC клиент от своего имени.

Недостатки:

  1. Угроза безопасности компьютера за счет разрешения удаленного доступа к DCOM для всех.

Если вы хотите дать доступ к OPC серверу для всех, то необходимо настроить индивидуальные права доступа для выбранного OPC сервера.

Откройте настройки DCOM для OPC сервера, как показано в разделе 4.2 и модифицируйте их согласно рис.31 – рис.34. Остальные опции должны соответствовать параметрам, указанным в разделе 4.2.

Рис. 31 Общие свойства

Рис. 32 Свойства безопасности

Рис. 33 Разрешения на запуск и активацию

Рис. 34 Права доступа

Необходимо настроить локальную политику безопасности. Для этого необходимо открыть консоль управления "Локальная политика безопасности". Консоль можно запустить, выполнив "Пуск" - "Администрирование" - "Локальная политика безопасности". Необходимо перейти в раздел "Локальные политики: Параметры безопасности". И установить состояние правила "" в состояние "Включено" (рис. 35).

Рис. 35 Свойства политики безопасности

Если после изменения политики безопасности, как показано на рис. 35, OPC клиенты не могут получать список OPC серверов и подключаться к ним, то необходимо настроить и сохранить дополнительные свойства политики безопасности (рис. 36-37).

Рис. 36 DCOM: ограничения на доступ

Рис. 37 DCOM: ограничения на запуск

Процесс добавление группы пользователь подробно показан в разделе 2.2.

Код события 10016 DistributedCOM Windows 10 Ошибка - одна из самых известных проблем, с которой пользователи сталкиваются в системном журнале. Эта ошибка запускается, когда определенные процессы не содержат прав доступа к компонентам DCOM, которые упоминаются в журналах событий. Это ограничивает безупречную работу компьютера, что в конечном итоге раздражает пользователей. Система сразу же забивает "Просмотрщик событий" тысячами сообщений с показам событий.

В ходе расследования выясняется, что при попытке запустить сервер DCOM с помощью приложения у вас нет никаких прав на это, и вы получите приведенную ниже ошибку в средстве просмотра событий: "Параметры разрешений для конкретного приложения не дают разрешения Локальной Активации для приложения COM-сервера ". Чтобы иметь четкую концепцию и избежать ошибок, мы разделим всю процедуру на четыре последовательных раздела. Давайте перейдем к ним сразу. Мы сосредоточимся на решении этой досадной ошибки в журнале событий "код события 10016 DistributedCOM Windows 10 ", следуя приведенным ниже инструкциям.

Перед тем, как приступить к исправлению создайте точку восстановления системы .

Исправление кода события 10016 Ошибки DistributedCOM

Проверка процесса

Шаг 1 . Прежде всего должны отсортировать процесс или службу, связанную с кодом ошибки 10016. Далее вы найдете описание ошибки чуть ниже во вкладке "общие" или "подробности". Из описания скопируйте CLSID. Он может выглядеть как {D63B10C5... .

Шаг 2 . Отроем теперь редактор реестра. Нажмите сочетание кнопок Win+R и введите regedit .

  • В редакторе реестра выделите "Компьютер" одним нажатием мышки и нажмите "Правка " > "Найти ".

  1. Введите в поле поиска свой CLSID ключ, который типа {D63B10C5... . Поставьте галочку искать только "имена разделов".
  2. Вам выдаст ключ в правой стороне, выделите его мышкой один раз.
  3. В правом поле у вас будет ключ "По умолчанию" со значением RuntimeBroker . Запомните это значение оно нам пригодится в дальнейшим.

Следующая задача - запустить сценарий, чтобы внести некоторые изменения в раздел разрешений, найденных в службах компонентов для этой службы.

Открытие сервисов компонентов

  • Наберите в поиске windows "Службы компонентов ", нажмите правой кнопкой мыши и выберите запустить от имени администратора .

  • Перейдите по следующему пути Службы компонентов > Компьютеры > Мой компьютер > Настройка DCOM > и найдите в списке RuntimeBroker .

В некоторых случаях может быть два файла с этим именем. Вам нужно выяснить, какой файл несет ответственность за ошибку, что ниже мы и сделаем.

  1. Нажмите по очереди на двух файлов с именем RuntimeBroker правой кнопкой мыши выберите "Свойства ".
  2. Во вкладке "Общие" у вас будет "Код приложения " запомните его на двух файлах RuntimeBroker .
  3. Сравните код с ошибкой в "Журнале событий". APPID в журнале с ошибкой, должен соответствовать коду приложения в файле RuntimeBroker.

Исправление разрешений

Наконец, когда вы удостоверились, что это именно тот файл выдает ошибку, то проделайте следующие шаги:

  • Нажмите в свойствах RuntimeBroker вкладку "Безопасность ".
  • Кнопка "настроить " должна быть активной.
  • Проделайте ниже шаги чтобы активировать настройки. (Не Запуск сценария PowerShell).

Запуск сценария PowerShell активирует эту кнопку настройки с помощью команды, но я рекомендую воспользоваться этим способом, если у вас не получилось все по порядку. Пропустите этот шаг "Запуск сценария PowerShell", если что потом вернетесь к нему.

Запуск сценария PowerShell

Чтобы обойти эту ошибку, вам нужно отредактировать некоторые разрешения в разделе "Служба компонентов" ключа RuntimeBroker . Прежде чем перейти к модификации, вам нужно запустить скрипт, который поможет вам изменить разрешения. Дальше поймете зачем мы это делали.

Шаг 1 . Нажмите сочетание кнопок Win+X и выберите Windows PowerShell (администратор) .

Шаг 2 . Загрузите файл с кодом ниже. Разархивируйте скаченный архив, в нем содержится текстовый файл с кодом.

Шаг 3 . Вставьте скаченный скрипт с файла в командную строку PowerShell.

  • 1-2. Скопируйте "Код приложения " в службах и компонентах, компонента RuntimeBroker.
  • 3. Откройте редактор реестра, нажмите "правка" > "найти" и вставьте код приложения, который до этого скопировали. Нажмите правой кнопкой мыши на найденным ключе в реестре и выберите "Разрешения ".
  • 4. далее в окне нажмите "Дополнительно ".

  1. В окне сверху "Владелец" нажмите "Изменить ".
  2. В следующим окне нажмите внизу "Дополнительно ".
  3. Нажмите справа "Поиск " и ниже со списка выберите "Администраторы ".

  • Теперь переходим обратно в компоненты к свойству файла RuntimeBroker и мы видим, что теперь кнопка "настроить " стала интерактивной.
  • Выскочит предупреждающее окно нажмите Удалить , если вам не мог код сценария powerShell.
  • Нажмите Отмена , если вам помог код сценария powerShell.
  • Нажмите Изменить напротив кнопки "настроить" в графе "разрешения на запуск и активацию".

Добавим группы система и local service .

  1. В окне, где имеются учетные записи нажмите "Добавить ".
  2. Ниже кнопка "Дополнительно ".
  3. Нажмите "Поиск " с боку.
  4. Найдите локальную службу LOCAL SERVICE и нажмите OK.

  • Аналогичным способом, что описан выше добавьте "Система ".

  • Теперь у вас появились две группы система и local service , нажмите на каждую из них и поставьте галочки в пунктах "Локальный запуск" и "Локальная активация".

Перезагрузите компьютер, ноутбук и код события 10016 Ошибка DistributedCOM должен пропасть.

В чем заключается настройка DCOM OPC? Для корректной работы OPC серверов по сети, необходимо настроить сетевые параметры и параметры безопасности DCOM.

Настройка DCOM для компьютера

Distributed Component Object Model (DCOM) - это протокол, с помощью которого компоненты программного обеспечения поддерживают связь по сети. Модель DCOM (прежнее название - «Network OLE») может использовать несколько сетевых транспортов, включая протоколы Интернета (например, протокол HTTP).

Поддержка DCOM встроена в Windows, начиная с версии Windows NT 4.0.

Первым шагом к настройке DCOM OPC всегда является для работы с OPC. Если у вас пользователь настроен, то приступим к настройке сети и параметров безопасности.

В данном разделе нужно настроить свойства DCOM по умолчанию на сервере, чтобы «все работало». Приступим.

1. Запустим окно настройки DCOM

Настройка параметров DCOM выполняется с помощью служебной команды «dcomcnfg». Для запуска «dcomcnfg» нажмите на клавиатуре Win+R, чтобы открыть окно запуска программ из командной строки.

Откроется окно Службы компонентов , в котором нужно будет раскрыть список Службы компонентов , а затем и список Компьютеры , где мы увидим еще один вложенный список Мой компьютер , на который нужно нажать правой кнопкой мыши и выбрать пункт меню Свойства .

2. Настройка свойств компьютера для DCOM


В появившемся окне свойств выбираем вкладку Свойства по умолчанию и устанавливаем следующие настройки:


  1. Галка Разрешить использование DCOM на этом компьютере - без нее DCOM работать не будет.
  2. В Уровень проверки подлинности по умолчанию выбираем Подключиться .
  3. В Уровень олицетворения по умолчанию выбираем Определить .

После жмем кнопку OK . Система может предупредить о том, что будут изменены свойства DCOM - соглашайтесь. Окно Службы компонентов не закрывайте, оно нам еще понадобится.

Те же настройки необходимо провести и на клиенте за исключением пунктов 3.2 и 3.3 - они не повлияют на работу, но и не повредят. Самое главное, чтобы DCOM был разрешен.

Настройка безопасности DCOM

Переходим на вкладку Безопасность и устанавливаем умолчания на права доступа и на запуск и активацию.


Кликните по кнопке №1. В появившемся диалоговом окне:

  1. Кликните на кнопке «Добавить»;
  2. Добавьте группу пользователей "Пользователи DCOM
  3. Установите для нее права доступа;
  4. Сохраните изменения, кликнув по кнопке «OK».

Повторите действия в диалоговом окне «Разрешение на запуск и активацию» которое появляется при клике на кнопке №2 «Изменить умолчания».


На вкладке Набор протоколов должен быть только один протокол, как на скриншоте


Настройка DCOM для OPC Enum

Настройка OPC Enum по умолчанию

Если вы настроили умолчания для компьютера, то чаще всего эта настройка не нужна. Нужно только убедиться, что все настройки выставлены так, как надо.




Настройка OPC Enum вручную

Но иногда почему-то настройки по умолчанию не работают. Тогда настраиваем DCOM для OPC Enum вручную.

Служба OpcEnum отвечает за отображение OPC-серверов. Если ее настроить некорректно, то при браузинге серверов, вы не увидите ничего, кроме ошибок. Эту службу нужно настроить на сервере.


Вкладка Общие

Откроется окно свойств, и во вкладке Общие в списке Уровень проверки подлинности выбрать Подключиться .

Вкладка Размещение

Во вкладке Размещение должен быть выбран пункт Запустить приложение на данном компьютере . Остальные галки должны быть сняты.



Вкладка Безопасность

Во всех трех случаях выбираем пункт Настроить , т.е. у нас должны быть активны три кнопки Изменить .



Открываем окошко Разрешение на изменение настроек .

В этом окне точно так же добавляем группу и разрешаем ей Полный доступ и Read - они ставятся одновременно и снимаются так же. Жмем OK .


Вкладка Удостоверение

Переходим ко вкладке Удостоверение окна свойств OpcEnum.

Для службы OpcEnum возможно два варианта запуска:


Определившись нажимаем OK и переходим к перезапуску службы OpcEnum. Это можно сделать из того же окна: слева выбираем Службы (локальные) , справа в списке ищем OpcEnum, выбираем и перезапускаем нажатием на появившуюся ссылку.


  1. Дожидаемся перезапуска службы и переходим к клиенту.
  2. На клиенте запускаем OPC-клиент и пытаемся искать OPC-сервера на компьютере OPC-сервера.

Но при попытке достучаться до тэгов прилетает отказ. Этого следовало ожидать, ведь мы еще не настраивали наш OPC сервер.

Настройка DCOM для OPC сервера

Мы вплотную подобрались к настройке ПО, которое будет выдавать нам теги на клиенте. Настройка не сильно отличается от процедуры, описанной в предыдущем разделе.