2016-05-03 2 views
0

Согласно спецификациям OpenId Connect, идентификатор объекта, возвращаемый в токене идентификатора или из конечной точки пользователя, может быть public or pairwise. Если это попарный субъектный идентификатор, он вычисляется с использованием перенаправления Uri или идентификатора сектора Uri.Идентификатор объекта и идентификатор токена/конечная точка конечной точки/конечной точки ID объекта

Моих вопросов:

  1. Как нет перенаправления URI в Userinfo request, как вычисляются парной субъект идентификатор? Означает ли это, что токен доступа должен содержать перенаправление Uri (или публичный, и попарный идентификатор объекта)?
  2. Клиенты и серверы ресурсов могут звонить introspection endpoint. В Introspection Response серверы ресурсов должны получить общедоступный идентификатор субъекта, в то время как клиенты ожидают попарно. Как это можно достичь. Как и в предыдущем вопросе, означает ли это, что токен доступа должен содержать дополнительную информацию для вычисления идентификатора субъекта в зависимости от того, кто вызывает конечную точку?

Заранее спасибо.

ответ

2

Во-первых, клиент либо настроен для общедоступных, либо для парных идентификаторов, но не одновременно в обоих случаях (что, вероятно, в первую очередь приведет к поражению цели конфиденциальности при использовании парных идентификаторов. Таким образом, абоненты любой конечной точки (независимо от того, UserInfo или интроспекция) никогда бы не видеть их неоднозначен.

Как поставщик карта маркер доступа к объекту?

для классических маркеров непрозрачного доступа (т.е. случайная строка) Провайдер просто хранит справочную таблицу от доступа токен субъекту (попарно или нет, не имеет значения).

Для заказа (например, JWT), он может потенциально искать объект из самого (проверенного) токена. Но и в этом случае никогда не нужно вычислять попарно из публичных предметов (и наоборот невозможно даже), поскольку правильный субъект всегда находится в токене.

+0

Спасибо. Я с тобой согласен. Поскольку идентификатор Id и конечная точка Userinfo предназначены для клиента для аутентификации, нет никакой проблемы для обслуживания общедоступного или парного ID (в зависимости от конфигурации клиента). Но что касается конечной точки интроспекции, я думаю, что «sub» не следует включать, если сервер ресурсов не отправляет запрос (и в этом случае должен быть включен только публичный идентификатор). –

Смежные вопросы