Безопасность грид-систем

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

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

Термины[править | править код]

Виртуальные организации(VO) - это динамический набор пользователей, организаций, ресурсов.[1]

Области доверия (trusted domains) - это набор пользователей и ресурсов, управляемых единой политикой безопасности.[2]

Учетные данные (credentials) - это информация, используемая для доказательства личности субъекта (пользователя, ресурса или процессов, связанных с ними)[2]

Определение грид-системы[править | править код]

Грид — это система, которая, во-первых, распределяет ресурсы, не находящиеся под единым центром управления, во-вторых, использует общие протоколы и интерфейсы, в-третьих, обеспечивает нужный уровень обслуживания. [3]

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

I. Foster, C. Kesselmann, S. Tuecke, “The Anatomy of the Grid”, (2000)

Можно выделить в данном определении важные составляющие[4]:

  • "… разделение ресурсов …" - ресурсы, находящиеся в грид, принадлежат организациям и подчиняются их правилам. И одновременно ресурсы, могут принадлежать нескольким VO.
  • " ... скоординированное ..." - ресурсы, принадлежащие VO должны управляться VO для совместной эффективной работы. Все VO должны подчиняться прозрачной политике взаимодействий. Политика распространяется от VO к ресурсам.
  • "... динамически меняющихся ..." - пользователи и ресурсы могут менять свои свойства, могут быть добавлены или удалены.
  • "... разнообразных ..." - каждый ресурс и пользователь имеет собственные политики и технологии, которые не могут быть изменены средствами VO. Подразумеваются разные trusted domains.

Пример использования грид-систем[править | править код]

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

Пусть есть ученый, которого попросили проверить чьи-то новые полученные данные. Он начинает необходимые вычисления на удаленном сервере С. Начав исполняться, процесс на сервере С понимает, что ему необходима симуляция. Для этого он обращается к посреднику (на сервере D). Тот инициирует вычисления на серверах E и G, которые для получения необходимых параметров обращаются к серверу F[2].

Данный пример иллюстрирует следующие важные характеристики грид-систем[2].

Множество пользователей, как и набор ресурсов может быть большим и динамически меняться. Участники научного сообщества могут быть из разных организаций и меняться довольно часто, ресурсы могут изменять свои свойства. Вычисления могут охватывать разное число ресурсов в течение своего исполнения. Процессы исполнения могут общаться друг с другом, используя множество различных механизмов. Ресурсы могут потребовать разные механизмы аутентификации и авторизации и разных политик. Так в примере показаны следующие политики контроля доступа: Kerberos(сервер С), SSL(сервер D), обычные пароли. Также один и тот же пользователь может быть представлен на разных серверах разными именами, правами и учетными данными[2].

Требования к безопасности в грид[править | править код]

Таким образом можно выставить следующие требования к системе безопасности в грид-системах[5]:

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

Правила взаимодействия компонент грид-системы с точки зрения безопасности[править | править код]

  1. Грид-система состоит из "областей доверия". Этим утверждается, что система безопасности не требует установления политики внутри области, а контролирует взаимодействие между областями и проецирует это взаимодействие на внутреннюю политику.
  2. Операции внутри одной "области доверия" подчиняются только внутренней политике безопасности. Никаких дополнительных операций от системы безопасности не требуется. Внутренняя политика может быть реализована множеством методов, таких как firewalls, Kerberos, SSH.
  3. Существуют и глобальные, и локальные субъекты (пользователи и ресурсы). Для каждой "области доверия" соответствие глобальных субъектов на ее локальные. Каждый пользователь имеет два имени: глобальное и возможно локальное. Существование глобальных субъектов позволяет локальной политике реализовывать одноразовую аутентификацию пользователей.
  4. Операции между субъектами, расположенными в разных "областях доверия" должны требовать взаимную аутентификацию.
  5. Все решения по предоставлению доступа выполняются локально на основе локального субъекта. Все решения по контролю доступа принимаются политикой, утвержденной местными системными администраторами.
  6. Программа или процесс, исполняемые от имени пользователя, могут получить подмножество прав пользователя. Это необходимо для поддержки длительно исполняющихся программ без взаимодействия с пользователем.
  7. Процессы, исполняющиеся от имени одного субъекта внутри одной "области доверия", могут иметь один набор "учетных данных".[2]

Существующие решения[править | править код]

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

Эти продукты: Globus, Legion, CRISIS для WebOS.

Globus Toolkit[править | править код]

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

То есть безопасность в Globus Toolkit включает в себя криптосистему на открытых ключах. Выдача прав связана с проверкой сертификатов. И для того, чтобы доверять предъявителю сертификата, нужно доверять лишь центру выдачи сертификатов(certificate authority CA). Но для динамического создания сущностей вводятся сертификаты особого типа proxy сертификаты, по сути расширение обычных сертификатов, предоставляющее делегировать часть своих прав другому субъекту. А для выставление простейших областей доверия используется принцип - две сущности доверяют друг другу, если имеют одинаковые сертификаты. При выставлении сложных областей доверия, где могут присутствовать требования нескольких политик, система отдает право на разрешение конфликтов объекту(то есть ресурсу).[6]

Legion[править | править код]

Legion - это распределенная вычислительная платформа для комбинирования множества независимых машин в одну систему. Все ресурсы, включая вычислительные мощности, базы данных, Legion объединяет, используя один объектно-ориентированный мета-компьютер. Модули обеспечения безопасности в данной платформе входят в Legion Runtime Library(библиотека времени исполнения), которая определяет необходимые базовые объекты, такие как объекты ядер, хостов и хранилищ. Хост объект это по сути менеджер субъектов. Например, хост контролирует выход пользователя из определенной зоны. Объект хранилища контролирует доступность данных, используя, например, ACL файловых систем. А эти два типа объектов находятся под управлением общего менеджера объектов, который управляет размещением, активацией и деактивацией этих объектов. Эти объекты необходимо настраивать администратору. По умолчанию Legion включает в себя лишь несколько системных классов. Первый это Legion Object Identifier(LOID), который может определить, доказать подлинность объекта внутри Legion среды. По умолчанию используется асимметричный алгоритм RSA и X.509 сертификаты. Любой субъект или объект должны включать в себя LOID для поддержки общения между собой. Второй класс это ACL класс, реализующий распределенный алгоритм, позволяющий достичь определенного уровня изоляции сразу для нескольких объектов.[7]

CRISIS[править | править код]

CRISIS это одна из компонент WebOS. WebOS - это приложение, основной целью которого является поддержка сетевых приложений на разных операционных системах. И CRISIS приходится решать вопросы безопасности такие как Аутентификация, Авторизация. CRISIS это event-based система, включающая два основных компонента для авторизации и аутентификации. Первый это менеджер процессов, который принимает запросы (логин или доступ к ресурсу) и security менеджер, который хранит личные данные субъектов и принимает решения по поступающим запросам.[8]

См. также[править | править код]


Источники[править | править код]

  1. Ian Foster, Carl Kesselman, Steven Tuecke. The Anatomy of the Grid: Enabling Scalable Virtual Organizations // International Journal of High Performance Computing Applications. — 2001. — Август.
  2. 1 2 3 4 5 6 Ian Foster, Carl Kesselman, Gene Tsudik, Steven Tuecke. A Security Architecture for Computational Grids // Fifth ACM Conference on Computers and Communications Security. — 1998. — Ноябрь.
  3. I. Foster. What is the Grid? A Three Point Checklist // GridToday. — 2002. — Июль.
  4. Conference GlobusWORLD 2005 Grid Security: Grid Perspective
  5. Jianmin Zhu, Dr. Bhavani Thuraisingham. Secure Grid Computing // IJCSNS International Journal of Computer Science and Network Security. — 2006. — Август (т. 6, вып. 8B).
  6. Security for Grid Services // Twelfth International Symposium on High Performance Distributed Computing (HPDC-12). — IEEE Press, 2003.
  7. Ferrari, F. Knabe, M. Humphrey, S. Chapin, and A. Grimshaw. A flexible security system for metacomputing environments // Proc. High Performance Computing and Networking. — Europe, Amsterdam, The Netherlands, 1999. — Апрель.
  8. E. Belani, A.Vahdat, T. Anderson, and M. Dahlin. CRISIS:Awide area security architecture // Seventh USENIX Security Symposium. — 1998.. — Январь.

Ссылки[править | править код]