Package org.opensaml.xmlsec.keyinfo.impl
Class X509KeyInfoGeneratorFactory.X509KeyInfoGenerator
- java.lang.Object
-
- org.opensaml.xmlsec.keyinfo.impl.BasicKeyInfoGeneratorFactory.BasicKeyInfoGenerator
-
- org.opensaml.xmlsec.keyinfo.impl.X509KeyInfoGeneratorFactory.X509KeyInfoGenerator
-
- All Implemented Interfaces:
KeyInfoGenerator
- Enclosing class:
- X509KeyInfoGeneratorFactory
public class X509KeyInfoGeneratorFactory.X509KeyInfoGenerator extends BasicKeyInfoGeneratorFactory.BasicKeyInfoGenerator
An implementation ofKeyInfoGeneratorcapable of handling the information contained within aX509Credential.
-
-
Field Summary
Fields Modifier and Type Field Description private org.slf4j.LoggerlogClass logger.private X509KeyInfoGeneratorFactory.X509OptionsoptionsThe set of options to be used by the generator.private XMLObjectBuilder<X509Data>x509DataBuilderBuilder for X509Data objects.
-
Constructor Summary
Constructors Modifier Constructor Description protectedX509KeyInfoGenerator(X509KeyInfoGeneratorFactory.X509Options newOptions, Class<? extends KeyInfo> type)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description KeyInfogenerate(Credential credential)protected StringgetIssuerName(X509Certificate cert)Get issuer name from a certificate, using the currently configured X500DNHandler and issuer DN output format.protected StringgetSubjectName(X509Certificate cert)Get subject name from a certificate, using the currently configured X500DNHandler and subject DN output format.protected voidprocessCertKeyNameOptions(KeyInfo keyInfo, X509Certificate cert)Process the options related to generation of KeyName elements based on certificate data.protected voidprocessCertX509DataOptions(X509Data x509Data, X509Certificate cert)Process the options related to generation of child elements of X509Data based on certificate data.protected voidprocessCertX509Digest(X509Data x509Data, X509Certificate cert)Process the options related to generation of the X509Digest child element of X509Data based on certificate data.protected voidprocessCertX509IssuerSerial(X509Data x509Data, X509Certificate cert)Process the options related to generation of the X509IssuerSerial child element of X509Data based on certificate data.protected voidprocessCertX509SKI(X509Data x509Data, X509Certificate cert)Process the options related to generation of the X509SKI child element of X509Data based on certificate data.protected voidprocessCertX509SubjectName(X509Data x509Data, X509Certificate cert)Process the options related to generation of the X509SubjectDN child element of X509Data based on certificate data.protected voidprocessCRLs(KeyInfo keyInfo, X509Data x509Data, X509Credential credential)Process the value ofX509Credential.getCRLs().protected voidprocessEntityCertificate(KeyInfo keyInfo, X509Data x509Data, X509Credential credential)Process the value ofX509Credential.getEntityCertificate().protected voidprocessEntityCertificateChain(KeyInfo keyInfo, X509Data x509Data, X509Credential credential)Process the value ofX509Credential.getEntityCertificateChain().protected voidprocessSubjectAltNameKeyNames(KeyInfo keyInfo, X509Certificate cert)Process the options related to generation of KeyName elements based on subject alternative name information within the certificate data.protected voidprocessSubjectCNKeyName(KeyInfo keyInfo, X509Certificate cert)Process the options related to generation of KeyName elements based on the the common name field(s) of the certificate's subject DN.protected voidprocessSubjectDNKeyName(KeyInfo keyInfo, X509Certificate cert)Process the options related to generation of KeyName elements based on the certificate's subject DN value.-
Methods inherited from class org.opensaml.xmlsec.keyinfo.impl.BasicKeyInfoGeneratorFactory.BasicKeyInfoGenerator
buildKeyInfo, classToElementName, processEntityID, processKeyNames, processPublicKey
-
-
-
-
Field Detail
-
log
private final org.slf4j.Logger log
Class logger.
-
options
private X509KeyInfoGeneratorFactory.X509Options options
The set of options to be used by the generator.
-
x509DataBuilder
private final XMLObjectBuilder<X509Data> x509DataBuilder
Builder for X509Data objects.
-
-
Constructor Detail
-
X509KeyInfoGenerator
protected X509KeyInfoGenerator(X509KeyInfoGeneratorFactory.X509Options newOptions, Class<? extends KeyInfo> type)
Constructor.- Parameters:
newOptions- the options to be used by the generatortype- the KeyInfo elemet type
-
-
Method Detail
-
generate
@Nullable public KeyInfo generate(@Nullable Credential credential) throws SecurityException
- Specified by:
generatein interfaceKeyInfoGenerator- Overrides:
generatein classBasicKeyInfoGeneratorFactory.BasicKeyInfoGenerator- Throws:
SecurityException
-
processEntityCertificate
protected void processEntityCertificate(@Nonnull KeyInfo keyInfo, @Nonnull X509Data x509Data, @Nonnull X509Credential credential) throws SecurityExceptionProcess the value ofX509Credential.getEntityCertificate().- Parameters:
keyInfo- the KeyInfo that is being builtx509Data- the X509Data that is being builtcredential- the Credential that is being processed- Throws:
SecurityException- thrown if the certificate data can not be encoded from the Java certificate object
-
processCertX509DataOptions
protected void processCertX509DataOptions(@Nonnull X509Data x509Data, @Nonnull X509Certificate cert) throws SecurityExceptionProcess the options related to generation of child elements of X509Data based on certificate data.- Parameters:
x509Data- the X509Data element being processed.cert- the certificate being processed- Throws:
SecurityException- if the certificate cannot be processed
-
processCertKeyNameOptions
protected void processCertKeyNameOptions(@Nonnull KeyInfo keyInfo, @Nonnull X509Certificate cert)Process the options related to generation of KeyName elements based on certificate data.- Parameters:
keyInfo- the KeyInfo element being processed.cert- the certificate being processed
-
processCertX509SubjectName
protected void processCertX509SubjectName(@Nonnull X509Data x509Data, @Nonnull X509Certificate cert)Process the options related to generation of the X509SubjectDN child element of X509Data based on certificate data.- Parameters:
x509Data- the X509Data element being processed.cert- the certificate being processed
-
processCertX509IssuerSerial
protected void processCertX509IssuerSerial(@Nonnull X509Data x509Data, @Nonnull X509Certificate cert)Process the options related to generation of the X509IssuerSerial child element of X509Data based on certificate data.- Parameters:
x509Data- the X509Data element being processed.cert- the certificate being processed
-
processCertX509SKI
protected void processCertX509SKI(@Nonnull X509Data x509Data, @Nonnull X509Certificate cert) throws SecurityExceptionProcess the options related to generation of the X509SKI child element of X509Data based on certificate data.- Parameters:
x509Data- the X509Data element being processed.cert- the certificate being processed- Throws:
SecurityException- if there is an error in generating the subject key identifier
-
processCertX509Digest
protected void processCertX509Digest(@Nonnull X509Data x509Data, @Nonnull X509Certificate cert) throws SecurityExceptionProcess the options related to generation of the X509Digest child element of X509Data based on certificate data.- Parameters:
x509Data- the X509Data element being processed.cert- the certificate being processed- Throws:
SecurityException- if certificate cannot be digested
-
getSubjectName
@Nullable protected String getSubjectName(@Nullable X509Certificate cert)
Get subject name from a certificate, using the currently configured X500DNHandler and subject DN output format.- Parameters:
cert- the certificate being processed- Returns:
- the subject name
-
getIssuerName
protected String getIssuerName(@Nullable X509Certificate cert)
Get issuer name from a certificate, using the currently configured X500DNHandler and issuer DN output format.- Parameters:
cert- the certificate being processed- Returns:
- the issuer name
-
processSubjectDNKeyName
protected void processSubjectDNKeyName(@Nonnull KeyInfo keyInfo, @Nullable X509Certificate cert)Process the options related to generation of KeyName elements based on the certificate's subject DN value.- Parameters:
keyInfo- the KeyInfo element being processed.cert- the certificate being processed
-
processSubjectCNKeyName
protected void processSubjectCNKeyName(@Nonnull KeyInfo keyInfo, @Nullable X509Certificate cert)Process the options related to generation of KeyName elements based on the the common name field(s) of the certificate's subject DN.- Parameters:
keyInfo- the KeyInfo element being processed.cert- the certificate being processed
-
processSubjectAltNameKeyNames
protected void processSubjectAltNameKeyNames(@Nonnull KeyInfo keyInfo, @Nullable X509Certificate cert)Process the options related to generation of KeyName elements based on subject alternative name information within the certificate data.- Parameters:
keyInfo- the KeyInfo element being processed.cert- the certificate being processed
-
processEntityCertificateChain
protected void processEntityCertificateChain(@Nonnull KeyInfo keyInfo, @Nonnull X509Data x509Data, @Nonnull X509Credential credential) throws SecurityExceptionProcess the value ofX509Credential.getEntityCertificateChain().- Parameters:
keyInfo- the KeyInfo that is being builtx509Data- the X509Data that is being builtcredential- the Credential that is being processed- Throws:
SecurityException- thrown if the certificate data can not be encoded from the Java certificate object
-
processCRLs
protected void processCRLs(@Nonnull KeyInfo keyInfo, @Nonnull X509Data x509Data, @Nonnull X509Credential credential) throws SecurityExceptionProcess the value ofX509Credential.getCRLs().- Parameters:
keyInfo- the KeyInfo that is being builtx509Data- the X509Data that is being builtcredential- the Credential that is being processed- Throws:
SecurityException- thrown if the CRL data can not be encoded from the Java certificate object
-
-