Подходят ли URL-адреса (не домены) для идентификаторов OpenID 2.0?
Ранее я использовал идентификаторы и делегирование OpenID 2.0 [1] в контексте сценариев использования indieweb, где предполагается, что каждый пользователь контролирует домен. Таким образом, идентичность будет выглядеть https://example.com
Может ли идентификатор OpenID 2.0 принимать форму URL, а не просто домена? Например, оба https://example.com/alice
а также https://example.com/bob
было бы:
- действительные, независимые личности
- каждый может делегировать отдельному поставщику удостоверений
[1] Не OpenID Connect, который не поддерживает делегирование
1 ответ
Пользовательские идентификаторы должны быть нормализованы. Если вход обрабатывается как HTTP(S) URL:
- использование
http
если схема не указана - Снимите фрагмент (включая
#
) - Следуйте перенаправления
- Нормализуйте целевой URL в соответствии с RFC 3986
Приложение А.1. дает несколько примеров нормализации: входы example.com
а также http://example.com
станет http://example.com/
,
Таким образом, идентификатор не может быть просто доменом, это должен быть URL. И нет никакой разницы между URL https://example.com/
а также https://example.com/foo
, Это означает, что совершенно нормально предоставлять несколько идентификаторов под одним хостом / доменом.