Messages¶
ACME protocol messages.
-
exception
acme.messages.Error(**kwargs)[source]¶ Bases:
josepy.json_util.JSONObjectWithFields,acme.errors.ErrorACME error.
https://tools.ietf.org/html/draft-ietf-appsawg-http-problem-00
Variables: - typ (unicode) –
- title (unicode) –
- detail (unicode) –
-
classmethod
with_code(code, **kwargs)[source]¶ Create an Error instance with an ACME Error code.
Unicode code: An ACME error code, like ‘dnssec’. Kwargs: kwargs to pass to Error.
-
description¶ Hardcoded error description based on its type.
Returns: Description if standard ACME error or None.Return type: unicode
-
code¶ ACME error code.
Basically self.typ without the ERROR_PREFIX.
Returns: error code if standard ACME code or None.Return type: unicode
-
class
acme.messages._Constant(name)[source]¶ Bases:
josepy.interfaces.JSONDeSerializable,collections.abc.HashableACME constant.
-
class
acme.messages.Status(name)[source]¶ Bases:
acme.messages._ConstantACME “status” field.
-
class
acme.messages.IdentifierType(name)[source]¶ Bases:
acme.messages._ConstantACME identifier type.
-
class
acme.messages.Identifier(**kwargs)[source]¶ Bases:
josepy.json_util.JSONObjectWithFieldsACME identifier.
Variables: - typ (IdentifierType) –
- value (unicode) –
-
class
acme.messages.Directory(jobj)[source]¶ Bases:
josepy.interfaces.JSONDeSerializableDirectory.
-
class
acme.messages.Resource(**kwargs)[source]¶ Bases:
josepy.json_util.JSONObjectWithFieldsACME Resource.
Variables: body (acme.messages.ResourceBody) – Resource body.
-
class
acme.messages.ResourceWithURI(**kwargs)[source]¶ Bases:
acme.messages.ResourceACME Resource with URI.
Variables: uri (unicode) – Location of the resource.
-
class
acme.messages.ResourceBody(**kwargs)[source]¶ Bases:
josepy.json_util.JSONObjectWithFieldsACME Resource Body.
-
class
acme.messages.Registration(**kwargs)[source]¶ Bases:
acme.messages.ResourceBodyRegistration Resource Body.
Variables: - key (josepy.jwk.JWK) – Public key.
- contact (tuple) – Contact information following ACME spec,
tupleofunicode. - agreement (unicode) –
-
classmethod
from_data(phone=None, email=None, external_account_binding=None, **kwargs)[source]¶ Create registration resource from contact details.
-
phones¶ All phones found in the
contactfield.
-
emails¶ All emails found in the
contactfield.
-
class
acme.messages.NewRegistration(**kwargs)[source]¶ Bases:
acme.messages.RegistrationNew registration.
-
class
acme.messages.UpdateRegistration(**kwargs)[source]¶ Bases:
acme.messages.RegistrationUpdate registration.
-
class
acme.messages.RegistrationResource(**kwargs)[source]¶ Bases:
acme.messages.ResourceWithURIRegistration Resource.
Variables: - body (acme.messages.Registration) –
- new_authzr_uri (unicode) – Deprecated. Do not use.
- terms_of_service (unicode) – URL for the CA TOS.
-
class
acme.messages.ChallengeBody(**kwargs)[source]¶ Bases:
acme.messages.ResourceBodyChallenge Resource Body.
Todo
Confusingly, this has a similar name to
challenges.Challenge, as well asachallenges.AnnotatedChallenge. Please use names such aschallbto distinguish instances of this class fromachall.Variables: - acme.challenges.Challenge – Wrapped challenge.
Conveniently, all challenge fields are proxied, i.e. you can
call
challb.xto getchallb.chall.xcontents. - status (acme.messages.Status) –
- validated (datetime.datetime) –
- error (messages.Error) –
-
uri¶ The URL of this challenge.
- acme.challenges.Challenge – Wrapped challenge.
Conveniently, all challenge fields are proxied, i.e. you can
call
-
class
acme.messages.ChallengeResource(**kwargs)[source]¶ Bases:
acme.messages.ResourceChallenge Resource.
Variables: - body (acme.messages.ChallengeBody) –
- authzr_uri (unicode) – URI found in the ‘up’
Linkheader.
-
uri¶ The URL of the challenge body.
-
class
acme.messages.Authorization(**kwargs)[source]¶ Bases:
acme.messages.ResourceBodyAuthorization Resource Body.
Variables: - identifier (acme.messages.Identifier) –
- challenges (list) –
listofChallengeBody - combinations (tuple) – Challenge combinations (
tupleoftupleofint, as opposed tolistoflistfrom the spec). - status (acme.messages.Status) –
- expires (datetime.datetime) –
-
resolved_combinations¶ Combinations with challenges instead of indices.
-
class
acme.messages.NewAuthorization(**kwargs)[source]¶ Bases:
acme.messages.AuthorizationNew authorization.
-
class
acme.messages.AuthorizationResource(**kwargs)[source]¶ Bases:
acme.messages.ResourceWithURIAuthorization Resource.
Variables: - body (acme.messages.Authorization) –
- new_cert_uri (unicode) – Deprecated. Do not use.
-
class
acme.messages.CertificateRequest(**kwargs)[source]¶ Bases:
josepy.json_util.JSONObjectWithFieldsACME new-cert request.
Variables: csr (josepy.util.ComparableX509) – OpenSSL.crypto.X509Reqwrapped inComparableX509
-
class
acme.messages.CertificateResource(**kwargs)[source]¶ Bases:
acme.messages.ResourceWithURICertificate Resource.
Variables: - body (josepy.util.ComparableX509) –
OpenSSL.crypto.X509wrapped inComparableX509 - cert_chain_uri (unicode) – URI found in the ‘up’
Linkheader - authzrs (tuple) –
tupleofAuthorizationResource.
- body (josepy.util.ComparableX509) –
-
class
acme.messages.Revocation(**kwargs)[source]¶ Bases:
josepy.json_util.JSONObjectWithFieldsRevocation message.
Variables: certificate (ComparableX509) – OpenSSL.crypto.X509wrapped inComparableX509
-
class
acme.messages.Order(**kwargs)[source]¶ Bases:
acme.messages.ResourceBodyOrder Resource Body.
Variables: - of .Identifier (list) – List of identifiers for the certificate.
- status (acme.messages.Status) –
- of str authorizations (list) – URLs of authorizations.
- certificate (str) – URL to download certificate as a fullchain PEM.
- finalize (str) – URL to POST to to request issuance once all authorizations have “valid” status.
- expires (datetime.datetime) – When the order expires.
- error (Error) – Any error that occurred during finalization, if applicable.
-
class
acme.messages.OrderResource(**kwargs)[source]¶ Bases:
acme.messages.ResourceWithURIOrder Resource.
Variables: - body (acme.messages.Order) –
- csr_pem (str) – The CSR this Order will be finalized with.
- of acme.messages.AuthorizationResource authorizations (list) – Fully-fetched AuthorizationResource objects.
- fullchain_pem (str) – The fetched contents of the certificate URL produced once the order was finalized, if it’s present.
-
class
acme.messages.NewOrder(**kwargs)[source]¶ Bases:
acme.messages.OrderNew order.