Подключаемый модуль удаленного управления Windows (WinRM) должен быть зарегистрирован в каталоге WinRM, чтобы инфраструктура могла динамически определять набор доступных подключаемых модулей и URI ресурсов , которые они поддерживают. Все URI ресурсов для подключаемых модулей WinRM должны соответствовать формату, определенному в RFC 3986 (https://www.ietf.org/rfc/rfc3986.txt). Настройка выполняется с помощью службы WinRM main.
Следующая команда регистрирует конфигурацию подключаемого модуля в службе WinRM:
В следующем списке более подробно описаны XML-элементы, за которым следует схема конфигурации, указанная в виде XSD.
PlugInConfiguration/OperationsConfiguration
Указывает имя файла подключаемого модуля операций. Все переменные среды, помещенные в эту запись, будут развернуты в контексте пользователей при поступлении запроса. У каждого пользователя может быть другая версия одной и той же переменной среды, поэтому у каждого пользователя может быть отдельный подключаемый модуль. Эта запись не может быть пустой и должна указывать на допустимый подключаемый модуль.
PlugInConfiguration/Имя
Указывает отображаемое имя, используемое для подключаемого модуля. Если из подключаемого модуля возвращается ошибка, это имя будет помещено в XML-код ошибки, возвращаемый клиентскому приложению. Это имя может быть на любом языке.
PlugInConfiguration/Архитектура
Указывает, является ли подключаемый модуль операций 32-разрядным или 64-разрядным. Если этот элемент не указан, значение по умолчанию будет равно "32" в системах x86 и "64" в 64-разрядных системах. Для систем x86 единственным допустимым значением является "32". Если в 64-разрядной системе значение равно "32", при вводе сведений об имени файла необходимо учитывать перенаправление wow64. Базовая файловая система будет использовать перенаправление wow64 для преобразования system32 в syswow64. Например, если имя файла — "%windir%\system32\myplugin.dll", а архитектура — "32", фактический файл подключаемого модуля находится в папке "%windir%\syswow64\myplugin.dll".
PlugInConfiguration/XmlRenderingType
Настраивает формат, в котором XML передается в подключаемые модули через объект WSMAN_DATA . Доступны следующие типы.
Текст
Входящие XML-данные содержатся в структуре WSMAN_DATA_TYPE_TEXT, которая представляет XML в виде буфера памяти PCWSTR .
Xmlreader
Входящие XML-данные содержатся в структуре WSMAN_DATA_TYPE_WS_XML_READER, которая представляет XML в виде объекта XmlReader , который определен в файле заголовка WebServices.h.
PlugInConfiguration/InitializationXml
Этот узел является необязательным и позволяет подключаемым модулям настраивать дополнительный XML-код, который будет передаваться в метод WSManPluginStartup. Большинству подключаемых модулей эта дополнительная информация не требуется, но если подключаемый модуль необходимо использовать в нескольких сценариях, требующих разной семантики времени выполнения, этот XML-код предоставит подключаемым модулям гибкость для этого.
PlugInConfiguration/Ресурсы
Указывает список URI ресурсов, поддерживаемых этим подключаемым модулем. Необходимо указать хотя бы одну запись ResourceUri; в противном случае XML-код будет отклонен.
Атрибуту SupportsOptionsможно присвоить значение false. Если свойство SupportsOptionsимеет значение false, этот атрибут не отображается при перечислении ресурса.
PlugInConfiguration/Ресурсы/Ресурсов/ResourceUri
Указывает полный или частичный URI ресурса на основе атрибута ExactMatch . Если exactMatch отсутствует, по умолчанию используется значение False. Это означает, что обработчик SOAP WinRM выполнит частичное совпадение с начальным универсальным кодом ресурса (URI ) и при наличии совпадения передаст его в подключаемый модуль. Атрибут SupportsOptions можно указать, если для этого URI ресурса разрешено передавать любые параметры. По умолчанию параметры не поддерживаются, и если они присутствуют в клиентском запросе, будет возвращена ошибка. Если параметры поддерживаются подключаемым модулем, важно, чтобы подключаемый модуль возвращал правильную ошибку при наличии параметра, который подключаемый модуль не понимает, когда флаг mustUnderstand имеет значение True.
PlugInConfiguration/Ресурсы/Ресурсов/Возможность
Указывает возможность, доступную по этому URI ресурса. Для каждого типа операции, которую она поддерживает, будет одна запись. Доступны следующие варианты:
Получить
Операции получения поддерживаются в URI ресурса. Атрибут SupportFragment используется, если операция получения поддерживает концепцию . Атрибут SupportFiltering недопустим и должен иметь значение false. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Положить
Операции Put поддерживаются в URI ресурса. Атрибут SupportFragmentиспользуется, если операция put поддерживает концепцию . Атрибут SupportFiltering недопустим и должен иметь значение False. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Создать
Операции создания поддерживаются в URI ресурса. Атрибут SupportFragment используется, если операция создания поддерживает концепцию . Атрибут SupportFiltering недопустим и должен иметь значение False. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Удалить
Операции удаления поддерживаются в URI ресурса. Атрибут SupportFragment используется, если операция удаления поддерживает концепцию . Атрибут SupportFiltering недопустим и должен иметь значение False. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Вызова
Операции вызова поддерживаются в URI ресурса. Атрибут SupportFragment не поддерживается для операций вызова и должен иметь значение false. Атрибут SupportFiltering недопустим и должен иметь значение False. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Перечисления
Операции перечисления поддерживаются в URI ресурса. Атрибут SupportFragment не поддерживается для операций перечисления и должен иметь значение False. Атрибут SupportFiltering является допустимым , и если подключаемый модуль поддерживает фильтрацию, этот атрибут должен иметь значение True. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Подписаться
Операции подписки поддерживаются в URI ресурса. Атрибут SupportFragment не поддерживается для операций подписки и должен иметь значение False. Атрибут SupportFiltering недопустим и должен иметь значение False. Эта возможность недопустима для URI ресурса , если также поддерживаются операции оболочки.
Оболочки
Операции оболочки поддерживаются в URI ресурса. Атрибут SupportFragment не поддерживается для операций оболочки и должен иметь значение False. Атрибут SupportFiltering недопустим и должен иметь значение False. Эта возможность недопустима для URI ресурса , если также поддерживается любая другая возможность операций. Если возможность операции оболочки настроена для URI ресурса, операции get, put, create, delete, invoke и enumerate обрабатываются внутри службы WinRm для управления оболочками. В результате подключаемый модуль не может работать с самими операциями.
PlugInConfiguration/Ресурсы/Ресурсов/Безопасности
Этот элемент определяет дескриптор безопасности (с помощью атрибута Sddl ), который должен применяться для определения доступа к определенному URI ресурса (через атрибут Uri ). Если exactMatch отсутствует, элемент Security по умолчанию имеет значение False. Это означает, что Sddl применяется ко всем URI ресурсов , которые совместно используют URI в качестве префикса. Если для параметра ExactMatch задано значение true, sddl применяется только к точно указанному URI . При наличии нескольких записей безопасности , которые могут применяться к определенным URI ресурсов, для определения соответствующего sddl используется самое длинное совпадение с префиксом. В результате совпадения с самым длинным префиксом, если существует запись URI с точным соответствием, она всегда будет выбрана в качестве соответствующего элемента Безопасности.
Ниже приведена схема конфигурации подключаемого модуля, указанная в виде XSD.
The purpose of this module is to provide an in-depth overview of plug-ins as it relates to Microsoft Power Platform development. This module will review how and when plug-ins are implemented, how they're registered and deployed, and the various configuration options that are available during plug-in registration.