Documentation
¶
Overview ¶
Package acme provides a means of performing Let's Encrypt DNS challenges via a DNSConfig
Index ¶
Constants ¶
View Source
const ( // LetsEncryptLive is the endpoint for updates (production). LetsEncryptLive = "https://acme-v02.api.letsencrypt.org/directory" // LetsEncryptStage is the endpoint for the staging area. LetsEncryptStage = "https://acme-staging-v02.api.letsencrypt.org/directory" )
Variables ¶
View Source
var IgnoredProviders = map[string]bool{}
IgnoredProviders is a list of provider names that should not be used to fill challenges.
Functions ¶
This section is empty.
Types ¶
type Account ¶
type Account struct {
Email string `json:"email"`
Registration *registration.Resource `json:"registration"`
// contains filtered or unexported fields
}
Account stores the data related to an ACME account.
func (*Account) GetPrivateKey ¶
func (a *Account) GetPrivateKey() crypto.PrivateKey
GetPrivateKey is a getter for the PrivateKey field.
func (*Account) GetRegistration ¶
func (a *Account) GetRegistration() *registration.Resource
GetRegistration is a getter for the registration field.
type CertConfig ¶
type CertConfig struct {
CertName string `json:"cert_name"`
Names []string `json:"names"`
UseECC bool `json:"use_ecc"`
MustStaple bool `json:"must_staple"`
}
CertConfig describes a certificate's configuration.
type Client ¶
type Client interface {
IssueOrRenewCert(config *CertConfig, renewUnder int, verbose bool) (bool, error)
}
Client is an interface for systems that issue or renew certs.
type Storage ¶
type Storage interface {
// Get Existing certificate, or return nil if it does not exist
GetCertificate(name string) (*certificate.Resource, error)
StoreCertificate(name string, cert *certificate.Resource) error
GetAccount(acmeHost string) (*Account, error)
StoreAccount(acmeHost string, account *Account) error
}
Storage is an abstracrion around how certificates, keys, and account info are stored on disk or elsewhere.
Click to show internal directories.
Click to hide internal directories.