#include <xmltooling/security/Credential.h>
#include <xmltooling/security/XSECCryptoX509CRL.h>
-#include <vector>
#include <xsec/enc/XSECCryptoX509.hpp>
namespace xmltooling {
public:
virtual ~X509Credential() {}
+ /**
+ * Bitmask constants for limiting resolution process inside a CredentialResolver.
+ */
enum ResolveTypes {
- RESOLVE_CERTS = 2,
- RESOLVE_CRLS = 4
+ RESOLVE_CERTS = 4,
+ RESOLVE_CRLS = 8
};
/**
* @return CRL associated with the credential
*/
virtual XSECCryptoX509CRL* getCRL() const=0;
+
+ /**
+ * Gets the subject name of the first certificate in the chain.
+ *
+ * @return the Subject DN
+ */
+ virtual const char* getSubjectName() const=0;
+
+ /**
+ * Gets the issuer name of the first certificate in the chain.
+ *
+ * @return the Issuer DN
+ */
+ virtual const char* getIssuerName() const=0;
+
+ /**
+ * Gets the serial number of the first certificate in the chain.
+ *
+ * @return the serial number
+ */
+ virtual int getSerialNumber() const=0;
+
+ /**
+ * Extracts properties like issuer and subject from the first certificate in the chain.
+ */
+ virtual void extract()=0;
};
};