WMI имеет трехуровневую архитектуру для сбора и распространения управляющей информации: стандартный механизм для хранения описаний объектов (хранилище объектов, совместимое с CIM), стандартный протокол для передачи управляющей информации (COM/DCOM; возможны и другие протоколы) и множество DLL-библиотек, выполняющих функции WMI-npoвайдеров (которые обеспечивают данными компоненты схемы CIM) (рис. 12.1).
Ниже кратко описаны некоторые элементы и возможности WMI (более подробную информацию можно найти в WMI SDK). .
Диспетчер объектов CIM
Ключевым компонентом WMI является диспетчер объектов СШ, главное назначение которого, ≈ единообразное представление данных, которые в виде

| Рис. 12.1. Архитектура WMI
| объектов находятся в хранилище объектов CIM. Диспетчер объектов упрощает сбор информации об объектах управления и манипулирование ею, т. е. обеспечивает функциональный уровень CIM.
WMI-провайдеры
WMI-провайдеры (поставщики данных) являются связующим звеном между диспетчером объектов СШ и множеством объектов управления; они собирают управляющую информацию (т. е. данные и события), предоставляемую административным приложениям.
В состав WMI Software Development Kit (SDK) входят следующие WMI-провайдерыГ

| Провайдер реестра
|

| Провайдер журналов событий (event log)
|

| Провайдер Win32
|

| Провайдеры SNMP
|

| Провайдеры WDM
| Используя SDK, сторонние производители могут создавать провайдеры для новых объектов управления.
Безопасность WMI
WMI обеспечивает средства безопасности, которые проверяют полномочия пользователя на локальном компьютере и при удаленном доступе. При этом можно устанавливать глобальные разрешения на выполнение операций со схемой, например, устанавливать доступ "только для чтения".
Обработка событий
Средства обработки событий позволяют административным приложениям распознавать аппаратные или программные события и/или ошибки и получать нужную информацию для выполнения соответствующих действий.
В архитектуре WMI события могут происходить в объектах управления или в хранилище объектов СШ (внутренние события). Диспетчер объектов CIM передает извещения о событии потребителям событий (event consumer), которые могут "подписаться" на извещения определенного типа, указав фильтр, созданный с помощью языка запросов WMI Query Language (WQL).
WBE-M-совместимые средства написания сценариев
WMI позволяет создавать сценарии или приложения (т. е. предлагается дополнительный механизм доступа, помимо интерфейсов СОМ), взаимодействующие с диспетчером объектов СШ. Имеется поддержка для следующих языков:

| Visual Basic
|

| Visual Basic for Applications
|

| Visual Basic, Scripting Edition
|

| Microsoft JScript
|

| Perl
| Средства написания сценариев помогают автоматизировать работу администратора, позволяя ему использовать пакетный режим для типовых процедур обработки данных и событий, а также создавать собственные утилиты командной строки. При этом задействуются все достоинства языков сценариев: простота, гибкость и легкость в освоении. 2. Оснастки консолі ММС.
Оснастки и работа с ними
Все инструменты ММС состоят из совокупности оснасток. Каждая оснастка представляет собой минимальную единицу управления. С технической стороны оснастка представляет собой "OLE-сервер внутри процесса" (in-proc server ≈ так часто называют DLL-библиотеки в модели СОМ), который выполняется в контексте процесса ММС. Оснастка может вызывать другие элементы управления и динамические библиотеки (DLL) для выполнения своей задачи.
Ряд оснасток могут быть объединены администратором в инструмент (также называется документом), который сохраняется в файле с расширением msc (Management Saved Console). Администратор использует инструменты для управления сетью. Файл *.msc можно затем передать другому администратору (например, по электронной почте), который сможет использовать содержащийся в нем инструмент на своем рабочем месте.
| Примечание
|
| На практике термины инструмент и оснастка иногда могут использоваться как взаимозаменяемые, поскольку некоторые инструменты ММС (и стандартные, и вновь созданные) содержат только одну оснастку. С другой стороны, термин оснастка применяется чаще, так как именно в оснастке реализованы все функциональные возможности, а включаться она может в различные инструменты ≈ в том числе и в те, которые конфигурирует сам администратор. Поэтому чаще можно встретить фразу типа "данная функция реализуется при помощи оснастки..." (а не "при помощи инструмента...").
| Благодаря возможности индивидуальной настройки ММС, администратор может создать идеальный инструмент на основе доступных оснасток. Каждый инструмент может иметь множество функций: например, возможности управления службой Active Directory, топологией репликации, доступом к файлам и т. д. В больших сетях администраторы могут иметь набор инструментов, организованных по категориям выполняемых с их помощью задач.
Типы оснасток
В ММС поддерживаются два типа оснасток:

| ^ (stand-alone snap-in) обеспечивает выполнение своих функций даже при отсутствии других оснасток, например, Управление компьютером (Computer Management).
|

| ^ (extension snap-in) может работать только после активизации родительской оснастки. Функция оснастки расширения заключается в увеличении числа типов узлов, поддерживаемых родительской оснасткой. Оснастка расширения является подчиненным элементом узлов определенных типов, и при каждом запуске узлов данных типов консоль автоматически запускает все связанные с ней расширения. В качестве примера можно привести оснастку Диспетчер устройств (Device Manager). Оснастки расширения могут предоставлять различные функциональные возможности. Например, такие оснастки могут расширять пространство имен консоли, увеличивать число пунктов в меню или добавлять определенные мастера.
|
| Примечание
|
| Все оснастки, имеющиеся в системе Windows 2000, кратко описаны в табл. 6.1 и 6.2.
|
Создание новой консоли
Для того чтобы получить представление о гибкости ММС, полезно рассмотреть процесс создания файла консоли ≈ инструмента (документа) ММС ≈ с самого начала. Для примера опишем процедуру создания новой консоли и добавления к ней оснасток Управление компьютером и Сертификаты (Certificates).
1.
| В меню ^ (Start) выберите пункт Выполнить (Run), введите mmc и нажмите кнопку ОК. Откроется окно Консоль! с пустой консолью (или административным инструментом).
| Примечание
|
| По умолчанию консоль ММС открывается в авторском режиме, в котором можно создавать новые консоли и изменять созданные ранее административные инструменты. Пустая консоль не имеет никаких функциональных возможностей до тех пор, пока в нее не добавлены оснастки. Команды меню ММС на панели меню в верхней части окна применимы ко всей консоли.
|
| 2.
| В меню Консоль (Console) выберите пункт Добавить/удалить оснастку (Add/Remove Snap-in). Откроется окно ^ В этом окне перечисляются изолированные оснастки и оснастки расширения, которые будут добавлены в консоль (или уже включены в нее). Оснастки можно добавлять к корню консоли- управления или к уже имеющимся изолированным оснасткам (другим узлам дерева); это указывается в списке Оснастки (Snap-ins added to). В нашем случае оставим значение по умолчанию ≈ Корень консоли (Console Root).
| 3.
| Нажмите кнопку Добавить (Add). На экране появится окно Добавить изолированную оснастку (Add Stand-alone Snap-in) (рис. 6.6) со списком изолированных оснасток, имеющихся в системе.
|

| Рис. 6.6. Окно со списком имеющихся оснасток
|
| Примечание
|
| Следует различать имена оснасток (т. е. их названия, которые были даны разработчиками и которые зафиксированы в поставляемых пакетах оснасток, рис. 6.6) и названия элементов меню, инструментов ММС и узлов в дереве оснасток консоли ММС.
|
4.
| Выполните двойной щелчок на пункте ^ Появится окно с конфигурационными опциями для данной оснастки.
| 5.
| Оставьте переключатель в положении локальным компьютером (Local computer). Затем нажмите кнопку Готово (Finish).
| 6.
| В окне оснасток выберите пункт Сертификаты и нажмите кнопку Добавить.
| 7.
| В следующем окне выберите соответствующий переключатель ≈ Эта оснастка всегда будет управлять сертификатами для:
моей учетной записи пользователя (My user account)
учетной записи службы (Service account)
учетной записи компьютера (Computer account)
Нажмите кнопки Готово и Закрыть.
| 8.
| В окне Добавить/Удалить оснастку (где отображен список подключаемых оснасток) перейдите на вкладку Расширения (Extensions). На этой вкладке приведен список оснасток расширения, которые поставляются вместе с выбранными изолированными оснастками. Если вы не собираетесь подключать все оснастки расширения, сбросьте флажок Добавить все расширення (Add all extensions) (который ставится по умолчанию) и снимите флажки с лишних оснасток. По окончании процедуры нажмите кнопку ОК.
| 9.
| Закройте окно добавления оснасток, нажав кнопку ^ Теперь окно консоли содержит две оснастки ≈ Управление компьютером и Сертификаты.
| 10.
| Для того чтобы сохранить созданный инструмент, в меню Консоль выберите пункт Сохранить как (Save As) и укажите имя файла и папку, в которой будет сохранен файл консоли.
|
| Примечание
|
| Дополнительным преимуществом такого подхода является то, что при наличии у пользователя перемещаемого (блуждающего) профиля, все созданные пользователем инструменты будут перемещаться вместе с ним.
|
Индивидуальная настройка окон оснасток
После добавления оснасток можно развернуть окна оснасток, чтобы облегчить работу с ними. Для этого выполните следующие действия:

| Рис. 6.7. Окна консоли с индивидуальной настройкой
|
1.
| В левом подокне (в окне структуры) только что созданной консоли щелкните правой кнопкой мыши на узле ^ и выберите в контекстном меню пункт Новое окно отсюда (New Window from Here). Будет открыто окно Управление компьютером, представляющее одноименную оснастку.
| 2.
| Аналогичные действия выполните для узла Сертификаты. В новом окне нажмите кнопку Скрытие или отображение дерева консоли или избранного
(Show/Hide Console tree) на панели инструментов для того, чтобы скрыть панель структуры.
| 3.
| Закройте исходное окно, содержащее Корень консоли.
| 4.
| В меню Окно (Window) выберите команду Сверху вниз (Tile Horizontally). Консоль будет выглядеть, как показано на рис. 6.7.
|
| Примечание
|
| Дочерние окна в окне консоли имеют панель инструментов с кнопками и раскрывающимися меню. Кнопки и команды этих меню применяются только к содержанию соответствующего окна.
|
Создание панелей задач
Когда требуется создать файл консоли для другого пользователя, полезно предоставить пользователю упрощенный инструмент, позволяющий выполнять только несколько определенных задач. Таким инструментом является панель задач (taskpad). Панель задач является HTML-страницей, на которой могут быть размещены ярлыки (или задачи (task)), запускающие команды меню и программы или открывающие ссылки на веб-страницы.
Для создания панели задач выполните следующее:
1.
| В меню Действие (Action) или в контекстном меню любого узла в окне консоли выберите пункт Новый вид панели задач (New Taskpad View),
| 2.
| Откроется окно Мастера создания вида панели задач (New Taskpad View Wizard). Нажмите кнопку Далее.
| 3.
| В следующем окне мастера вам будет предложено выбрать стиль отображения и размер панели задач (рис. 6.8). Затем На панели задач вы можете указать использование только тех задач, которые связаны с текущим узлом или со всеми узлами дерева. В следующем окне потребуется ввести имя и описание создаваемой панели задач.
| 4.
| Если вы не собираетесь пока добавлять новые, задачи на созданную панель, снимите в последнем окне мастера флажок ^ создания новой задачи (Start New Task Wizard).
| 5.
| В противном случае по завершении работы Мастера создания вида панели задач запускается Мастер создания задач (New Task Wizard). В ходе этой процедуры следует указать функцию задачи: запуск команды меню,
программы или ссылка на веб-страницу, ввести путь к исполняемому файлу и параметры запуска.
| |