Язык разметки предоставления услуг
Язык разметки предоставления услуг ( SPML ) — это платформа на основе XML , разработанная OASIS для обмена информацией о пользователях, ресурсах и услугах между сотрудничающими организациями.
Язык разметки предоставления услуг — это открытый стандарт для интеграции и взаимодействия запросов на предоставление услуг . SPML — это стандарт OASIS, основанный на концепциях языка разметки службы каталогов . Версия SPML 1.0 была утверждена в октябре 2003 г. Версия SPML 2.0 была утверждена в апреле 2006 г. Язык разметки утверждений безопасности обменивается данными авторизации.
Определение
[ редактировать ]Технический комитет OASIS Provisioning Services использует следующее определение «обеспечения»: [1]
Обеспечение — это автоматизация всех шагов, необходимых для управления (установки, изменения и отзыва) правами доступа пользователя или системы или данными, относящимися к опубликованным в электронном виде услугам.
Цель СПМЛ
[ редактировать ]Цель SPML — предоставить организациям возможность безопасно и быстро настраивать пользовательские интерфейсы для веб-служб и приложений, позволяя корпоративным платформам, таким как веб-порталы, серверы приложений и сервисные центры, генерировать запросы на предоставление ресурсов внутри и между организациями. Это может привести к автоматизации доступа пользователей или систем и прав на электронные услуги в различных ИТ-инфраструктурах, чтобы клиенты не были привязаны к проприетарным решениям.
Функциональность SPML
[ редактировать ]СПМЛ версия 2.0 [2] определяет следующую функциональность:
Основные функции
[ редактировать ]- listTargets — позволяет запрашивающей стороне определить набор целей, которые поставщик предоставляет для подготовки.
- add — операция добавления позволяет запрашивающей стороне создать новый объект в целевом объекте.
- поиск. Операция поиска позволяет запрашивающей стороне получить XML, представляющий объект в целевом объекте.
- Изменить — операция изменения позволяет запрашивающей стороне изменить объект на целевом объекте.
- delete — операция удаления позволяет запрашивающей стороне удалить объект из цели.
Асинхронная возможность
[ редактировать ]- Отмена — операция отмены позволяет запрашивающей стороне остановить выполнение асинхронной операции.
- status — операция состояния позволяет запрашивающей стороне определить, завершилась ли асинхронная операция успешно, завершилась неудачно или все еще выполняется.
Пакетная возможность
[ редактировать ]- пакетный режим — поддерживает пакетное выполнение запрошенных операций.
Массовая возможность
[ редактировать ]- BulkModify — позволяет запускать несколько запросов на изменение вместе.
- BulkDelete — позволяет одновременно выполнять несколько запросов на удаление.
Возможность пароля
[ редактировать ]- setPassword — позволяет запрашивающей стороне указать новый пароль для объекта.
- expirePassword — помечает текущий пароль для объекта как недействительный.
- resetPassword — позволяет запрашивающей стороне изменить (на неопределенное значение) пароль для объекта и получить это новое сгенерированное значение пароля.
- validatePassword — позволяет запрашивающей стороне определить, будет ли указанное значение действительным в качестве пароля для указанного объекта.
Эталонные возможности
[ редактировать ]Возможность поиска
[ редактировать ]- поиск — операция поиска получает каждый объект, соответствующий указанному запросу.
- итерация — операция итерации получает следующий набор объектов из набора результатов, выбранного поставщиком для операции поиска.
- closeIterator — операция closeIterator сообщает поставщику, что запрашивающей стороне больше не нужен результат поиска, который представляет конкретный <итератор>.
Приостановить возможность
[ редактировать ]- suspend — операция приостановки позволяет запрашивающей стороне отключить объект.
- Возобновление — операция возобновления позволяет запрашивающей стороне повторно включить объект, который был приостановлен.
- active — активная операция позволяет запрашивающей стороне определить, приостановлен ли указанный объект.
Возможность обновлений
[ редактировать ]- обновления — операция обновления получает записи об изменениях объектов.
- итерация — операция итерации получает следующий набор объектов из набора результатов, выбранного поставщиком для операции обновления.
- closeIterator — операция closeIterator сообщает поставщику, что запрашивающей стороне больше не нужен набор результатов обновлений, который представляет конкретный <итератор>.
Пользовательские возможности
[ редактировать ]- Отдельный поставщик (или любая третья сторона) может определить пользовательскую возможность, которая интегрируется с SPMLv2.
Функции
[ редактировать ]Объект предоставления услуг (PSO)
[ редактировать ]Ключевым идентификатором в SPML является PSO.
Объект службы обеспечения (PSO), иногда называемый просто объектом, представляет собой объект данных или информационный объект на целевом объекте. Например, провайдер будет представлять в качестве объекта каждую учетную запись, которой управляет провайдер.
Каждый объект содержится ровно в одной цели. Каждый объект имеет уникальный идентификатор (PSO-ID).
Профиль
[ редактировать ]SPMLv2 определяет два «профиля», в которых запрашивающая сторона и поставщик могут обмениваться протоколом SPML:
- Схема XML, как определено в «Профиле XSD SPMLv2» [SPMLv2-Profile-XSD].
- DSMLv2, как определено в «Профиле SPMLv2 DSMLv2» [SPMLv2-Profile-DSML].
Запрашивающая сторона и поставщик могут обмениваться протоколом SPML в любом профиле, с которым они согласны.
Профиль DSMLv2 может быть более удобен для приложений, которые обращаются главным образом к службам каталогов LDAP или X500. Профиль XSD может быть более удобен для приложений, которые обращаются главным образом к веб-службам.