Compare commits
No commits in common. "c6fc5d020b58700349ea6b5158e078a972de172d" and "fbf9bc871ceb5f0bc4ca9e95e2341fc3bf253abe" have entirely different histories.
c6fc5d020b
...
fbf9bc871c
@ -1,11 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Authorize;
|
|
||||||
|
|
||||||
use Psr\Http\Message\ServerRequestInterface;
|
|
||||||
use Ulmus\User\Entity\UserInterface;
|
|
||||||
|
|
||||||
interface AuthorizeMethodInterface
|
|
||||||
{
|
|
||||||
public function connect(ServerRequestInterface $request) : UserInterface|false;
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Authorize;
|
|
||||||
|
|
||||||
use Psr\Http\Message\ServerRequestInterface;
|
|
||||||
use Ulmus\User\Entity\UserInterface;
|
|
||||||
|
|
||||||
class BasicAuthentication implements AuthorizeMethodInterface
|
|
||||||
{
|
|
||||||
public function connect(ServerRequestInterface $request): UserInterface|false
|
|
||||||
{
|
|
||||||
if ( null === $auth = $request->getHeader('Authorization') ) {
|
|
||||||
list($method, $userPass) = explode(' ', $auth, 2) + [ null, null ];
|
|
||||||
|
|
||||||
if (! $method ) {
|
|
||||||
throw new \InvalidArgumentException("An authentication method must be provided");
|
|
||||||
}
|
|
||||||
elseif (! $userPass ) {
|
|
||||||
throw new \InvalidArgumentException("A base64-encoded 'user:password' value must be provided");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected function basicMethod(string $header) : UserInterface|false
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Common;
|
|
||||||
|
|
||||||
enum AuthorizeEnum : string
|
|
||||||
{
|
|
||||||
case Basic = "basic";
|
|
||||||
case Token = "token";
|
|
||||||
|
|
||||||
# case Bearer = "bearer";
|
|
||||||
# case Custom = "custom";
|
|
||||||
# case Digest = "digest";
|
|
||||||
# case Key = "key";
|
|
||||||
# case Ntlm = "ntlm";
|
|
||||||
# case Negotiate = "negotiate";
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Entity;
|
|
||||||
|
|
||||||
interface UserInterface
|
|
||||||
{
|
|
||||||
public function __toString() : string;
|
|
||||||
}
|
|
@ -37,7 +37,7 @@ class Authenticate {
|
|||||||
{
|
{
|
||||||
$logUser = function(? int $id) use ($repository) {
|
$logUser = function(? int $id) use ($repository) {
|
||||||
if ( $id === null || null === ( $user = $repository->loadFromPk($id) ) ) {
|
if ( $id === null || null === ( $user = $repository->loadFromPk($id) ) ) {
|
||||||
throw new \InvalidArgumentException(sprintf("User having id '%s' was not found.", $id));
|
throw new \Exception("User not found.");
|
||||||
}
|
}
|
||||||
|
|
||||||
$user->logged = true;
|
$user->logged = true;
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Lib;
|
|
||||||
|
|
||||||
use Ulmus\User\Entity\User;
|
|
||||||
|
|
||||||
class Authorize extends Authenticate
|
|
||||||
{
|
|
||||||
public function rememberMe(\Ulmus\Repository $repository) : ? User
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function authorize(\Ulmus\Repository $repository, array $userLogin, string $password) : User
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,29 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Middleware;
|
|
||||||
|
|
||||||
use Psr\Http\{
|
|
||||||
Message\ResponseInterface,
|
|
||||||
Message\ServerRequestInterface,
|
|
||||||
Server\MiddlewareInterface,
|
|
||||||
Server\RequestHandlerInterface
|
|
||||||
};
|
|
||||||
use Ulmus\User\Authorize\AuthorizeMethodInterface;
|
|
||||||
use Ulmus\User\Common\AuthorizeEnum;
|
|
||||||
|
|
||||||
class AuthorizeMiddleware implements MiddlewareInterface
|
|
||||||
{
|
|
||||||
public function __construct(
|
|
||||||
protected AuthorizeMethodInterface $method,
|
|
||||||
protected ResponseInterface $loginFailed,
|
|
||||||
) { }
|
|
||||||
|
|
||||||
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
|
||||||
{
|
|
||||||
if ( false ) {
|
|
||||||
return $this->loginFailed;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $handler->handle($request);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,26 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Ulmus\User\Middleware;
|
|
||||||
|
|
||||||
use Psr\Http\{
|
|
||||||
Message\ResponseInterface,
|
|
||||||
Message\ServerRequestInterface,
|
|
||||||
Server\MiddlewareInterface,
|
|
||||||
Server\RequestHandlerInterface
|
|
||||||
};
|
|
||||||
|
|
||||||
class AuthorizeMiddleware implements MiddlewareInterface
|
|
||||||
{
|
|
||||||
public function __construct(
|
|
||||||
protected ResponseInterface $loginFailed
|
|
||||||
) { }
|
|
||||||
|
|
||||||
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
|
||||||
{
|
|
||||||
if ( false ) {
|
|
||||||
return $this->loginFailed;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $handler->handle($request);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user