Введение

Yadis — это протокол связи для обнаружения сервисов, таких как OpenID, OAuth и XDI, связанных с идентификатором Yadis. Хотя Yadis изначально разрабатывался для обнаружения сервисов цифровой идентификации, он не ограничивается ими, и другие сервисы могут быть легко добавлены. Идентификатор Yadis может быть как традиционным URL, так и новым i-именем XRI, при этом i-имя должно разрешаться в URL. Так называемый URL Yadis либо равен самому идентификатору Yadis (если это URL), либо разрешенному URL i-имени XRI. Кроме того, Yadis определяет, как использовать URL Yadis для получения дескриптора сервиса, называемого Yadis Resource Descriptor. Этот дескриптор соответствует формату XRDS и связывает несколько сервисов, например аутентификацию или авторизацию, с URL Yadis. Каждое описание сервиса может содержать дополнительные параметры.

Модульная архитектура

Ядис следует парадигме RESTful, "малые, слабо связанные компоненты", которая доказала свою эффективность в разработке веб. Основное предположение состоит в том, что идентификаторы могут быть адресованы с помощью URL или других идентификаторов (таких как XRI i-имена), которые могут быть разрешены в URL. Затем Ядис связывает документ XRDS (файл возможностей на основе XML) с каждым URL, который описывает связанные возможности или сервисы. Владелец идентификатора Ядис может выбрать, какие сервисы он хочет указать в своем документе XRDS. Получив этот документ, доверяющая сторона, например, веб-сайт, принимающий идентификаторы Ядис, может выбрать подходящий сервис из документа XRDS, например, протокол для аутентификации. Это позволяет существующим веб-сайтам, таким как блоги, легко реализовать базовую функциональность Ядис (например, перенаправлять пользователей, пришедших на блог, на релевантную информацию о владельце блога), а также создавать более сложные приложения (например, отправлять сложные запросы информации о владельце сайта непосредственно на сайт Ядис).

LID, OpenID и сообщество разработчиков

Yadis был инициирован разработчиками протоколов Light weight Identity (LID) и OpenID. К этому сотрудничеству впоследствии присоединились члены Технического комитета OASIS XRI, в особенности те, кто работал над i-именами. Однако Yadis – это открытая инициатива, поэтому другие разработчики начнут использовать XRDS для описания легковесных возможностей, что позволит применять подход "смешивай и сочетай" при создании приложений с поддержкой Yadis, предоставляя разработчикам приложений возможность выбирать оптимальное соотношение между простотой реализации и набором функций.