Search in sources :

Example 21 with StatusType

use of org.apache.cxf.xkms.model.xkms.StatusType in project cxf by apache.

the class TrustedAuthorityValidator method validate.

@Override
public StatusType validate(ValidateRequestType request) {
    StatusType status = new StatusType();
    List<X509Certificate> certificates = ValidateRequestParser.parse(request);
    if (certificates == null || certificates.isEmpty()) {
        status.setStatusValue(KeyBindingEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_INDETERMINATE);
        status.getIndeterminateReason().add("http://www.cxf.apache.org/2002/03/xkms#RequestNotSupported");
    }
    if (isCertificateChainValid(certificates)) {
        status.getValidReason().add(ReasonEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_ISSUER_TRUST.value());
        status.setStatusValue(KeyBindingEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_VALID);
    } else {
        status.getInvalidReason().add(ReasonEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_ISSUER_TRUST.value());
        status.setStatusValue(KeyBindingEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_INVALID);
    }
    return status;
}
Also used : StatusType(org.apache.cxf.xkms.model.xkms.StatusType) X509Certificate(java.security.cert.X509Certificate)

Example 22 with StatusType

use of org.apache.cxf.xkms.model.xkms.StatusType in project cxf by apache.

the class DateValidatorTest method validateDateOK.

@Test
public void validateDateOK() throws JAXBException {
    StatusType result = processRequest("/validateRequestOK.xml");
    Assert.assertEquals(KeyBindingEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_VALID, result.getStatusValue());
    Assert.assertFalse(result.getValidReason().isEmpty());
    Assert.assertEquals(ReasonEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_VALIDITY_INTERVAL.value(), result.getValidReason().get(0));
}
Also used : StatusType(org.apache.cxf.xkms.model.xkms.StatusType) Test(org.junit.Test)

Example 23 with StatusType

use of org.apache.cxf.xkms.model.xkms.StatusType in project cxf by apache.

the class TrustedAuthorityValidatorTest method testRootCertIsValid.

@Test
public void testRootCertIsValid() throws JAXBException, CertificateException {
    StatusType result = processRequest("validateRequestOKRoot.xml");
    Assert.assertEquals(KeyBindingEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_VALID, result.getStatusValue());
    Assert.assertFalse(result.getValidReason().isEmpty());
    Assert.assertEquals(ReasonEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_ISSUER_TRUST.value(), result.getValidReason().get(0));
}
Also used : StatusType(org.apache.cxf.xkms.model.xkms.StatusType) Test(org.junit.Test)

Example 24 with StatusType

use of org.apache.cxf.xkms.model.xkms.StatusType in project cxf by apache.

the class TrustedAuthorityValidatorTest method testSelfSignedCertOscarIsNotValid.

@Test
public void testSelfSignedCertOscarIsNotValid() throws JAXBException, CertificateException {
    StatusType result = processRequest("validateRequestInvalidOscar.xml");
    Assert.assertEquals(result.getStatusValue(), KeyBindingEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_INVALID);
    Assert.assertFalse(result.getInvalidReason().isEmpty());
    Assert.assertEquals(ReasonEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_ISSUER_TRUST.value(), result.getInvalidReason().get(0));
}
Also used : StatusType(org.apache.cxf.xkms.model.xkms.StatusType) Test(org.junit.Test)

Aggregations

StatusType (org.apache.cxf.xkms.model.xkms.StatusType)24 Test (org.junit.Test)15 X509Certificate (java.security.cert.X509Certificate)12 BasicIntegrationTest (org.apache.cxf.xkms.itests.BasicIntegrationTest)9 ValidateRequestType (org.apache.cxf.xkms.model.xkms.ValidateRequestType)9 KeyBindingType (org.apache.cxf.xkms.model.xkms.KeyBindingType)3 UnverifiedKeyBindingType (org.apache.cxf.xkms.model.xkms.UnverifiedKeyBindingType)2 XKMSException (org.apache.cxf.xkms.exception.XKMSException)1 Validator (org.apache.cxf.xkms.handlers.Validator)1 KeyUsageEnum (org.apache.cxf.xkms.model.xkms.KeyUsageEnum)1 PrototypeKeyBindingType (org.apache.cxf.xkms.model.xkms.PrototypeKeyBindingType)1 ValidateResultType (org.apache.cxf.xkms.model.xkms.ValidateResultType)1