Введение

XML-фреймворк

Service Provisioning Markup Language (SPML) — это XML-фреймворк, разрабатываемый организацией OASIS для обмена информацией о предоставлении пользователям, ресурсов и сервисов между взаимодействующими организациями. Service Provisioning Markup Language является открытым стандартом для интеграции и взаимодействия запросов на предоставление услуг. SPML — это стандарт OASIS, основанный на концепциях Directory Service Markup Language. Версия SPML 1.0 была утверждена в октябре 2003 года. Версия SPML 2.0 была утверждена в апреле 2006 года. Security Assertion Markup Language используется для обмена данными авторизации.

Цель СПМЛ

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

Функциональность SPML

SPML версия 2.0 определяет следующую функциональность:

Основные функции

listTargets Позволяет запрашивающему определить набор целей, которые поставщик предоставляет для выделения ресурсов. add Операция add позволяет запрашивающему создать новый объект на целевой системе. lookup Операция lookup позволяет запрашивающему получить XML, представляющий объект на целевой системе. modify Операция modify позволяет запрашивающему изменить объект на целевой системе. delete Операция delete позволяет запрашивающему удалить объект с целевой системы.

Возможность асинхронизации

отмена Операция отмены позволяет инициатору остановить выполнение асинхронной операции. статус Операция статуса позволяет инициатору определить, успешно ли завершилась асинхронная операция, завершилась ли она с ошибкой или все еще выполняется.

Возможность партии

пакетный режим Поддерживает пакетное выполнение запрошенных операций.

Объемная способность

bulkModify Позволяет выполнять несколько запросов на изменение в пакетном режиме.
bulkDelete Позволяет выполнять несколько запросов на удаление в пакетном режиме.

Возможность использования пароля

setPassword Позволяет запрашивающему лицу указать новый пароль для объекта. expirePassword Помечает текущий пароль объекта как недействительный. resetPassword Позволяет запрашивающему лицу изменить пароль объекта (на незаданное значение) и получить это вновь сгенерированное значение пароля. validatePassword Позволяет запрашивающему лицу определить, будет ли указанное значение допустимым в качестве пароля для указанного объекта.

Возможность поиска

поиск Операция поиска извлекает все объекты, соответствующие заданному запросу. iterate Операция iterate извлекает следующий набор объектов из результирующего набора, выбранного поставщиком в результате операции поиска. closeIterator Операция closeIterator сообщает поставщику, что запрашивающей стороне больше не требуются результаты поиска, представленные конкретным <итератором>.

Отключить возможность

suspend Операция приостановки позволяет запрашивающему отключить объект. resume Операция возобновления позволяет запрашивающему повторно включить объект, который был приостановлен. active Операция проверки активности позволяет запрашивающему определить, был ли указанный объект приостановлен.

Возможность обновления

обновления Операция "обновления" получает записи об изменениях объектов. перебор Операция "перебор" получает следующий набор объектов из результирующего набора, выбранного поставщиком для операции "обновления". закрытьИтератор Операция "закрытьИтератор" сообщает поставщику, что запрашивающему больше не требуется результирующий набор "обновлений", представленный конкретным <итератором>.

Пользовательские возможности

Индивидуальный поставщик (или любая третья сторона) может определить собственную функциональность, интегрируемую с SPMLv2.

Объект обслуживания (PSO)

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