Беларусь, Минск |
Защита инфраструктуры WebSphere MQ
В этой лекции обсуждаются следующие темы:
- Администрирование новой копии WebSphere MQ
- Предоставление доступа к ресурсам менеджера очередей
- Установка контекста идентификационных данных для клиентских приложений
- Протокол Secure Sockets Layer (SSL)
- WebSphere MQ internet pass-thru (IPT)
11.1. Администрирование новой копии WebSphere MQ
Для настройки только что установленных копий WebSphere MQ, а также для создания, запуска и остановки менеджеров очередей пользователь должен войти в систему на машине, где установлен WebSphere MQ.
При этом пользователь получает возможность исполнения управляющих команд в Microsoft Windows и UNIX, команд CL на серверах IBM Eserver iSeries, а также исполнения команд для управления подсистемами менеджеров очередей в z/OS. В этой книге такие пользователи называются администраторами.
Администраторы также обслуживают установленные копии WebSphere MQ и менеджеры очередей. Например, они регулярно анализируют журналы ошибок менеджеров очередей, работающих на вверенной им машине, а также выполняют проверки на FFST.
Способы ограничения доступа к этим операциям в WebSphere MQ зависят от платформы.
- Windows: доступ к управляющим командам WebSphere MQ разрешен только членам групп mqm и Administrators.
- UNIX: доступ к управляющим командам WebSphere MQ разрешен только членам группы mqm.
- iSeries: члены группы QMQMADM обладают доступом ко всем командам WebSphere MQ CL. Подробнее об управлении доступом к отдельным командам CL в iSeries см. в разделе "Authority to administer WebSphere MQ on i5/OS" в руководстве WebSphere MQ Security, SC34-6588.
- z/OS: проверка полномочий, выполняемая WebSphere MQ для z/OS, перенаправляется внешнему менеджеру безопасности (External Security Manager-ESM). Здесь предполагается, что его роль играет z/OS Security Server Resource Access Control Facility (RACF ). Доступ к наборам данных и командам, управляющим подсистемами менеджеров очередей, предоставляется посредством администрирования профилей RACF. Дополнительные сведения см. в разделе "Authority to administer WebSphere MQ on z/OS" руководства WebSphere MQ Security, SC34-6588.
11.2. Предоставление доступа к ресурсам менеджеров очередей
Модель защиты WebSphere MQ основана на конфигурировании профилей доступа для отдельных объектов и групп объектов WebSphere MQ.
Объекты WebSphere MQ представляют все ресурсы, принадлежащие менеджеру очередей и управляемые им; о некоторых из этих ресурсов рассказывается ниже. Например, объекты WebSphere MQ служат для настройки очередей в составе менеджера очередей, а также каналов, управляющих сетевым взаимодействием с данным менеджером очередей.
Эта модель защиты обеспечивает тонкую настройку защиты менеджера очередей при доступе различных сущностей, позволяя им доступ только к необходимым им ресурсам.
11.2.1. Object Authority Manager (OAM)
В Windows, UNIX и iSeries у каждого менеджера очередей имеется компонент под названием Object Authority Manager (OAM). Он проверяет у всех сущностей, подключенных к менеджеру очередей и пытающихся выполнить какое-либо действие над объектами WebSphere MQ, наличие соответствующих полномочий.
Сущности различаются по идентификаторам пользователя операционной системы. У приложений, выполняющихся на той же машине, это реальный идентификатор пользования, который есть у каждого приложения (а не действующий идентификатор пользователя, как в UNIX). Ниже обсуждается установка контекста идентификационных данных сущностей, подключающихся в режиме клиентов с удаленных систем (см. "Защита инфраструктуры WebSphere MQ" ).
Полномочия OAM
Любому действию, которое может быть выполнено над объектом, соответствуют полномочия, которые можно предоставить либо отозвать с помощью OAM. Сущности, подключенные к менеджеру очередей, могут выполнять следующие действия над объектами WebSphere MQ.
- Подключение к менеджерам очередей.
Существует объект WebSphere MQ, представляющий менеджер очередей. Чтобы подключиться к менеджеру очередей, сущность прежде должна получить полномочия на подключение к данному объекту менеджера очередей.
- Операции с интерфейсом очередей сообщений ( message queue interface, MQI ).
Любое действие, программно выполняемое над менеджером очередей, независимо от используемого API, соответствует одной или нескольким операциям MQI, например MQPUT, MQGET, MQINQ и MQSET.
Интерфейс MQI перед обращением к ресурсам требует выполнения операции MQOPEN. Чаще всего MQOPEN применяют для того, чтобы открыть очередь перед размещением и извлечением из нее сообщений.
Именно во время вызова MQOPEN компонент OAM проверяет наличие полномочий на выполнение операций, запрошенных при вызове MQOPEN. Каждой из возможных операций соответствуют полномочия, обслуживаемые OAM, а именно разрешения на извлечение ( get ), добавление ( put ), просмотр ( browse ), запрос ( inquire ) и установку ( set ). После вызова MQOPEN приложению разрешено выполнять лишь операции MQI, авторизованные во время вызова MQOPEN.
Примечание. Авторизация занимает некоторое время, поэтому после вызова MQOPEN рекомендуется выполнять несколько операций put/get, а не вызывать MQOPEN и MQCLOSE после каждой операции. То же верно для вызова MQPUT1, который соответствует операциям MQOPEN, MQPUT и MQCLOSE.При вызове MQOPEN часто указывают имя объекта очереди, объявленного в менеджере очередей, к которому подключено приложение. При открытии очереди для извлечения или просмотра сообщений всегда указывают имя локального объекта или псевдонима очереди, а при открытии очереди для размещения сообщений - имя объекта локальной очереди, модельной очереди, псевдонима или удаленной очереди. В этих случаях вызывающая сущность должна получить полномочия для выполнения запрошенных действий над этим объектом.
Однако при добавлении сообщения в очередь удаленного менеджера в вызове MQOPEN может быть указано имя объекта, объявленного в другом менеджере очередей, а не в том, к которому подключено приложение. Например, приложение может указать при вызове MQOPEN имя объекта менеджера очередей или очереди, расположенной в другом менеджере очередей кластера. В этих случаях приложение должно получить полномочия на размещение сообщений в транспортной очереди, которая определяется в результате разрешения имени очереди.
В табл. 6.1 дана сводка объектов, для которых выполняется проверка полномочий при открытии очереди для размещения сообщений.
Примечание. Чтобы получить полномочия для размещения сообщений в любой из общих очередей кластера менеджеров очередей, приложение может получить полномочие на добавление в отношении очереди SYSTEM.CLUSTER.TRANSMIT.QUEUE, обслуживаемой менеджером, к которому это приложение подключается. Больше возможностей по управлению доступом можно получить следующим образом. Определите объекты модельных очередей, в атрибуте "target queue" ( TARGQ ) которых указаны имена общих очередей кластера. Далее можно предоставлять полномочия только для добавления сообщений в отношении этих объектов модельных очередей. - Выполнение действий в контексте другого пользователя.
В некоторых обстоятельствах приложению требуется выполнять действия, как если бы оно было подключено в контексте другого пользователя, либо указывать другие идентификационные данные пользователя в MQMD сообщений, размещаемых этим приложением.
Примером может быть служба, которая переносит идентификационные данные из сообщения-запроса в сообщение-ответ.
Если приложению требуется возможность выполнять эти операции, оно должно заявить об этом при вызове MQOPEN для очереди. В WebSphere MQ имеется набор полномочий, соответствующих параметрам вызова MQOPEN: altusr, passid, passall, setid, setall.
Подробнее об этом см. в разделе "MQOPEN – Open object" руководства WebSphere MQ Application Programming Reference, SC34-6596.
- Администрирование объектов WebSphere MQ.
Только пользователи, назначенные администраторами WebSphere MQ, могут непосредственно администрировать менеджеры очередей с использованием управляющих команд WebSphere MQ и команд CL, в том числе исполнять команды MQSC с помощью runmqsc, подробнее об этом см. в "Защита инфраструктуры WebSphere MQ" .
Однако WebSphere MQ допускает администрирование менеджеров очередей другими пользователями, которые могут использовать WebSphere MQ Explorer либо передавать команды PCF непосредственно командному серверу менеджера очередей.
Примечание. Командный сервер по умолчанию запускается для менеджеров очередей, созданных в WebSphere MQ V6.0 на любой платформе, кроме z/OS.Авторизация этих команд выполняется на основе идентификатора пользователя в MQMD управляющего сообщения. Этот идентификатор пользователя основан на контексте идентификационных данных приложения, сгенерировавшего сообщение менеджеру очередей, к которому оно подключено. Однако у приложения могут быть полномочия для размещения сообщений в контексте другого пользователя.
OAM поддерживает ряд административных полномочий для тонкой настройки администрирования объектов пользователями.
- Create ( crt ) и delete ( dlt ): назначаются в отношении некоторого типа объектов, позволяют, соответственно, создавать и удалять любые объекты этого типа.
- Display ( dis ) и change ( chg ): назначаются в отношении отдельных объектов, позволяют отображать и модифицировать атрибуты объекта, для которого они назначены;
- Clear ( clr ), ping ( ping ), control ( ctrl ) и control-extended ( ctrlx ): назначаются в отношении отдельных объектов соответствующего типа; позволяют выполнять над объектом некоторые операции по управлению. Например, полномочие clear ( clr ) позволяет очищать очередь, control ( ctrl ) - запускать и останавливать каналы, а control-extended ( ctrlx ) — выполнять сброс (reset) или разрешение (resolve) для каналов.
Ниже мы обсудим установку идентификационных данных пользователей, подключающихся к менеджеру очередей по сети и передающих команды для командного сервера.
Предоставление, отзыв и отображение полномочий OAM
WebSphere MQ поддерживает ряд управляющих команд, контролирующих атрибуты индивидуальных объектов и их групп.
WebSphere MQ V6.0 также поддерживает команды PCF для программного администрирования полномочий. Дополнительные сведения о них см. в руководстве WebSphere MQ Programmable Command Formats and Administration Interface, SC34-6598.
Полномочия могут назначаться только пользователям и группам, определенным в локальной операционной системе.
Для администрирования полномочий OAM служат следующие команды Web Sphere MQ.
-
setmqaut - применяется для назначения и отзыва полномочий OAM для объектов WebSphere MQ на заданном менеджере очередей заданного типа с заданным именем. В именах параметров допускается символ "звездочка" (*), позволяющий указывать группы имен; сам по себе объект менеджера очередей не требует параметра, определяющего имя.Примечание. После внесения любых изменений с использованием команды setmqaut в активный менеджер очередей важно выполнить в отношении этого менеджера очередей команду MQSC REFRESH SECURITY. Это необходимо, поскольку для повышения быстродействия менеджеры очередей кешируют полномочия, и новые полномочия вступают в силу только после очистки кеша командой MQSC REFRESH SECURITY. То же самое необходимо делать после изменения членства пользователя в группах операционной системы.
- dspmqaut - используется для отображения полномочий, назначенных определенному пользователю или группе в отношении некоторого объекта.
- dmpmqaut - применяется для тех же целей, что и dspmqaut, но предоставляет более подробные сведения. Эта команда особенно удобна, так как позволяет узнать, почему данному пользователю назначаются те или иные привилегии, отображаемые командой dspmqaut (например, в силу членства в группах).
Подробнее об этих командах см. в разделе "WebSphere MQ control commands" руководства WebSphere MQ System Administration Guide, SC34-6584.
11.2.2. Полномочия для объектов в WebSphere MQ для z/OS
Проверка полномочий для объектов WebSphere MQ для z/OS выполняется внешними по отношению к WebSphere MQ средствами - при помощи RACF.
Этот механизм описан выше, в "Защита инфраструктуры WebSphere MQ" . В этом случае проверка полномочий основана на профилях RACF для отдельных объектов, а не на полномочиях OAM.
Это может быть индивидуальный профиль менеджера очередей либо разделяемый профиль менеджеров группы с разделением очередей (queue sharing group). Различные операции над объектами WebSphere MQ, представляющими менеджеры очередей, требуют различных уровней доступа RACF.
Подробнее об этом см. в разделе "Setting up security" руководства WebSphere MQ для z/OS V6.0 System Setup Guide, SC34-6583.