![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /home/fdshops/public_html/vendor/aws/aws-sdk-php/src/Signature/ |
<?php namespace Aws\Signature; use Aws\Credentials\Credentials; use Aws\Credentials\CredentialsInterface; use Psr\Http\Message\RequestInterface; class S3ExpressSignature extends S3SignatureV4 { public function signRequest( RequestInterface $request, CredentialsInterface $credentials, $signingService = 's3express' ) { $request = $this->modifyTokenHeaders($request, $credentials); $credentials = $this->getSigningCredentials($credentials); return parent::signRequest($request, $credentials, $signingService); } public function presign(RequestInterface $request, CredentialsInterface $credentials, $expires, array $options = []) { $request = $this->modifyTokenHeaders($request, $credentials); $credentials = $this->getSigningCredentials($credentials); return parent::presign($request, $credentials, $expires, $options); } private function modifyTokenHeaders( RequestInterface $request, CredentialsInterface $credentials ) { //The x-amz-security-token header is not supported by s3 express $request = $request->withoutHeader('X-Amz-Security-Token'); return $request->withHeader( 'x-amz-s3session-token', $credentials->getSecurityToken() ); } private function getSigningCredentials(CredentialsInterface $credentials) { return new Credentials( $credentials->getAccessKeyId(), $credentials->getSecretKey() ); } }