SoapMessage soapMessage = (SoapMessage) message; SOAPMessage doc = getSOAPMessage(soapMessage); Element elem = WSSecurityUtil.getSecurityHeader(doc.getSOAPPart(), ""); // get a BinarySignature tag Node binarySignatureTag = elem.getFirstChild(); BinarySecurity token = new X509Security((Element) binarySignatureTag); // a X509Certificate construction InputStream in = new ByteArrayInputStream(token.getToken()); CertificateFactory certFactory = CertificateFactory.getInstance("X.509"); X509Certificate cert = (X509Certificate)certFactory.generateCertificate(in);
@Override public int hashCode() { int result = 17; byte[] token = getToken(); if (token != null) { result = 31 * result + Arrays.hashCode(token); } result = 31 * result + getValueType().hashCode(); result = 31 * result + getEncodingType().hashCode(); return result; }
@Override public boolean equals(Object object) { if (!(object instanceof BinarySecurity)) { return false; } BinarySecurity binarySecurity = (BinarySecurity)object; byte[] token = binarySecurity.getToken(); if (!Arrays.equals(token, getToken())) { return false; } String valueType = binarySecurity.getValueType(); if (!valueType.equals(getValueType())) { return false; } String encodingType = binarySecurity.getEncodingType(); if (!encodingType.equals(getEncodingType())) { return false; } return true; }
byte[] token = binarySecurity.getToken();
private SecurityToken createSecurityToken(BinarySecurity binarySecurityToken) { SecurityToken token = new SecurityToken(binarySecurityToken.getID()); token.setToken(binarySecurityToken.getElement()); token.setSecret(binarySecurityToken.getToken()); token.setTokenType(binarySecurityToken.getValueType()); return token; }
private SecurityToken createSecurityToken(BinarySecurity binarySecurityToken) { SecurityToken token = new SecurityToken(binarySecurityToken.getID()); token.setToken(binarySecurityToken.getElement()); token.setSecret(binarySecurityToken.getToken()); token.setTokenType(binarySecurityToken.getValueType()); return token; }
public int doubleIt(int numberToDouble) throws DoubleItFault { if (numberToDouble == 0) { throw new DoubleItFault("0 can't be doubled!"); } List<WSHandlerResult> results = CastUtils.cast((List<?>)wsContext.getMessageContext().get(WSHandlerConstants.RECV_RESULTS)); Assert.assertNotNull("Security Results cannot be null", results); Assert.assertTrue(!results.isEmpty()); WSHandlerResult result = results.get(0); List<WSSecurityEngineResult> securityResults = result.getResults(); Assert.assertNotNull("Security Results cannot be null", securityResults); Assert.assertTrue(!securityResults.isEmpty()); WSSecurityEngineResult securityResult = securityResults.get(0); BinarySecurity binarySecurityToken = (BinarySecurity)securityResult.get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN); Assert.assertNotNull(binarySecurityToken); Assert.assertTrue(Arrays.equals(binarySecurityToken.getToken(), "This is a token".getBytes())); return numberToDouble * 2; }
BinarySecurity bstToken = (BinarySecurity)bstResult.get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN); byte[] tokenDigest = KeyUtils.generateDigest(bstToken.getToken()); if (Arrays.equals(tokenDigest, keyBytes)) { secretKey = (byte[])bstResult.get(WSSecurityEngineResult.TAG_SECRET);
BinarySecurity bstToken = (BinarySecurity)bstResult.get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN); byte[] tokenDigest = KeyUtils.generateDigest(bstToken.getToken()); if (Arrays.equals(tokenDigest, keyBytes)) { secretKey = (byte[])bstResult.get(WSSecurityEngineResult.TAG_SECRET);
BinarySecurity bstToken = (BinarySecurity)bstResult.get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN); byte[] tokenDigest = KeyUtils.generateDigest(bstToken.getToken()); if (Arrays.equals(tokenDigest, keyBytes)) { secretKey = (byte[])bstResult.get(WSSecurityEngineResult.TAG_SECRET);