Package org.italiangrid.voms.ac.impl
Class DefaultVOMSValidationStrategy
java.lang.Object
org.italiangrid.voms.ac.impl.DefaultVOMSValidationStrategy
- All Implemented Interfaces:
VOMSACValidationStrategy
The Default VOMS validation strategy.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final eu.emi.security.authn.x509.X509CertChainValidatorExt
private final LocalHostnameResolver
private final VOMSTrustStore
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultVOMSValidationStrategy
(VOMSTrustStore store, eu.emi.security.authn.x509.X509CertChainValidatorExt validator) DefaultVOMSValidationStrategy
(VOMSTrustStore store, eu.emi.security.authn.x509.X509CertChainValidatorExt validator, LocalHostnameResolver resolver) -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
checkACHolder
(VOMSAttribute attributes, X509Certificate[] chain, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkACValidity
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkAuthorityKeyIdentifier
(X509Certificate aaCert, VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkAuthorityKeyIdentifierExtension
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkLocalAACertSignature
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkLSCSignature
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkNoRevAvailExtension
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkSignature
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkTargets
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) private boolean
checkUnhandledCriticalExtensions
(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) validateAC
(VOMSAttribute attributes) Validates VOMS attributes not extracted from a certificate chain (e.g., as returned from the VOMS server)validateAC
(VOMSAttribute attributes, X509Certificate[] chain) Validates a VOMS Attribute Certificateprivate boolean
validateCertificate
(X509Certificate c, List<VOMSValidationErrorMessage> validationErrors) private boolean
validateCertificateChain
(X509Certificate[] chain, List<VOMSValidationErrorMessage> validationErrors) private boolean
verifyACSignature
(VOMSAttribute attributes, X509Certificate cert)
-
Field Details
-
store
-
certChainValidator
private final eu.emi.security.authn.x509.X509CertChainValidatorExt certChainValidator -
hostnameResolver
-
-
Constructor Details
-
DefaultVOMSValidationStrategy
public DefaultVOMSValidationStrategy(VOMSTrustStore store, eu.emi.security.authn.x509.X509CertChainValidatorExt validator, LocalHostnameResolver resolver) -
DefaultVOMSValidationStrategy
public DefaultVOMSValidationStrategy(VOMSTrustStore store, eu.emi.security.authn.x509.X509CertChainValidatorExt validator)
-
-
Method Details
-
checkACHolder
private boolean checkACHolder(VOMSAttribute attributes, X509Certificate[] chain, List<VOMSValidationErrorMessage> validationErrors) -
checkACValidity
private boolean checkACValidity(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkLocalAACertSignature
private boolean checkLocalAACertSignature(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkLSCSignature
private boolean checkLSCSignature(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkSignature
private boolean checkSignature(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkTargets
private boolean checkTargets(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkNoRevAvailExtension
private boolean checkNoRevAvailExtension(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkAuthorityKeyIdentifier
private boolean checkAuthorityKeyIdentifier(X509Certificate aaCert, VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkAuthorityKeyIdentifierExtension
private boolean checkAuthorityKeyIdentifierExtension(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
checkUnhandledCriticalExtensions
private boolean checkUnhandledCriticalExtensions(VOMSAttribute attributes, List<VOMSValidationErrorMessage> validationErrors) -
validateAC
Description copied from interface:VOMSACValidationStrategy
Validates VOMS attributes not extracted from a certificate chain (e.g., as returned from the VOMS server)- Specified by:
validateAC
in interfaceVOMSACValidationStrategy
- Parameters:
attributes
- the VOMS attributes- Returns:
- a
VOMSValidationResult
object describing the outcome of the validation
-
validateAC
Description copied from interface:VOMSACValidationStrategy
Validates a VOMS Attribute Certificate- Specified by:
validateAC
in interfaceVOMSACValidationStrategy
- Parameters:
attributes
- the parsed VOMS attributeschain
- the certificate chain from which the attributes were parsed- Returns:
- a
VOMSValidationResult
object describing the outcome of the validation
-
validateCertificate
private boolean validateCertificate(X509Certificate c, List<VOMSValidationErrorMessage> validationErrors) -
validateCertificateChain
private boolean validateCertificateChain(X509Certificate[] chain, List<VOMSValidationErrorMessage> validationErrors) -
verifyACSignature
-