Что нужно представить на URL-адресе SAML EntityID?

Я пытаюсь реализовать SSO, предоставляемый другим сайтом.

В инструкциях просим меня ввести информацию "эмитента". Оказывается, это эквивалентно URL-адресу EntityID в EntityDescriptor.

Я предполагаю, что мне нужно установить этот URL-адрес на какой-то URL-адрес моего сервера, но то, что я не могу понять, это то, что на самом деле делает этот URL-адрес.

Я предполагаю, что файл должен быть помещен на этот URL с некоторой информацией, но я не могу понять, что это за информация.

Итак, какая информация требуется на URL EntityID, чтобы это работало?

Ответ 1

Требование состоит в том, что EntityId является URI (а не URL-адресом, в этом случае важна разница между URI и URL-адресами). См. "8.3.6 Идентификатор сущности" в спецификации SAML2 Core.

Из спецификации SAML 2.0:

8.3.6 Идентификатор сущности

URI: urn:oasis:names:tc:SAML:2.0:nameid-format:entity

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

Синтаксис такого идентификатора - это URI не более 1024 символов в длину. РЕКОМЕНДОВАНО, что системный объект использует URL-адрес содержащий собственное доменное имя для идентификации себя.

Атрибуты NameQualifier, SPNameQualifier и SPProvidedID ДОЛЖНЫ опустить

Рекомендуется, чтобы URI был URL-адресом, который содержит доменное имя объекта.

Если вы хотите показывать метаданные, EntityId используется как известный URL-адрес для метаданных объекта. Не обязательно предоставлять метаданные. Если это будет сделано, метаданные могут быть предоставлены любым способом - но лучше всего опубликовать его на URL EntityId.