BearerAuthProcessor::getTokenPrefix()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
ccs 0
cts 2
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Koded\Framework\Auth;
4
5
use Koded\Http\HTTPUnauthorized;
6
7
/**
8
 * Implements Bearer based authentication.
9
 *
10
 * Clients should authenticate by passing the value key in the
11
 * "Authorization" HTTP header, prepended with the string "Bearer "
12
 *
13
 *      Authorization: Bearer ac11d0618fc73ecb05ac96b905553bd506879de7
14
 */
15
class BearerAuthProcessor extends BasicAuthProcessor
16
{
17
    public function authenticate(AuthBackend $backend, string $credentials): ?object
18
    {
19
        return $backend($this->getTokenPrefix(), $this->extractCredentials($credentials))
20
            ?? throw new HTTPUnauthorized(
21
                title: __('Authorization failed'),
22
                detail: __('Invalid authorization token'),
23
                type: 'https://kodedphp.github.io/auth/value',
24
            );
25
    }
26
27
    public function getTokenPrefix(): string
28
    {
29
        return 'Bearer';
30
    }
31
}
32