All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.ws.security.message.token.PKIPathSecurity Maven / Gradle / Ivy

Go to download

Apache WSS4J is an implementation of the Web Services Security (WS-Security) being developed at OASIS Web Services Security TC. WSS4J is a primarily a Java library that can be used to sign and verify SOAP Messages with WS-Security information. WSS4J will use Apache Axis and Apache XML-Security projects and will be interoperable with JAX-RPC based server/clients and .NET server/clients.

There is a newer version: 1.6.19
Show newest version
/*
 * Copyright  2003-2004 The Apache Software Foundation.
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 *
 */

package org.apache.ws.security.message.token;

import org.apache.ws.security.WSConstants;
import org.apache.ws.security.WSSecurityException;
import org.apache.ws.security.components.crypto.Crypto;
import org.w3c.dom.Document;
import org.w3c.dom.Element;

import java.security.cert.X509Certificate;

/**
 * PKIPath Security Token.
 * 

* * @author Davanum Srinivas ([email protected]). */ public class PKIPathSecurity extends BinarySecurity { private static final String type = WSConstants.X509TOKEN_NS + "#X509PKIPathv1"; /** * Constructor. *

* * @throws WSSecurityException */ public PKIPathSecurity(Element elem) throws WSSecurityException { super(elem); if (!getValueType().equals(getType())) { throw new WSSecurityException( WSSecurityException.INVALID_SECURITY_TOKEN, "invalidValueType", new Object[]{type, getValueType()}); } } /** * Constructor. *

*/ public PKIPathSecurity(Document doc) { super(doc); setValueType(getType()); } /** * get the X509Certificate array. *

* * @param reverse * @param crypto * @return array of certificates * @throws WSSecurityException */ public X509Certificate[] getX509Certificates(boolean reverse, Crypto crypto) throws WSSecurityException { byte[] data = getToken(); if (data == null) { return null; } X509Certificate[] certs = null; certs = crypto.getX509Certificates(data, reverse); return certs; } /** * set the X509Certificate array. *

* * @param certs * @param reverse * @param crypto * @throws WSSecurityException */ public void setX509Certificates(X509Certificate[] certs, boolean reverse, Crypto crypto) throws WSSecurityException { if (certs == null) { throw new WSSecurityException(WSSecurityException.FAILURE, "noCert"); } byte[] data = crypto.getCertificateData(reverse, certs); setToken(data); } public static String getType() { return type; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy