Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
namespace Aws\Token;
3
 
4
use InvalidArgumentException;
5
use Psr\Http\Message\RequestInterface;
6
 
7
/**
8
 * Interface used to provide interchangeable strategies for adding authorization
9
 * to requests using the various AWS signature protocols.
10
 */
11
class BearerTokenAuthorization implements TokenAuthorization
12
{
13
    /**
14
     * Adds the specified token to a request by adding the required headers.
15
     *
16
     * @param RequestInterface     $request     Request to sign
17
     * @param TokenInterface       $token       Token
18
     *
19
     * @return RequestInterface Returns the modified request.
20
     */
21
    public function authorizeRequest(
22
        RequestInterface $request,
23
        TokenInterface $token
24
    ) {
25
        if (empty($token) || empty($token->getToken())) {
26
            throw new InvalidArgumentException(
27
                "Cannot authorize a request with an empty token"
28
            );
29
        }
30
        $accessToken = $token->getToken();
31
        return $request->withHeader('Authorization', "Bearer {$accessToken}");
32
    }
33
}