PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / vendor / php-http / message / src / Authentication / AutoBasicAuth.php
ameliabooking / vendor / php-http / message / src / Authentication Last commit date
AutoBasicAuth.php 3 years ago BasicAuth.php 3 years ago Bearer.php 3 years ago Chain.php 3 years ago Matching.php 3 years ago QueryParam.php 3 years ago RequestConditional.php 3 years ago Wsse.php 3 years ago
AutoBasicAuth.php
49 lines
1 <?php
2
3 namespace AmeliaHttp\Message\Authentication;
4
5 use AmeliaHttp\Message\Authentication;
6 use AmeliaPsr\Http\Message\RequestInterface;
7
8 /**
9 * Authenticate a PSR-7 Request using Basic Auth based on credentials in the URI.
10 *
11 * @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
12 */
13 final class AutoBasicAuth implements Authentication
14 {
15 /**
16 * Whether user info should be removed from the URI.
17 *
18 * @var bool
19 */
20 private $shouldRemoveUserInfo;
21
22 /**
23 * @param bool|true $shouldRremoveUserInfo
24 */
25 public function __construct($shouldRremoveUserInfo = true)
26 {
27 $this->shouldRemoveUserInfo = (bool) $shouldRremoveUserInfo;
28 }
29
30 /**
31 * {@inheritdoc}
32 */
33 public function authenticate(RequestInterface $request)
34 {
35 $uri = $request->getUri();
36 $userInfo = $uri->getUserInfo();
37
38 if (!empty($userInfo)) {
39 if ($this->shouldRemoveUserInfo) {
40 $request = $request->withUri($uri->withUserInfo(''));
41 }
42
43 $request = $request->withHeader('Authorization', sprintf('Basic %s', base64_encode($userInfo)));
44 }
45
46 return $request;
47 }
48 }
49