[][src]Enum aws_sig_verify::ErrorKind

pub enum ErrorKind {
    IO(Error),
    InvalidBodyEncoding,
    InvalidCredential,
    InvalidSignature,
    InvalidURIPath,
    MalformedHeader,
    MalformedParameter,
    MalformedSignature,
    MissingHeader,
    MissingParameter,
    MultipleHeaderValues,
    MultipleParameterValues,
    TimestampOutOfRange,
    UnknownAccessKey,
    UnknownSignatureAlgorithm,
}

The possible reasons for an AWS SigV4 signature validation to fail; returned as part of SignatureError.

Variants

IO(Error)

Validation failed due to an underlying I/O error.

InvalidBodyEncoding

The request body used an unsupported character set encoding. Currently only UTF-8 is supported.

InvalidCredential

The request signature specified an invalid credential -- either the access key was not specified, or the credential scope (in the form date/region/service/aws4_request) did not match the expected value for the server.

InvalidSignature

The signature passed in the request did not match the calculated signature value.

InvalidURIPath

The URI path includes invalid components. This can be a malformed hex encoding (e.g. %0J), a non-absolute URI path (foo/bar), or a URI path that attempts to navigate above the root (/x/../../../y).

MalformedHeader

An HTTP header was malformed -- the value could not be decoded as UTF-8, or the header was empty and this is not allowed (e.g. the content-type header), or the header could not be parsed (e.g., the date header is not a valid date).

MalformedParameter

A query parameter was malformed -- the value could not be decoded as UTF-8, or the parameter was empty and this is not allowed (e.g. a signature parameter), or the parameter could not be parsed (e.g., the X-Amz-Date parameter is not a valid date).

MalformedSignature

The AWS SigV4 signature was malformed in some way. This can include invalid timestamp formats, missing authorization components, or unparseable components.

MissingHeader

A required HTTP header (and its equivalent in the query string) is missing.

MissingParameter

A required query parameter is missing. This is used internally in the library; external callers only see MissingHeader.

MultipleHeaderValues

An HTTP header that can be specified only once was specified multiple times.

MultipleParameterValues

A query parameter that can be specified only once was specified multiple times.

TimestampOutOfRange

The timestamp in the request is out of the allowed range.

UnknownAccessKey

The access key specified in the request is unknown.

UnknownSignatureAlgorithm

The signature algorithm requested by the caller is unknown. This library only supports the AWS4-HMAC-SHA256 algorithm.

Trait Implementations

impl Debug for ErrorKind[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.