git-svn-id: https://svn.middleware.georgetown.edu/cpp-opensaml2/trunk@192
fb386ef7-a10c-0410-8ebf-
fd3f8e989ab0
// Check for SAML Response.
Response* response = dynamic_cast<Response*>(body->getUnknownXMLObjects().front());
if (response) {
// Check for SAML Response.
Response* response = dynamic_cast<Response*>(body->getUnknownXMLObjects().front());
if (response) {
// Check InResponseTo.
if (m_correlate && response->getInResponseTo() && !XMLString::equals(m_correlate, response->getInResponseTo()))
throw BindingException("InResponseTo attribute did not correlate with the Request ID.");
// Check InResponseTo.
if (m_correlate && response->getInResponseTo() && !XMLString::equals(m_correlate, response->getInResponseTo()))
throw BindingException("InResponseTo attribute did not correlate with the Request ID.");
}
m_soaper.getPolicy().evaluate(*response);
}
m_soaper.getPolicy().evaluate(*response);
+
+ if (!m_soaper.getPolicy().isSecure())
+ throw BindingException("Security policy could not authenticate the message.");
+
env.release();
body->detach(); // frees Envelope
response->detach(); // frees Body
env.release();
body->detach(); // frees Envelope
response->detach(); // frees Body
}
m_soaper.getPolicy().evaluate(*response);
}
m_soaper.getPolicy().evaluate(*response);
+ if (!m_soaper.getPolicy().isSecure())
+ throw BindingException("Security policy could not authenticate the message.");
+
env.release();
body->detach(); // frees Envelope
response->detach(); // frees Body
env.release();
body->detach(); // frees Envelope
response->detach(); // frees Body