pub struct ZeroSslIssuer {
pub inner: AcmeIssuer,
}Expand description
A ZeroSSL-backed issuer: an AcmeIssuer bound to the ZeroSSL ACME
endpoint with API-key-derived EAB.
Fields§
§inner: AcmeIssuerThe underlying ACME issuer (exposed for configuration).
Implementations§
Source§impl ZeroSslIssuer
impl ZeroSslIssuer
Sourcepub async fn new(api_key: &str) -> Result<Self>
pub async fn new(api_key: &str) -> Result<Self>
Create the issuer from a ZeroSSL API key: fetches EAB credentials from the REST API and pre-agrees to the terms (the API key exchange itself establishes the account relationship).
§Errors
Error::Acme when the REST call fails or returns an error body.
Sourcepub fn into_inner(self) -> AcmeIssuer
pub fn into_inner(self) -> AcmeIssuer
The underlying issuer, ready to be placed into ConfigOptions.issuers.
Trait Implementations§
Source§impl Clone for ZeroSslIssuer
impl Clone for ZeroSslIssuer
Source§impl Debug for ZeroSslIssuer
impl Debug for ZeroSslIssuer
Source§impl Issuer for ZeroSslIssuer
ZeroSSL is an issuer in its own right, not merely a builder for an
AcmeIssuer. Delegate the protocol work while preserving a distinct type
for callers that want to select it explicitly.
impl Issuer for ZeroSslIssuer
ZeroSSL is an issuer in its own right, not merely a builder for an
AcmeIssuer. Delegate the protocol work while preserving a distinct type
for callers that want to select it explicitly.
Source§fn issue<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
csr: &'life2 Csr,
attempt: u32,
) -> Pin<Box<dyn Future<Output = Result<IssuedCertificate>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn issue<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
csr: &'life2 Csr,
attempt: u32,
) -> Pin<Box<dyn Future<Output = Result<IssuedCertificate>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Obtain a certificate for the CSR. Read more
Source§fn issue_with_replaces<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
csr: &'life2 Csr,
attempt: u32,
replaces: Option<&'life3 str>,
) -> Pin<Box<dyn Future<Output = Result<IssuedCertificate>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn issue_with_replaces<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
csr: &'life2 Csr,
attempt: u32,
replaces: Option<&'life3 str>,
) -> Pin<Box<dyn Future<Output = Result<IssuedCertificate>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Obtain a certificate while optionally telling an ACME-capable issuer
which certificate is being replaced for ARI-aware renewal. Custom
issuers keep the original behavior by default.
Source§fn issuer_key(&self) -> String
fn issuer_key(&self) -> String
Unique key identifying this issuer (storage prefix).
Source§fn as_any(&self) -> &dyn Any
fn as_any(&self) -> &dyn Any
Access this issuer as
dyn Any so callers can recover the concrete
type from an erased Arc<dyn Issuer> (trait objects need the
explicit downcast hook).Source§fn pre_check<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
names: &'life2 [String],
interactive: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn pre_check<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
names: &'life2 [String],
interactive: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Optional pre-checks before issuance.
Source§fn revoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
resource: &'life2 CertificateResource,
reason: RevocationReason,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn revoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
resource: &'life2 CertificateResource,
reason: RevocationReason,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Optional revocation.
Source§fn get_renewal_info<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
cert: &'life2 Certificate,
) -> Pin<Box<dyn Future<Output = Result<RenewalInfo>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_renewal_info<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
cert: &'life2 Certificate,
) -> Pin<Box<dyn Future<Output = Result<RenewalInfo>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Optional ARI support.
Auto Trait Implementations§
impl !RefUnwindSafe for ZeroSslIssuer
impl !UnwindSafe for ZeroSslIssuer
impl Freeze for ZeroSslIssuer
impl Send for ZeroSslIssuer
impl Sync for ZeroSslIssuer
impl Unpin for ZeroSslIssuer
impl UnsafeUnpin for ZeroSslIssuer
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestCreates a shared type from an unshared type.
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> PreChecker for T
impl<T> PreChecker for T
Source§fn pre_check<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
names: &'life2 [String],
interactive: bool,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
T: 'async_trait,
fn pre_check<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
names: &'life2 [String],
interactive: bool,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
T: 'async_trait,
Validate the requested names before contacting the CA.
Source§impl<T> Revoker for T
impl<T> Revoker for T
Source§fn revoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
resource: &'life2 CertificateResource,
reason: RevocationReason,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
T: 'async_trait,
fn revoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ct: &'life1 CancellationToken,
resource: &'life2 CertificateResource,
reason: RevocationReason,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
T: 'async_trait,
Revoke a certificate resource for the given reason.