Я реализовал сервис-провайдер SAML для поддержки единого входа для веб-портала ASP.Net, который представляет собой программное обеспечение для термоусадочной пленки, настроенное на сайтах клиентов и должно иметь возможность взаимодействовать с любым SAML-совместимым поставщиком идентификации. 1001 *
Страница My Assertion Consumer Service (ACS) будет принимать ответ SAML с помощью методов GET и POST.
Как я понимаю протокол SAML, свойство SAML Request 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>
Заранее спасибо всем, кто может помочь!