Способ верификации безопасного распределения пользовательских задач по узлам грид-системы

Иллюстрации

Показать все

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

Реферат

Изобретение относится к области вычислительной техники и может найти применение в распределенных вычислительных сетях типа «грид» (грид-системах).

Известен способ распределения пользовательских задач по узлам грид-системы, реализованный в сервисе контроля доступа GRAM. При выполнении запроса на предоставление информационных и вычислительных ресурсов каждый узел, входящий в состав грид-системы, осуществляет авторизацию учетной записи пользователя путем отображения глобального идентификатора учетной записи в локальный идентификатор. Учетная запись пользователя грид-системы может инициировать выполнение пользовательской задачи только на тех узлах грид-системы, где она авторизована. [Кирьянов А.К., Рябов Ю.Ф. Введение в технологию Грид: Учебное пособие. - Гатчина: ПИЯФ РАН, 2006. - 39 с.].

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

Известен способ распределения пользовательских задач по узлам грид-системы, в котором перед передачей пользовательской задачи на узел грид-системы сопоставляют права доступа, запрашиваемые учетной записью пользователя, с уже предоставленными правами доступа на выбранных узлах грид-системы. Затем, учитывая правила разграничения доступа, формируют множество узлов грид-системы, на которых допустимо выполнение пользовательской задачи (легитимных узлов) [RU 2536678 С1, опубл. 27.12. 2014 г.]. Это техническое решение выбрано в качестве прототипа.

Недостаток известного способа заключается в том, что при определении легитимности узла грид-системы выполняется верификация учетной записи пользователя, запрашивающего ресурсы грид-системы, и не выполняется верификация учетной записи пользователя, обладающей административными полномочиями на данном узле грид-системы. Это приводит к тому, что учетная запись пользователя, обладающая административными полномочиями на узле грид-системы, предоставляющем свои вычислительные ресурсы, получает доступ к данным других учетных записей пользователей грид-системы. В результате происходит утечка данных, что имеет негативные последствия в виде нарушений безопасности данных и функционирования системных процессов в грид-системах.

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

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

в предлагаемом способе вначале создают пару криптографических ключей шифрования: открытый и закрытый ключи шифрования;

затем принимают решение о легитимности узлов грид-системы и выполняют обмен ключами шифрования;

после этого шифруют данные, содержащиеся в пользовательской задаче, открытым ключом шифрования и распределяют пользовательскую задачу по легитимным узлам грид-системы;

легитимные узлы грид-системы расшифровывают полученные данные и выполняют пользовательскую задачу.

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

Изобретение поясняется чертежами, где фиг. 1 - схема грид-системы, фиг. 2 - схема реализации предложенного технического решения.

Грид-система содержит узлы 1, 2, 3, 4, 5, 6, 7, представляющие собой вычислительные устройства. В грид-системе реализована программная база Globus Toolkit 5.0. Цифровые сертификаты учетных записей пользователей и узлов грид-системы являются легитимными.

Узел 1 является провайдером ресурсов Т1={'пользовательские_данные'};

узел 2 является провайдером ресурсов T2={'ресурсы_ПО'}

узел 3 является провайдером ресурсов Т3={'пользовательские_данные'};

узел 4 является провайдером ресурсов Т4={'вычислительные_ресурсы'};

узел 5 является провайдером ресурсов T5=['пользовательские_данные'};

узел 6 является провайдером ресурсов T6={'ресурсы_ПО'};

узел 7 является провайдером ресурсов T7={'пользовательские_данные'}.

В грид-системе заданы следующие правила разграничения доступа, которые предусматривают два типа доступа: доступ к вычислительным ресурсам и к данным учетных записей пользователей грид-системы:

Правило №1. Учетная запись пользователя U1 может хранить данные на узле 1.

Правило №2. Учетная запись пользователя U1 не может хранить данные на узле 6.

Правило №3. Учетная запись пользователя U3 может исполнять приложения на узле 7.

Правило №4. Учетная запись пользователя U4 может хранить данные на узле 1.

Правило №5. Учетная запись пользователя U5 может исполнять приложения на узле 3.

Правило №6. Учетная запись пользователя U5 не может выполнять никаких действий на узле 1.

Правило №7. Учетная запись пользователя U1 может исполнять приложения на узле 4.

Правило №8. Учетная запись пользователя U7 может хранить данные на узле 1.

Правило №9. Учетная запись пользователя U1 может исполнять приложения на узле 2.

Предлагаемый способ может быть реализован следующим образом.

Изначально в грид-системе отсутствуют пользовательские задачи. При запросе на выполнение пользовательской задачи на узле 1 с учетной записью пользователя U1 с типом метки Т={'пользовательские_данные', 'вычислительные_ресурсы', U1} сначала выполняется взаимная аутентификация узла грид-системы с учетной записью пользователя грид-системы посредством проверки их цифровых сертификатов.

Поскольку цифровые сертификаты учетных записей пользователей и узлов грид-системы являются легитимными, выполняется первичная обработка пользовательской задачи, инициированной процессами от имени учетной записи пользователя, посредством определения доступных узлов грид-системы, анализа их загруженности, производительности, а также доступных типов ресурсов. Для успешного выполнения данной задачи в соответствии с типом ее метки Т провайдеры ресурсов (узлы грид-системы) должны располагать следующим множеством ресурсов: {'пользовательские_данные', 'вычислительные_ресурсы'}. В результате определено множество доступных узлов грид-системы, суммарно способных выполнить данную задачу: узел 3 и узел 4. Остальные узлы либо чрезмерно загружены выполнением других задач, либо не обладают нужным типом ресурсов.

Затем выполняют шифрование данных, содержащихся в пользовательской задаче. Для этого создают пару криптографических ключей: открытый ключ шифрования, предназначенный для зашифровывания данных, и закрытый ключ шифрования, предназначенный для расшифровывания данных.

Затем определяют множество легитимных узлов грид-системы (например, посредством построения дерева достижимости сети Петри, моделирующей данную грид-систему). Для каждой вершины полученного дерева выполняют сравнение запрашиваемых прав доступа с предоставленными правами доступа и с правилами разграничения доступа. Сначала проверяют узел 6 путем последовательного просмотра правил доступа, в результате чего находят правило №2 (в соответствии с набором правил, представленным выше), которое не позволяет учетной записи пользователя U1 хранить свои данные на узле 6. Затем проверяют узел 2, в результате чего находят правило №9, которое разрешает учетной записи пользователя U1 исполнять приложения на узле 2. Переход от узла 1 до узла 2 образует первую часть маршрута распределения пользовательских задач по узлам грид-системы. Затем аналогично строится оставшаяся часть маршрута. Таким образом, узел 3 и узел 4 являются конечными пунктами маршрута распределения пользовательской задачи.

Затем выполняют обмен ключами шифрования между учетной записью пользователя U1 и полученными легитимными узлами грид-системы: 3 и 4.

После этого учетная запись пользователя U1 выполняет зашифровывание данных пользовательской задачи на узле 1 с помощью открытого ключа шифрования.

В соответствии с определенным ранее маршрутом распределения пользовательской задачи по узлам грид-системы пользовательскую задачу передают на узлы 3 и 4.

На указанных узлах грид-системы выполняют расшифровывание данных пользовательской задачи с помощью закрытого ключа шифрования. После этого программный сервис грид-системы, расположенный на указанных узлах, запускает задачу от имени локальной учетной записи пользователя, в результате чего задействует ресурсы на узлах 3 и 4.

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

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