Name
, это просто имя. Если мы говорим о человеке, подумайте «Эрик»; сервер "file01".
A NameIdentifier
- это идентификатор объекта. Возвращаясь к нашему объекту person, UserID Эрика может быть 435 в вашей базе данных. Для сервера Идентификатор может быть чем-то вроде FQDN или SID.
Согласно этой записи , по-видимому, идентификатор имени был свойством SAML 1.1 и заменяется NameID
в SAML 2.0.
Уникальный или нет?
Я хотел обратиться к комментарию @ Джейсона и посту @ nzpcmad. Я не вижу уникальности как четкого требования. Вопрос помечен adfs2.0 , но указанная схема принадлежит OASIS. Так что это те интерпретации двух сторон, которые мы должны сбалансировать.
Позиция Microsoft в отношении ADFS явно заключается в том, что существует уникальное требование. Мы видим это в статье " Роль претензий ". Без сомнения, ADFS отбрасывает большую тень, но это похоже на детали реализации.
Глядя на спецификацию SAML 1.1 , я не вижу такого утверждения. Самое близкое, что мы получаем в разделе 2.4.2.2 спецификации:
Элемент указывает на предмет сочетанием
квалификатор имени, имя и формат. Элемент имеет
следующие атрибуты:
...
NameQualifier [необязательно] Защитный или административный домен, который
уточняет название предмета. Этот атрибут обеспечивает средство
объединять имена из разных пользовательских хранилищ без коллизий.
Текст спецификации говорит мне, что я должен быть в состоянии найти человека, использующего комбинацию из трех атрибутов, но он не делает никаких утверждений относительно уникальности. Не могу ли я иметь две записи, которые указывают на одного и того же пользователя? Кажется, так. Более того, не указывает ли спецификация, что атрибут NameQualifier
необходим в случаях, когда NameIdentifier
недостаточно для однозначной идентификации имени?
Так к чему все это приведет?
- Будьте осторожны, скорее всего, безопаснее.
- Раскройте позицию вашего провайдера по теме.