Issuer

Struct Issuer 

pub struct Issuer<'a, S> { /* private fields */ }
Available on crate feature crypto only.
Expand description

An issuer that can sign certificates.

Encapsulates the distinguished name, key identifier method, key usages and signing key of the issuing certificate.

Implementations§

§

impl<'a, S> Issuer<'a, S>
where S: SigningKey,

pub fn new(params: CertificateParams, signing_key: S) -> Issuer<'a, S>

Available on (crate features rustls or boring or acme) and crate feature rustls only.

Create a new issuer from the given parameters and signing key.

pub fn from_params( params: &'a CertificateParams, signing_key: S, ) -> Issuer<'a, S>

Available on (crate features rustls or boring or acme) and crate feature rustls only.

Create a new issuer from the given parameters and signing key references.

Use Issuer::new instead if you want to obtain an Issuer that owns its parameters.

pub fn from_ca_cert_pem( pem_str: &str, signing_key: S, ) -> Result<Issuer<'a, S>, Error>

Available on (crate features rustls or boring or acme) and crate feature rustls and crate feature pem and crate feature x509-parser only.

Parses an existing CA certificate from the ASCII PEM format.

See from_ca_cert_der for more details.

pub fn from_ca_cert_der( ca_cert: &CertificateDer<'_>, signing_key: S, ) -> Result<Issuer<'a, S>, Error>

Available on (crate features rustls or boring or acme) and crate feature rustls and crate feature x509-parser only.

Parses an existing CA certificate from the DER format.

This function assumes the provided certificate is a CA. It will not check for the presence of the BasicConstraints extension, or perform any other validation.

If you already have a byte slice containing DER, it can trivially be converted into CertificateDer using the Into trait.

pub fn key_usages(&self) -> &[KeyUsagePurpose]

Available on (crate features rustls or boring or acme) and crate feature rustls only.

Allowed key usages for this issuer.

pub fn key(&self) -> &S

Available on (crate features rustls or boring or acme) and crate feature rustls only.

Yield a reference to the signing key.

Trait Implementations§

§

impl<'a, S> Debug for Issuer<'a, S>

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the issuer information without revealing the key pair.

Auto Trait Implementations§

§

impl<'a, S> Freeze for Issuer<'a, S>
where S: Freeze,

§

impl<'a, S> RefUnwindSafe for Issuer<'a, S>
where S: RefUnwindSafe,

§

impl<'a, S> Send for Issuer<'a, S>
where S: Send,

§

impl<'a, S> Sync for Issuer<'a, S>
where S: Sync,

§

impl<'a, S> Unpin for Issuer<'a, S>
where S: Unpin,

§

impl<'a, S> UnwindSafe for Issuer<'a, S>
where S: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( self, class: Class, constructed: bool, tag: u32, ) -> TaggedParser<'a, Implicit, Self, E>

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FutureExt for T

§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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 more
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> PolicyExt for T
where T: ?Sized,

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
§

impl<T, U> RamaFrom<T> for U
where U: From<T>,

§

fn rama_from(value: T) -> U

§

impl<T, U, CrateMarker> RamaInto<U, CrateMarker> for T
where U: RamaFrom<T, CrateMarker>,

§

fn rama_into(self) -> U

§

impl<T, U> RamaTryFrom<T> for U
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

§

fn rama_try_from(value: T) -> Result<U, <U as RamaTryFrom<T>>::Error>

§

impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for T
where U: RamaTryFrom<T, CrateMarker>,

§

type Error = <U as RamaTryFrom<T, CrateMarker>>::Error

§

fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T, CrateMarker>>::Error>

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more