private void storeResults(UsernameTokenPrincipal principal, Subject subject, SoapMessage message) { List<WSSecurityEngineResult> v = new ArrayList<>(); int action = WSConstants.UT; if (principal.getPassword() == null) { action = WSConstants.UT_NOPASSWORD; } WSSecurityEngineResult result = new WSSecurityEngineResult(action, principal, null, null, null); if (subject != null) { result.put(WSSecurityEngineResult.TAG_SUBJECT, subject); } v.add(0, result); List<WSHandlerResult> results = CastUtils.cast((List<?>)message .get(WSHandlerConstants.RECV_RESULTS)); if (results == null) { results = new ArrayList<>(); message.put(WSHandlerConstants.RECV_RESULTS, results); } WSHandlerResult rResult = new WSHandlerResult(null, v, Collections.singletonMap(action, v)); results.add(0, rResult); assertTokens(message, principal, false); }
private void storeResults(UsernameTokenPrincipal principal, Subject subject, SoapMessage message) { List<WSSecurityEngineResult> v = new ArrayList<>(); int action = WSConstants.UT; if (principal.getPassword() == null) { action = WSConstants.UT_NOPASSWORD; } WSSecurityEngineResult result = new WSSecurityEngineResult(action, principal, null, null, null); if (subject != null) { result.put(WSSecurityEngineResult.TAG_SUBJECT, subject); } v.add(0, result); List<WSHandlerResult> results = CastUtils.cast((List<?>)message .get(WSHandlerConstants.RECV_RESULTS)); if (results == null) { results = new ArrayList<>(); message.put(WSHandlerConstants.RECV_RESULTS, results); } WSHandlerResult rResult = new WSHandlerResult(null, v, Collections.singletonMap(action, v)); results.add(0, rResult); assertTokens(message, principal, false); }
protected void addToken(SoapMessage message) { UsernameToken tok = assertTokens(message); Header h = findSecurityHeader(message, true); Element el = (Element)h.getObject(); Document doc = el.getOwnerDocument(); WSSecUsernameToken utBuilder = addUsernameToken(message, doc, tok); if (utBuilder == null) { AssertionInfoMap aim = message.get(AssertionInfoMap.class); Collection<AssertionInfo> ais = PolicyUtils.getAllAssertionsByLocalname(aim, SPConstants.USERNAME_TOKEN); for (AssertionInfo ai : ais) { if (ai.isAsserted()) { ai.setAsserted(false); } } return; } utBuilder.prepare(); el.appendChild(utBuilder.getUsernameTokenElement()); }
protected UsernameToken assertTokens(SoapMessage message) { AssertionInfoMap aim = message.get(AssertionInfoMap.class); PolicyUtils.assertPolicy(aim, SPConstants.USERNAME_TOKEN10); PolicyUtils.assertPolicy(aim, SPConstants.USERNAME_TOKEN11); PolicyUtils.assertPolicy(aim, SPConstants.HASH_PASSWORD); PolicyUtils.assertPolicy(aim, SPConstants.NO_PASSWORD); PolicyUtils.assertPolicy(aim, SP13Constants.NONCE); PolicyUtils.assertPolicy(aim, SP13Constants.CREATED); return (UsernameToken)assertTokens(message, SPConstants.USERNAME_TOKEN, true); }
protected void addToken(SoapMessage message) { UsernameToken tok = assertTokens(message); Header h = findSecurityHeader(message, true); Element el = (Element)h.getObject(); Document doc = el.getOwnerDocument(); WSSecUsernameToken utBuilder = addUsernameToken(message, doc, tok); if (utBuilder == null) { AssertionInfoMap aim = message.get(AssertionInfoMap.class); Collection<AssertionInfo> ais = PolicyUtils.getAllAssertionsByLocalname(aim, SPConstants.USERNAME_TOKEN); for (AssertionInfo ai : ais) { if (ai.isAsserted()) { ai.setAsserted(false); } } return; } utBuilder.prepare(); el.appendChild(utBuilder.getUsernameTokenElement()); }
protected UsernameToken assertTokens(SoapMessage message) { AssertionInfoMap aim = message.get(AssertionInfoMap.class); PolicyUtils.assertPolicy(aim, SPConstants.USERNAME_TOKEN10); PolicyUtils.assertPolicy(aim, SPConstants.USERNAME_TOKEN11); PolicyUtils.assertPolicy(aim, SPConstants.HASH_PASSWORD); PolicyUtils.assertPolicy(aim, SPConstants.NO_PASSWORD); PolicyUtils.assertPolicy(aim, SP13Constants.NONCE); PolicyUtils.assertPolicy(aim, SP13Constants.CREATED); return (UsernameToken)assertTokens(message, SPConstants.USERNAME_TOKEN, true); }