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.Logger
LOG
-
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.PublicKey
engineLookupAndResolvePublicKey(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)
Method engineResolvePublicKey Method engineLookupAndResolvePublicKeyjavax.crypto.SecretKey
engineLookupAndResolveSecretKey(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)
Method engineResolveSecretKey Method engineLookupAndResolveSecretKeyjava.security.cert.X509Certificate
engineLookupResolveX509Certificate(org.w3c.dom.Element element, java.lang.String baseURI, StorageResolver storage)
Method engineResolveX509Certificate Method engineLookupResolveX509Certificateprivate static org.w3c.dom.Element
getDocumentElement(java.util.Set<org.w3c.dom.Node> set)
private static java.security.cert.X509Certificate
getRawCertificate(XMLSignatureInput resource)
private static org.w3c.dom.Element
obtainReferenceElement(XMLSignatureInput resource, boolean secureValidation)
private static java.security.cert.X509Certificate
resolveCertificate(org.w3c.dom.Element e, java.lang.String baseURI, StorageResolver storage)
Retrieves a x509Certificate from the given informationprivate static XMLSignatureInput
resolveInput(RetrievalMethod rm, java.lang.String baseURI, boolean secureValidation)
Resolves the input from the given retrieval methodprivate static java.security.PublicKey
resolveKey(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:
engineLookupAndResolvePublicKey
in 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:
engineLookupResolveX509Certificate
in 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 KeyResolverException
Retrieves 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 KeyResolverException
Retrieves 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:
CanonicalizationException
javax.xml.parsers.ParserConfigurationException
java.io.IOException
org.xml.sax.SAXException
KeyResolverException
-
getRawCertificate
private static java.security.cert.X509Certificate getRawCertificate(XMLSignatureInput resource) throws CanonicalizationException, java.io.IOException, java.security.cert.CertificateException
- Throws:
CanonicalizationException
java.io.IOException
java.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:
engineLookupAndResolveSecretKey
in 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)
-
-