Службой ADFS (Active Directory Federation Services) используется протокол пассивной запрашивающей стороны федерации веб-служб (WS-F PRP — WS-Federation Passive Requestor Protocol), в котором Заявки переносятся в маркерах безопасности, выдаваемых Служба федерации. Заявки заполняются первоначально из Хранилища учетных записей, в качестве которых используются хранилища учетных записей Active Directory или хранилища учетных записей ADAM (Active Directory Application Mode).
Кроме того, служба федерации может сопоставлять эти заявки, когда они выдаются федеративному партнеру или когда они поступают от федеративного партнера. Сопоставление заявок — это операция сопоставления, удаления, фильтрации или передачи входящих заявок в исходящие заявки. Сопоставление заявок может быть разным для каждого федеративного партнера. Определение заполнения и сопоставления этих заявок важно для настройки федерации. При сопоставлении заявок сравниваются строки с учетом регистра набранных данных. Процесс сопоставления заявок показан на следующем рисунке.
Наборы заявок организации
Все входящие заявки сопоставляются с заявками организации. Заявки организации — это заявки в промежуточном или нормализованном виде в пределах пространства имен организации. Все внутренние операции службы федерации выполняются на наборе заявок организации. Заявки организации потребляются приложениями ресурса.
В случае заявок организации сопоставления не нуждаются в индивидуальном управлении между любыми двумя организациями, которым требуется взаимодействовать друг с другом. Каждая организация определяет одиночное сопоставление заявок своей организации с другими заявками либо других заявок с заявками своей организации. Это уменьшает сложность администрирования ADFS. Например, если в федерации имеется:
- x партнеров по учетным записям
- y приложений ресурса
В федерации имеется x + y сопоставлений заявок. Это меньше возможного количества x ? y сопоставлений заявок. В качестве конкретного примера рассмотрим, когда в службе федерации имеется:
- 3 партнера по учетным записям
- 7 приложений ресурса
Федерации требуется лишь 10 сопоставлений заявок по сравнению с 21 сопоставлением заявок в случае, когда сопоставление выполняется непосредственно из входящих заявок на исходящие заявки.
На электронную почту
Заявки на электронную почту всегда сопоставляются с заявками на электронную почту. Как часть этого сопоставления, в службе федерации учетных записей доменный суффикс может сопоставляться с постоянным значением. В службе федерации ресурсов доменный суффикс может фильтроваться относительно списка постоянных значений.
В следующем примере описывается федерация ADFS, существующая между двумя организациями, «Tailspin Toys» и «Adventure Works». В этом примере организация «Tailspin Toys» является партнером по учетным записям, а организация «Adventure Works» — партнером по ресурсам.
- Организация «Tailspin Toys», действующая как служба федерации
учетных записей, сопоставляет заявки организации на электронную
почту с исходящей заявкой на электронную почту для организации
«Adventure Works». В качестве части этого сопоставления организация
отображает все суффиксы электронной почты на tailspintoys.com. Для
заданной заявки организации на электронную почту
(e-mail=jsmith@sales.tailspintoys.com) исходящая заявка на
электронную почту будет следующей
(e-mail=jsmith@tailspintoys.com).
- Организация «Adventure Works», действующая как служба федерации
ресурсов, сопоставляет входящие заявки организации «Tailspin Toys»
на электронную почту с заявкой организации на электронную почту и
как часть этого сопоставления, выполняет фильтрацию списка
суффиксов относительно строки tailspintoys.com. Поэтому входящая
заявка организации «Tailspin Toys» на электронную почту
(email=jsmith@tailspintoys.com) принимается, а входящая заявка
организации «Tailspin Toys» на электронную почту
(e-mail=jsmith@adventure-works.com) отбрасывается.
На основное имя пользователя (UPN)
Заявки на основное имя пользователя (UPN) всегда сопоставляются с заявками на основное имя пользователя (UPN). Они подвергаются сопоставлению и фильтрации суффиксов так же, как и заявки на электронную почту. Однако, так как служба Active Directory допускает существование UPN без символа @, служба федерации учетных записей присоединяет символ @, сопровождаемый суффиксом, если определено сопоставление суффиксов UPN. В противном случае, если какой-либо суффикс пропускается, служба федерации передает UPN как есть, без символа @. Если на стороне ресурсов разрешены любые суффиксы UPN, то UPN без символа @ принимается. В противном случае, если разрешен конкретный суффикс UPN, то UPN без символа @ отклоняется.
На общее имя
Заявки на общее имя всегда сопоставляются с заявками на общее имя. Для них нет дополнительных правил.
Настраиваемые
Настраиваемые заявки всегда сопоставляются с настраиваемыми заявками. Например, если задан набор входящих заявок, состоящих из (UPN, Custom=[EmployeeNumber, TaxPayerID]), и набор заявок организации, состоящих из (UPN, Custom=[Employee, SSN]), то можно создать сопоставления EmployeeNumber с Employee и TaxPayerID с SSN.
О группе
Заявки о группах всегда сопоставляются с заявками о группах. Например, если задан набор входящих заявок, состоящих из (UPN, Group=[One, Two, Three]), и набор заявок организации, состоящих из (UPN, Group=[X,Y,Z]), то можно создать сопоставления One с Y, Two с X и Three с Z.
Сопоставление «группа-с-UPN»
Помимо стандартных сопоставлений, описанных в предыдущих разделах, можно также использовать специальные сопоставления «группа-с-UPN». Сопоставление заявок о группе с заявками на UPN поддерживается только в службе федерации ресурсов, когда заявки поступают от партнера по учетным записям. В этом случае заявки на основное имя пользователя (UPN) не сопоставляются с заявками на основное имя пользователя (UPN). Вместо этого предоставляется упорядоченный список сопоставлений заявок о группах с заявками на UPN.
Например, список сопоставлений заявок о группах с заявками на UPN мог бы быть следующим:
- Dev сопоставляется с developers@internal.tailspintoys.com
- Test сопоставляется с testers@internal.tailspintoys.com
- PM сопоставляется с progmgrs@internal.tailspintoys.com
Если имеется набор входящих заявок, состоящих из (Common name=John Smith, Group=[Dev]), то набор заявок организации содержит (Common name=John Smith, UPN=developers@internal.tailspintoys.com). Помните, что список является упорядоченным. Поэтому для набора заявок, состоящих из (Common name=John Smith, Group=[Dev,PM]), получается следующий результат: (Common name=John Smith, UPN=developers@internal.tailspintoys.com). Кроме того, если входящая заявка имеет UPN, то UPN перезаписывается. Это специальное правило сопоставления поддерживает, в частности, групповые учетные записи ресурсов, которые получают доступ к прежним версиям ресурсов. Порядок сопоставлений заявок о группах с заявками на UPN определяется в политике доверия службы федерации.