Spaces-API/aws/Aws/Signature/SignatureInterface.php
Devang Srivastava e6d7753dc8 v2: Updates
* Simplifies & beautifies everything
* Introduces a new Class system.
* Errors are defaulted to AWS's handler.
* New function names & more efficient handling.
* Should fix a majority of the errors.

Please read the README for more!
2020-09-28 15:32:51 +05:30

45 lines
1.4 KiB
PHP

<?php
namespace Aws\Signature;
use Aws\Credentials\CredentialsInterface;
use Psr\Http\Message\RequestInterface;
/**
* Interface used to provide interchangeable strategies for signing requests
* using the various AWS signature protocols.
*/
interface SignatureInterface
{
/**
* Signs the specified request with an AWS signing protocol by using the
* provided AWS account credentials and adding the required headers to the
* request.
*
* @param RequestInterface $request Request to sign
* @param CredentialsInterface $credentials Signing credentials
*
* @return RequestInterface Returns the modified request.
*/
public function signRequest(
RequestInterface $request,
CredentialsInterface $credentials
);
/**
* Create a pre-signed request.
*
* @param RequestInterface $request Request to sign
* @param CredentialsInterface $credentials Credentials used to sign
* @param int|string|\DateTime $expires The time at which the URL should
* expire. This can be a Unix timestamp, a PHP DateTime object, or a
* string that can be evaluated by strtotime.
*
* @return RequestInterface
*/
public function presign(
RequestInterface $request,
CredentialsInterface $credentials,
$expires,
array $options = []
);
}