Стандартный прикладной программный интерфейс служб безопасности

редактировать

Программный интерфейс приложения Generic Security Service (GSSAPI, также GSS-API ) - это интерфейс прикладного программирования для доступа программ службы безопасности.

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

Содержание
  • 1 Операция
  • 2 Связь с Kerberos
  • 3 Связанные технологии
  • 4 Ключевые концепции
  • 5 История
  • 6 См. Также
  • 7 Ссылки
  • 8 Внешние ссылки
Операция

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

Отличительной особенностью приложений GSSAPI является обмен непрозрачными сообщениями (токенами), которые скрывают детали реализации от приложения более высокого уровня. Клиентская и серверная стороны приложения написаны для передачи токенов, предоставленных им соответствующими реализациями GSSAPI. Токены GSSAPI обычно могут перемещаться по небезопасной сети, поскольку механизмы обеспечивают внутреннюю безопасность сообщений. После обмена некоторым количеством токенов реализации GSSAPI на обоих концах информируют свое локальное приложение о том, что контекст безопасности установлен.

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

GSSAPI описывает около 45 вызовов процедур. К важным из них относятся:

GSS_Acquire_cred
Получает подтверждение личности пользователя, часто секретный криптографический ключ
GSS_Import_name
Преобразует имя пользователя или имя хоста в форму, идентифицирующую безопасность entity
GSS_Init_sec_context
Создает токен клиента для отправки на сервер, обычно это вызов
GSS_Accept_sec_context
Обрабатывает токен из GSS_Init_sec_context и может генерировать токен ответа для возврата
GSS_Wrap
Преобразует данные приложения в токен безопасного сообщения (обычно зашифрованный)
GSS_Unwrap
Преобразует безопасный токен сообщения обратно в данные приложения

GSSAPI стандартизирован для языка C (RFC 2744 ). Java реализует GSSAPI как JGSS, Java Generic Security Services Application Program Interface.

Некоторые ограничения GSSAPI:

  1. стандартизация только аутентификации, а не авторизация тоже;
  2. при условии архитектуры клиент-сервер.

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

Связь с Kerberos

Основной используемой реализацией механизма GSSAPI является Kerberos. В отличие от GSSAPI, Kerberos API не стандартизирован, и различные существующие реализации используют несовместимые API. GSSAPI позволяет реализациям Kerberos быть совместимыми с API.

Связанные технологии
Ключевые понятия
Имя
Двоичная строка, которая помечает участник безопасности (т. Е. Пользователь или служебная программа) - см. управление доступом и идентификатор. Например, Kerberos использует такие имена, как user @ REALM для пользователей и service / hostname @ REALM для программ.
Credentials
Информация, подтверждающая личность; используется организацией, чтобы действовать как названный принципал. Учетные данные обычно включают секретный криптографический ключ.
Контекст
Состояние одного конца аутентифицирующего / аутентифицированного протокола. Может предоставлять услуги защиты сообщений, которые могут использоваться для создания защищенного канала.
токенов
Непрозрачные сообщения, которыми обмениваются либо как часть первоначального протокола аутентификации (токены уровня контекста), либо как часть защищенная связь (токены для каждого сообщения)
Механизм
Базовая реализация GSSAPI, которая предоставляет фактические имена, токены и учетные данные. Известные механизмы включают Kerberos, NTLM, Распределенную вычислительную среду (DCE), SESAME, LIPKEY.
Инициатор / акцептор
Одноранговый узел, который отправляет первый токен, является инициатором; другой - акцептор. Как правило, клиентская программа является инициатором, а сервер - приемником.
История
  • Июль 1991 г.: Встреча рабочей группы IETF по общей технологии аутентификации (CAT) в Атланте под руководством Джона Линна
  • сентябрь 1993 г. : GSSAPI версии 1 (RFC 1508, RFC 1509 )
  • май 1995 г.: выпущена Windows NT 3.51, включает SSPI
  • июнь 1996 г.: механизм Kerberos для GSSAPI (RFC 1964 )
  • январь 1997 г.: GSSAPI версии 2 (RFC 2078 )
  • октябрь 1997 г.: опубликован SASL, включает механизм GSSAPI (RFC 2222 )
  • январь 2000 г.: GSSAPI версии 2, обновление 1 (RFC 2743, RFC 2744 )
  • август 2004 г.: рабочая группа KITTEN собирается для продолжения работы с CAT
  • май 2006 г.: использование Secure Shell стандартизованного GSSAPI (RFC 4462 )
См. Также
Ссылки
  1. ^«JSR-000072 Generic Security Services API Specification 0.1». 2001-06-15. Проверено 2015-10-07.
  2. ^Schönefeld, Marc (2010). Рефакторинг антипаттернов безопасности в распределенных компонентах Java. Schriften aus der Fakultät Wirtschaftsinformatik und Angewandte Informatik der Otto-Friedrich-Universität Bamberg. 5 . Университет Бамберга Press. п. 179. ISBN 9783923507689. Проверено 7 октября 2015. JGSS - это реализация GSSAPI на языке JAVA.
  3. ^Фишер, Марина; Шарма, Сону; Лай, Рэй; Морони, Лоуренс (2006). Взаимодействие Java EE и.NET: стратегии интеграции, шаблоны и передовой опыт. Prentice Hall Professional. ISBN 9780132715706. Проверено 7 октября 2015. API прикладного программного интерфейса Java Generic Security Services (JGSS) для единообразного доступа к службам безопасности на основе различных базовых механизмов безопасности, включая Kerberos, которые являются строительными блоками для единой регистрации и шифрования данных.
Внешние ссылки

.

Последняя правка сделана 2021-05-21 14:52:36
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте