public void setProtectionToken(Token protectionToken) { this.setEncryptionToken(protectionToken); this.setSignatureToken(protectionToken); this.extractIssuerPolicy(protectionToken); }
/** * @param signatureToken The signatureToken to set. */ public void setSignatureToken(Token signatureToken) { this.signatureToken = signatureToken; this.extractIssuerPolicy(signatureToken); }
private static void processSupportingTokens(SupportingToken token, RampartPolicyData rpd) throws WSSPolicyException { rpd.setSupportingTokens(token); }
protected boolean isSignatureRequired(RampartMessageData rmd) { RampartPolicyData rpd = rmd.getPolicyData(); return (rpd.isSymmetricBinding() && rpd.getSignatureToken() != null) || (!rpd.isSymmetricBinding() && !rpd.isTransportBinding() && ((rpd.getInitiatorToken() != null && rmd.isInitiator()) || rpd.getRecipientToken() != null && !rmd.isInitiator())); }
public static List<WSEncryptionPart> getEncryptedParts(RampartMessageData rmd) { RampartPolicyData rpd = rmd.getPolicyData(); SOAPEnvelope envelope = rmd.getMsgContext().getEnvelope(); List<WSEncryptionPart> encryptedPartsElements = getPartsAndElements(false, envelope, rpd.isEncryptBody() && !rpd.isEncryptBodyOptional(), rpd .getEncryptedParts(), rpd.getEncryptedElements(), rpd .getDeclaredNamespaces()); return getContentEncryptedElements(encryptedPartsElements, envelope, rpd.getContentEncryptedElements(), rpd.getDeclaredNamespaces()); }
public static List<WSEncryptionPart> getSupportingSignedParts(RampartMessageData rmd, SupportingPolicyData rpd) { SOAPEnvelope envelope = rmd.getMsgContext().getEnvelope(); return getPartsAndElements(true, envelope, rpd.isSignBody() && !rpd.isSignBodyOptional(), rpd.getSignedParts(), rpd .getSignedElements(), rpd.getDeclaredNamespaces()); }
public static List<WSEncryptionPart> getSupportingEncryptedParts(RampartMessageData rmd, SupportingPolicyData rpd) { SOAPEnvelope envelope = rmd.getMsgContext().getEnvelope(); return getPartsAndElements(false, envelope, rpd.isEncryptBody() && !rpd.isEncryptBodyOptional(), rpd.getEncryptedParts(), rpd .getEncryptedElements(), rpd.getDeclaredNamespaces()); }
/** * Evaluate policy data that is common to symmetric and asymmetric bindings. * * @param binding * The symmetric/asymmetric binding data * @param rpd * The WSS4J data to initialize */ private static void symmAsymmBinding( SymmetricAsymmetricBindingBase binding, RampartPolicyData rpd) { rpd.setEntireHeadersAndBodySignatures(binding .isEntireHeadersAndBodySignatures()); rpd.setProtectionOrder(binding.getProtectionOrder()); rpd.setSignatureProtection(binding.isSignatureProtection()); rpd.setTokenProtection(binding.isTokenProtection()); rpd.setAlgorithmSuite(binding.getAlgorithmSuite()); }
/** * Evaluate the asymmetric policy binding data. * * @param binding * The binding data * @param rpd * The WSS4J data to initialize * @throws WSSPolicyException */ private static void processAsymmetricPolicyBinding( AsymmetricBinding binding, RampartPolicyData rpd) throws WSSPolicyException { rpd.setAsymmetricBinding(true); binding(binding, rpd); symmAsymmBinding(binding, rpd); asymmetricBinding(binding, rpd); }
/** * Evaluate the symmetric policy binding data. * * @param symmBinding * The binding data * @param rpd * The WSS4J data to initialize * @throws WSSPolicyException */ private static void processSymmetricPolicyBinding( SymmetricBinding symmBinding, RampartPolicyData rpd) throws WSSPolicyException { rpd.setSymmetricBinding(true); binding(symmBinding, rpd); symmAsymmBinding(symmBinding, rpd); symmetricBinding(symmBinding, rpd); }
/** * @param binding * @param rpd */ private static void processTransportBinding(TransportBinding binding, RampartPolicyData rpd) { binding(binding, rpd); rpd.setTransportBinding(true); rpd.setTokenProtection(binding.isTokenProtection()); TransportToken transportToken = binding.getTransportToken(); if ( transportToken != null ) { rpd.setTransportToken(transportToken.getTransportToken()); } }
private static void processWSS11(Wss11 wss11, RampartPolicyData rpd) { rpd.setSignatureConfirmation(wss11.isRequireSignatureConfirmation()); rpd.setWss11(wss11); }
/** * Sets web service security policy version. The policy version is extracted from an assertion. * But if namespace is already set this method will just return. * @param assertion The assertion to get policy namespace. */ private static void setWebServiceSecurityPolicyNS(Assertion assertion, RampartPolicyData policyData) { if (policyData.getWebServiceSecurityPolicyNS() == null) { policyData.setWebServiceSecurityPolicyNS(assertion.getName().getNamespaceURI()); } }
private static void processRequiredElements(RequiredElements req, RampartPolicyData rpd) { Iterator<String> it = req.getXPathExpressions().iterator(); while (it.hasNext()) { rpd.setRequiredElements(it.next()); } rpd.addDeclaredNamespaces(req.getDeclaredNamespaces()); } /**
/** * Add the rampart configuration information into rampart policy data. * @param config * @param rpd */ private static void processRampartConfig(RampartConfig config, RampartPolicyData rpd) { rpd.setRampartConfig(config); }
/** * Add TRust10 assertion info into rampart policy data * @param trust10 * @param rpd */ private static void processTrust10(Trust10 trust10, RampartPolicyData rpd) { rpd.setTrust10(trust10); }
private static void processMTOMSerialization(MTOMAssertion mtomAssertion, RampartPolicyData rpd) { rpd.setMTOMAssertion(mtomAssertion); } }
private static void processWSS10(Wss10 wss10, RampartPolicyData rpd) { rpd.setWss10(wss10); }
/** * Returns true if needed to encrypt first. * @param rpd Rampart policy data * @return true if policy says we need to encrypt first else false. */ public static boolean encryptFirst(RampartPolicyData rpd) { return SPConstants.ENCRYPT_BEFORE_SIGNING.equals(rpd.getProtectionOrder()); }
/** * @param encryptionToken The encryptionToken to set. */ public void setEncryptionToken(Token encryptionToken) { this.encryptionToken = encryptionToken; this.extractIssuerPolicy(encryptionToken); }