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.
|
|
const char * | getAlgorithm () const |
| Returns an algorithm identifier for the Credential.
|
|
unsigned int | getKeySize () const |
| Returns the size of the key in bits.
|
|
const XSECCryptoKey * | getPrivateKey () const |
| Returns a secret or private key to use for signing or decryption operations.
|
|
const XSECCryptoKey * | getPublicKey () const |
| Returns a secret or public key to use for verification or encryption operations.
|
|
const std::set< std::string > & | getKeyNames () const |
| Returns names representing the Credential.
|
|
xmlsignature::KeyInfo * | getKeyInfo (bool compact=false) const |
| Returns a ds:KeyInfo object representing the Credential for use in communicating with other entities.
|
|
const std::vector< XSECCryptoX509 * > & | getEntityCertificateChain () const |
| Gets an immutable collection of certificates in the entity's trust chain.
|
|
const std::vector< XSECCryptoX509CRL * > & | getCRLs () const |
| Gets an immutable collection of all CRLs associated with the credential.
|
|
const char * | getSubjectName () const |
| Gets the subject name of the first certificate in the chain.
|
|
const char * | getIssuerName () const |
| Gets the issuer name of the first certificate in the chain.
|
|
const char * | getSerialNumber () const |
| Gets the serial number of the first certificate in the chain.
|
|
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.
|
|
|
boost::scoped_ptr< XSECCryptoKey > | m_key |
| The private/secret key/keypair.
|
|
std::set< std::string > | m_keyNames |
| Key names (derived from credential, KeyInfo, or both).
|
|
std::string | m_subjectName |
| Subject DN.
|
|
std::string | m_issuerName |
| Issuer DN.
|
|
std::string | m_serial |
| Serial number.
|
|
std::vector< XSECCryptoX509 * > | m_xseccerts |
| The X.509 certificate chain.
|
|
bool | m_ownCerts |
| Indicates whether to destroy certificates.
|
|
std::vector< XSECCryptoX509CRL * > | m_crls |
| The X.509 CRLs.
|
|
boost::scoped_ptr< xmlsignature::KeyInfo > | m_keyInfo |
| The KeyInfo object representing the information.
|
|
boost::scoped_ptr< xmlsignature::KeyInfo > | m_compactKeyInfo |
| The KeyInfo object representing the information in compact form.
|
|
|
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 |
◆ extract()
void xmltooling::BasicX509Credential::extract |
( |
| ) |
|
|
virtual |
◆ 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 |
The documentation for this class was generated from the following file: