Как изменить IsPassive="true" на false в скорости (тест saml 2.0) с WSO2 IS
Я получаю по умолчанию IsPassive="true" в запросе saml, который не позволяет тестировать дальше. Может кто-нибудь, пожалуйста, дайте мне знать, как это отключить?
Образец запроса и ответ
<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
AssertionConsumerServiceURL="XXXXXX"
Destination="XXXX/samlsso"
ForceAuthn="false"
ID="0"
IsPassive="true"
IssueInstant="2017-11-14T04:33:32.667Z"
ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Version="2.0"
>
<samlp:Issuer xmlns:samlp="urn:oasis:names:tc:SAML:2.0:assertion">XXX_SIT</samlp:Issuer>
<saml2p:NameIDPolicy xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
AllowCreate="true"
Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent"
SPNameQualifier="Issuer"
/>
<saml2p:RequestedAuthnContext xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
Comparison="exact"
>
<saml:AuthnContextClassRef xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml:AuthnContextClassRef>
</saml2p:RequestedAuthnContext>
</samlp:AuthnRequest>
<saml2p:Response Destination="XXXXX"
ID="makcbhpbkmpgheepeaibnbmolnhalmdchlpfjiij"
InResponseTo="0"
IssueInstant="2017-11-14T04:33:31.297Z"
Version="2.0"
xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
>
<saml2:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity"
xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion"
>localhost</saml2:Issuer>
<saml2p:Status>
<saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Responder">
<saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:NoPassive" />
</saml2p:StatusCode>
<saml2p:StatusMessage>Cannot authenticate Subject in Passive Mode</saml2p:StatusMessage>
</saml2p:Status>
</saml2p:Response>
1 ответ
Вы не можете отключить пассивный запрос из конфигурации, но вы можете обойти его, если у вас есть прямой доступ к http://localhost:8080/travelocity.com/index.jsp
стр.
В travelocity, запрос пассивной аутентификации отправляется при доступе к корневому контексту приложения, например: http://localhost:8080/travelocity.com
, Цель этого вызова - проверить, имеет ли пользователь уже аутентифицированный сеанс с IS. Если у пользователя есть аутентифицированный сеанс, IS вернет ответ SAML с подтверждением, и данные о скорости будут перенаправлены в home.jsp. Если у пользователя нет аутентифицированного сеанса, IS вернет ответ SAML, который вы упомянули выше ("Не удается аутентифицировать субъект в пассивном режиме"). Как только travelocity получит этот ответ, его следует перенаправить в index.jsp, где у вас будут разные варианты аутентификации с использованием SAML.
Параметры входа, которые вы видите там, не используют пассивные запросы аутентификации SAML.