Class Puppet::SSL::Host
In: lib/puppet/ssl/host.rb
Parent: Object

The class that manages all aspects of our SSL certificates — private keys, public keys, requests, etc.

Methods

Included Modules

Puppet::Util::Cacher

Constants

Key = Puppet::SSL::Key   Yay, ruby‘s strange constant lookups.
Certificate = Puppet::SSL::Certificate
CertificateRequest = Puppet::SSL::CertificateRequest
CertificateRevocationList = Puppet::SSL::CertificateRevocationList
CA_NAME = "ca"
CA_MODES = { # Our ca is local, so we use it as the ultimate source of information # And we cache files locally. :local => [:ca, :file], # We're a remote CA client. :remote => [:rest, :file], # We are the CA, so we don't have read/write access to the normal certificates. :only => [:ca], # We have no CA, so we just look in the local file store. :none => [:file]

Attributes

ca  [RW] 
ca_location  [R] 
certificate  [W] 
certificate_request  [W] 
key  [W] 
name  [R] 

Public Class methods

Specify how we expect to interact with our certificate authority.

This is the constant that people will use to mark that a given host is a certificate authority.

Configure how our various classes interact with their various terminuses.

Remove all traces of a given host

Search for more than one host, optionally only specifying an interest in hosts with a given file type. This just allows our non-indirected class to have one of indirection methods.

Public Instance methods

Is this a ca host, meaning that all of its files go in the CA location?

Generate all necessary parts of our ssl host.

Our certificate request requires the key but that‘s all.

This is the private key; we can create it from scratch with no inputs.

Extract the public key from the private key.

Create/return a store that uses our SSL info to validate connections.

Attempt to retrieve a cert, if we don‘t already have one.

[Validate]