Wraps an X.509-based Credential by storing key/cert objects inside.
More...
#include <xmltooling/security/BasicX509Credential.h>
|
unsigned int | getUsage () const |
| Get credential usage types. More...
|
|
const char * | getAlgorithm () const |
| Returns an algorithm identifier for the Credential. More...
|
|
unsigned int | getKeySize () const |
| Returns the size of the key in bits. More...
|
|
const XSECCryptoKey * | getPrivateKey () const |
| Returns a secret or private key to use for signing or decryption operations. More...
|
|
const XSECCryptoKey * | getPublicKey () const |
| Returns a secret or public key to use for verification or encryption operations. More...
|
|
const std::set< std::string > & | getKeyNames () const |
| Returns names representing the Credential. More...
|
|
xmlsignature::KeyInfo * | getKeyInfo (bool compact=false) const |
| Returns a ds:KeyInfo object representing the Credential for use in communicating with other entities. More...
|
|
const std::vector< XSECCryptoX509 * > & | getEntityCertificateChain () const |
| Gets an immutable collection of certificates in the entity's trust chain. More...
|
|
const std::vector< XSECCryptoX509CRL * > & | getCRLs () const |
| Gets an immutable collection of all CRLs associated with the credential. More...
|
|
const char * | getSubjectName () const |
| Gets the subject name of the first certificate in the chain. More...
|
|
const char * | getIssuerName () const |
| Gets the issuer name of the first certificate in the chain. More...
|
|
const char * | getSerialNumber () const |
| Gets the serial number of the first certificate in the chain. More...
|
|
void | extract () |
| Extracts properties like issuer and subject from the first certificate in the chain.
|
|
virtual const CredentialContext * | getCredentialContext () const |
| Get the credential context information, which provides additional information specific to the context in which the credential was resolved. More...
|
|
|
enum | ResolveTypes { RESOLVE_CERTS = 4,
RESOLVE_CRLS = 8
} |
| Bitmask constants for limiting resolution process inside a CredentialResolver.
|
|
enum | KeyInfoTypes { KEYINFO_X509_CERTIFICATE = 4,
KEYINFO_X509_SUBJECTNAME = 8,
KEYINFO_X509_ISSUERSERIAL = 16,
KEYINFO_X509_DIGEST = 32
} |
| Bitmask of supported KeyInfo content to generate.
|
|
enum | ResolveTypes { RESOLVE_KEYS = 1,
RESOLVE_NAMES = 2
} |
| Bitmask constants for limiting resolution process inside a CredentialResolver.
|
|
enum | UsageTypes { UNSPECIFIED_CREDENTIAL = 0,
SIGNING_CREDENTIAL = 1,
TLS_CREDENTIAL = 2,
ENCRYPTION_CREDENTIAL = 4
} |
| Bitmask of use cases for credentials.
|
|
enum | KeyInfoTypes { KEYINFO_KEY_VALUE = 1,
KEYINFO_KEY_NAME = 2
} |
| Bitmask of supported KeyInfo content to generate.
|
|
Wraps an X.509-based Credential by storing key/cert objects inside.
◆ BasicX509Credential() [1/3]
xmltooling::BasicX509Credential::BasicX509Credential |
( |
bool |
ownCerts | ) |
|
|
protected |
Constructor.
- Parameters
-
ownCerts | true iff any certificates subsequently stored should be freed by destructor |
◆ BasicX509Credential() [2/3]
xmltooling::BasicX509Credential::BasicX509Credential |
( |
XSECCryptoKey * |
key, |
|
|
const std::vector< XSECCryptoX509 *> & |
certs, |
|
|
XSECCryptoX509CRL * |
crl = 0 |
|
) |
| |
|
protected |
Constructor.
- Parameters
-
key | key pair or secret key |
certs | array of X.509 certificates, the first entry being the entity certificate |
crl | optional CRL |
◆ BasicX509Credential() [3/3]
xmltooling::BasicX509Credential::BasicX509Credential |
( |
XSECCryptoKey * |
key, |
|
|
const std::vector< XSECCryptoX509 *> & |
certs, |
|
|
const std::vector< XSECCryptoX509CRL *> & |
crls |
|
) |
| |
|
protected |
Constructor.
- Parameters
-
key | key pair or secret key |
certs | array of X.509 certificates, the first entry being the entity certificate |
crls | array of X.509 CRLs |
◆ getAlgorithm()
const char* xmltooling::BasicX509Credential::getAlgorithm |
( |
| ) |
const |
|
virtual |
◆ getCRLs()
const std::vector<XSECCryptoX509CRL*>& xmltooling::BasicX509Credential::getCRLs |
( |
| ) |
const |
|
virtual |
Gets an immutable collection of all CRLs associated with the credential.
- Returns
- CRLs associated with the credential
Implements xmltooling::X509Credential.
◆ getEntityCertificateChain()
const std::vector<XSECCryptoX509*>& xmltooling::BasicX509Credential::getEntityCertificateChain |
( |
| ) |
const |
|
virtual |
Gets an immutable collection of certificates in the entity's trust chain.
The entity certificate is contained within this list. No specific ordering of the certificates is guaranteed.
- Returns
- a certificate chain
Implements xmltooling::X509Credential.
◆ getIssuerName()
const char* xmltooling::BasicX509Credential::getIssuerName |
( |
| ) |
const |
|
virtual |
◆ getKeyInfo()
xmlsignature::KeyInfo* xmltooling::BasicX509Credential::getKeyInfo |
( |
bool |
compact = false | ) |
const |
|
virtual |
Returns a ds:KeyInfo object representing the Credential for use in communicating with other entities.
- Parameters
-
compact | true iff the communication medium is such that only compact forms should be included |
- Returns
- a KeyInfo object, which must be freed by the caller
Implements xmltooling::Credential.
◆ getKeyNames()
const std::set<std::string>& xmltooling::BasicX509Credential::getKeyNames |
( |
| ) |
const |
|
virtual |
◆ getKeySize()
unsigned int xmltooling::BasicX509Credential::getKeySize |
( |
| ) |
const |
|
virtual |
Returns the size of the key in bits.
- Returns
- the key size, or 0 if indeterminate
Implements xmltooling::Credential.
◆ getPrivateKey()
const XSECCryptoKey* xmltooling::BasicX509Credential::getPrivateKey |
( |
| ) |
const |
|
virtual |
Returns a secret or private key to use for signing or decryption operations.
- Returns
- a secret or private key
Implements xmltooling::Credential.
◆ getPublicKey()
const XSECCryptoKey* xmltooling::BasicX509Credential::getPublicKey |
( |
| ) |
const |
|
virtual |
Returns a secret or public key to use for verification or encryption operations.
- Returns
- a secret or public key
Implements xmltooling::Credential.
◆ getSerialNumber()
const char* xmltooling::BasicX509Credential::getSerialNumber |
( |
| ) |
const |
|
virtual |
◆ getSubjectName()
const char* xmltooling::BasicX509Credential::getSubjectName |
( |
| ) |
const |
|
virtual |
◆ getUsage()
unsigned int xmltooling::BasicX509Credential::getUsage |
( |
| ) |
const |
|
virtual |
◆ initKeyInfo()
void xmltooling::BasicX509Credential::initKeyInfo |
( |
unsigned int |
types = 0 | ) |
|
|
protected |
Initializes (or reinitializes) a ds:KeyInfo to represent the Credential.
- Parameters
-
types | the kinds of KeyInfo content to include |
◆ m_compactKeyInfo
boost::scoped_ptr<xmlsignature::KeyInfo> xmltooling::BasicX509Credential::m_compactKeyInfo |
|
protected |
The KeyInfo object representing the information in compact form.
◆ m_crls
◆ m_issuerName
std::string xmltooling::BasicX509Credential::m_issuerName |
|
protected |
◆ m_key
boost::scoped_ptr<XSECCryptoKey> xmltooling::BasicX509Credential::m_key |
|
protected |
The private/secret key/keypair.
◆ m_keyInfo
boost::scoped_ptr<xmlsignature::KeyInfo> xmltooling::BasicX509Credential::m_keyInfo |
|
protected |
The KeyInfo object representing the information.
◆ m_keyNames
std::set<std::string> xmltooling::BasicX509Credential::m_keyNames |
|
protected |
Key names (derived from credential, KeyInfo, or both).
◆ m_ownCerts
bool xmltooling::BasicX509Credential::m_ownCerts |
|
protected |
Indicates whether to destroy certificates.
◆ m_serial
std::string xmltooling::BasicX509Credential::m_serial |
|
protected |
◆ m_subjectName
std::string xmltooling::BasicX509Credential::m_subjectName |
|
protected |
◆ m_xseccerts
std::vector<XSECCryptoX509*> xmltooling::BasicX509Credential::m_xseccerts |
|
protected |
The X.509 certificate chain.
The documentation for this class was generated from the following file: