Class RetrievalMethodResolver
- java.lang.Object
-
- org.apache.xml.security.keys.keyresolver.KeyResolverSpi
-
- org.apache.xml.security.keys.keyresolver.implementations.RetrievalMethodResolver
-
public class RetrievalMethodResolver extends KeyResolverSpi
The RetrievalMethodResolver can retrieve public keys and certificates from other locations. The location is specified using the ds:RetrievalMethod element which points to the location. This includes the handling of raw (binary) X.509 certificate which are not encapsulated in an XML structure. If the retrieval process encounters an element which the RetrievalMethodResolver cannot handle itself, resolving of the extracted element is delegated back to the KeyResolver mechanism.
-
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.LoggerLOG-
Fields inherited from class org.apache.xml.security.keys.keyresolver.KeyResolverSpi
globalResolver, properties, secureValidation
-
-
Constructor Summary
Constructors Constructor Description RetrievalMethodResolver()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.security.PublicKeyengineLookupAndResolvePublicKey(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)Method engineResolvePublicKey Method engineLookupAndResolvePublicKeyjavax.crypto.SecretKeyengineLookupAndResolveSecretKey(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)Method engineResolveSecretKey Method engineLookupAndResolveSecretKeyjava.security.cert.X509CertificateengineLookupResolveX509Certificate(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)Method engineResolveX509Certificate Method engineLookupResolveX509Certificateprivate static org.w3c.dom.ElementgetDocumentElement(java.util.Set<org.w3c.dom.Node> set)private static java.security.cert.X509CertificategetRawCertificate(XMLSignatureInput resource)private static org.w3c.dom.ElementobtainReferenceElement(XMLSignatureInput resource, boolean secureValidation)private static java.security.cert.X509CertificateresolveCertificate(org.w3c.dom.Element e, java.lang.String baseURI, StorageResolver storage)Retrieves a x509Certificate from the given informationprivate static XMLSignatureInputresolveInput(RetrievalMethod rm, java.lang.String baseURI, boolean secureValidation)Resolves the input from the given retrieval methodprivate static java.security.PublicKeyresolveKey(org.w3c.dom.Element e, java.lang.String baseURI, StorageResolver storage)Retrieves a PublicKey from the given information-
Methods inherited from class org.apache.xml.security.keys.keyresolver.KeyResolverSpi
engineCanResolve, engineGetProperty, engineLookupAndResolvePrivateKey, engineResolvePublicKey, engineResolveSecretKey, engineResolveX509Certificate, engineSetProperty, getDocFromBytes, setGlobalResolver, setSecureValidation, understandsProperty
-
-
-
-
Method Detail
-
engineLookupAndResolvePublicKey
public java.security.PublicKey engineLookupAndResolvePublicKey(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)Method engineResolvePublicKey Method engineLookupAndResolvePublicKey- Overrides:
engineLookupAndResolvePublicKeyin classKeyResolverSpi- Parameters:
element-baseURI-storage-- Returns:
- resolved public key from the registered from the element.
-
engineLookupResolveX509Certificate
public java.security.cert.X509Certificate engineLookupResolveX509Certificate(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)Method engineResolveX509Certificate Method engineLookupResolveX509Certificate- Overrides:
engineLookupResolveX509Certificatein classKeyResolverSpi- Parameters:
element-baseURI-storage-- Returns:
- resolved X509Certificate key from the registered from the elements
-
resolveCertificate
private static java.security.cert.X509Certificate resolveCertificate(org.w3c.dom.Element e, java.lang.String baseURI, StorageResolver storage) throws KeyResolverExceptionRetrieves a x509Certificate from the given information- Parameters:
e-baseURI-storage-- Returns:
- a x509Certificate from the given information
- Throws:
KeyResolverException
-
resolveKey
private static java.security.PublicKey resolveKey(org.w3c.dom.Element e, java.lang.String baseURI, StorageResolver storage) throws KeyResolverExceptionRetrieves a PublicKey from the given information- Parameters:
e-baseURI-storage-- Returns:
- a PublicKey from the given information
- Throws:
KeyResolverException
-
obtainReferenceElement
private static org.w3c.dom.Element obtainReferenceElement(XMLSignatureInput resource, boolean secureValidation) throws CanonicalizationException, javax.xml.parsers.ParserConfigurationException, java.io.IOException, org.xml.sax.SAXException, KeyResolverException
- Throws:
CanonicalizationExceptionjavax.xml.parsers.ParserConfigurationExceptionjava.io.IOExceptionorg.xml.sax.SAXExceptionKeyResolverException
-
getRawCertificate
private static java.security.cert.X509Certificate getRawCertificate(XMLSignatureInput resource) throws CanonicalizationException, java.io.IOException, java.security.cert.CertificateException
- Throws:
CanonicalizationExceptionjava.io.IOExceptionjava.security.cert.CertificateException
-
resolveInput
private static XMLSignatureInput resolveInput(RetrievalMethod rm, java.lang.String baseURI, boolean secureValidation) throws XMLSecurityException
Resolves the input from the given retrieval method- Returns:
- the input from the given retrieval method
- Throws:
XMLSecurityException
-
engineLookupAndResolveSecretKey
public javax.crypto.SecretKey engineLookupAndResolveSecretKey(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)Method engineResolveSecretKey Method engineLookupAndResolveSecretKey- Overrides:
engineLookupAndResolveSecretKeyin classKeyResolverSpi- Parameters:
element-baseURI-storage-- Returns:
- resolved SecretKey key from the registered from the elements
-
getDocumentElement
private static org.w3c.dom.Element getDocumentElement(java.util.Set<org.w3c.dom.Node> set)
-
-