Я внедрил поставщика услуг SAML для поддержки единого входа для веб-портала ASP.Net, который представляет собой упрощенное программное обеспечение, настроенное на сайтах клиентов и должно иметь возможность взаимодействовать с любым SAML-совместимым поставщиком удостоверений.
Страница My Assertion Consumer Service (ACS) будет принимать ответ SAML с помощью методов GET и POST.
Насколько я понимаю протокол SAML, свойство запроса SAML ProtocolBinding указывает, какие протоколы поддерживаются для ответа. В настоящее время мой запрос указывает привязку HTTP-Redirect. Однако я хотел бы заявить, что поддерживаю как HTTP-Redirect (GET), так и HTTP-POST (POST). Изучив больше документации SAML, чем я хочу повторить, я не могу найти синтаксис для объявления нескольких поддерживаемых привязок протоколов (или даже допустимо ли это делать).
Хотя я мог бы сделать это объявление настраиваемым, я бы предпочел объявить обе привязки, чтобы поставщик удостоверений работал без дополнительной настройки моего портала.
Ниже приведен пример моего запроса аутентификации. Пожалуйста, если кто-нибудь знает способ объявить как HTTP-Redirect, так и HTTP-POST для ProtocolBinding, я был бы очень признателен за ваш вклад!
<?xml version="1.0" encoding="utf-8"?>
<samlp:AuthnRequest
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
ID="[AUTHN_ID]"
Version="2.0"
IssueInstant="[ISSUE_INSTANT]"
ProtocolBinding="urn:oasis:names.tc:SAML:2.0:bindings:HTTP-Redirect"
ProviderName="[PROVIDER_NAME]"
AssertionConsumerServiceURL="[ACS_URL]">
<saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">
PortalEntityID
</saml:Issuer>
<samlp:NameIDPolicy
AllowCreate="true"
Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" />
</samlp:AuthnRequest>
Заранее спасибо всем, кто может помочь!
names.tc
противnames:tc
). - person matt   schedule 30.11.2017