acme

package
v2.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 1, 2024 License: MPL-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	StatusPending     = "pending"
	StatusInvalid     = "invalid"
	StatusValid       = "valid"
	StatusExpired     = "expired"
	StatusProcessing  = "processing"
	StatusReady       = "ready"
	StatusDeactivated = "deactivated"

	IdentifierDNS = "dns"
	IdentifierIP  = "ip"

	ChallengeHTTP01       = "http-01"
	ChallengeTLSALPN01    = "tls-alpn-01"
	ChallengeDNS01        = "dns-01"
	ChallengeDNSAccount01 = "dns-account-01"

	HTTP01BaseURL = ".well-known/acme-challenge/"

	ACMETLS1Protocol = "acme-tls/1"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	Status  string   `json:"status"`
	Contact []string `json:"contact,omitempty"`
	Orders  string   `json:"orders,omitempty"`

	ExternalAccountBinding *JSONSigned `json:"externalAccountBinding,omitempty"`
}

type Authorization

type Authorization struct {
	Status     string      `json:"status"`
	Identifier Identifier  `json:"identifier"`
	Challenges []Challenge `json:"challenges"`
	Expires    string      `json:"expires"`
	// Wildcard is a Let's Encrypt specific Authorization field that indicates the
	// authorization was created as a result of an order containing a name with
	// a `*.`wildcard prefix. This will help convey to users that an
	// Authorization with the identifier `example.com` and one DNS-01 challenge
	// corresponds to a name `*.example.com` from an associated order.
	Wildcard bool `json:"wildcard,omitempty"`
}

An Authorization is created for each identifier in an order

type Challenge

type Challenge struct {
	Type      string          `json:"type"`
	URL       string          `json:"url"`
	Token     string          `json:"token"`
	Status    string          `json:"status"`
	Validated string          `json:"validated,omitempty"`
	Error     *ProblemDetails `json:"error,omitempty"`
}

A Challenge is used to validate an Authorization

type Identifier

type Identifier struct {
	Type  string `json:"type"`
	Value string `json:"value"`
}

func (Identifier) Equals

func (ident Identifier) Equals(other Identifier) bool

type JSONSigned

type JSONSigned struct {
	Protected string `json:"protected"`
	Payload   string `json:"payload"`
	Sig       string `json:"signature"`
}

type Order

type Order struct {
	Status         string          `json:"status"`
	Error          *ProblemDetails `json:"error,omitempty"`
	Expires        string          `json:"expires"`
	Identifiers    []Identifier    `json:"identifiers,omitempty"`
	Finalize       string          `json:"finalize"`
	NotBefore      string          `json:"notBefore,omitempty"`
	NotAfter       string          `json:"notAfter,omitempty"`
	Authorizations []string        `json:"authorizations"`
	Certificate    string          `json:"certificate,omitempty"`
}

An Order is created to request issuance for a CSR

type ProblemDetails

type ProblemDetails struct {
	Type        string           `json:"type,omitempty"`
	Detail      string           `json:"detail,omitempty"`
	HTTPStatus  int              `json:"status,omitempty"`
	Identifier  *Identifier      `json:"identifier,omitempty"`
	Subproblems []ProblemDetails `json:"subproblems,omitempty"`
}

func AccountDoesNotExistProblem

func AccountDoesNotExistProblem(detail string) *ProblemDetails

func AgreementRequiredProblem

func AgreementRequiredProblem(detail string) *ProblemDetails

func AlreadyRevokedProblem

func AlreadyRevokedProblem(detail string) *ProblemDetails

func BadCSRProblem

func BadCSRProblem(detail string) *ProblemDetails

func BadNonceProblem

func BadNonceProblem(detail string) *ProblemDetails

func BadPublicKeyProblem

func BadPublicKeyProblem(detail string) *ProblemDetails

func BadRevocationReasonProblem

func BadRevocationReasonProblem(detail string) *ProblemDetails

func Conflict

func Conflict(detail string) *ProblemDetails

func ConnectionProblem

func ConnectionProblem(detail string) *ProblemDetails

func ExternalAccountRequiredProblem

func ExternalAccountRequiredProblem(detail string) *ProblemDetails

func InternalErrorProblem

func InternalErrorProblem(detail string) *ProblemDetails

func InvalidContactProblem

func InvalidContactProblem(detail string) *ProblemDetails

func MalformedProblem

func MalformedProblem(detail string) *ProblemDetails

func MethodNotAllowed

func MethodNotAllowed() *ProblemDetails

func NotFoundProblem

func NotFoundProblem(detail string) *ProblemDetails

func OrderNotReadyProblem

func OrderNotReadyProblem(detail string) *ProblemDetails

func RejectedIdentifierProblem

func RejectedIdentifierProblem(ident Identifier, detail string) *ProblemDetails

func UnauthorizedProblem

func UnauthorizedProblem(detail string) *ProblemDetails

func UnsupportedContactProblem

func UnsupportedContactProblem(detail string) *ProblemDetails

func UnsupportedMediaTypeProblem

func UnsupportedMediaTypeProblem(detail string) *ProblemDetails

func (*ProblemDetails) Error

func (pd *ProblemDetails) Error() string

type Resource

type Resource string

acme.Resource values identify different types of ACME resources

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL