Skip to main content

verify_presigned

Function verify_presigned 

Source
pub fn verify_presigned(
    parts: &Parts,
    credential_provider: &dyn CredentialProvider,
) -> Result<AuthResult, AuthError>
Expand description

Verify a presigned URL request.

This function:

  1. Parses the presigned URL query parameters
  2. Checks whether the URL has expired
  3. Resolves the secret key via the credential provider
  4. Reconstructs the canonical request (excluding X-Amz-Signature from query)
  5. Computes the expected signature
  6. Compares signatures using constant-time comparison

ยงErrors

Returns an AuthError if:

  • Required query parameters are missing or malformed
  • The URL has expired
  • The access key is not found
  • Required signed headers are missing
  • The signature does not match