This commit is contained in:
Yuri Kuznetsov
2020-07-02 22:17:03 +03:00
parent 4622e9fe01
commit 918ce84b1b
3 changed files with 29 additions and 32 deletions
-1
View File
@@ -78,7 +78,6 @@ class Auth
public function process(Request $request, Response $response) : Response
{
$uri = $request->getUri();
$httpMethod = $request->getMethod();
$username = null;
+26 -30
View File
@@ -360,26 +360,27 @@ class Application
$method(
$route['route'],
function (Request $request, Response $response, $args) use ($route) {
$authRequired = true;
$conditions = $route['conditions'] ?? [];
if (($conditions['auth'] ?? true) === false) {
$authRequired = false;
}
$auth = $this->createAuth($request);
$apiAuth = new ApiAuth($auth, $authRequired);
$response = $apiAuth->process($request, $response);
if (!$apiAuth->isResolved()) {
return $response;
}
if ($apiAuth->isResolvedUseNoAuth()) {
$this->setupSystemUser();
}
try {
$authRequired = true;
$conditions = $route['conditions'] ?? [];
if (($conditions['auth'] ?? true) === false) {
$authRequired = false;
}
$auth = $this->createAuth($request);
$apiAuth = new ApiAuth($auth, $authRequired);
$response = $apiAuth->process($request, $response);
if (!$apiAuth->isResolved()) {
return $response;
}
if ($apiAuth->isResolvedUseNoAuth()) {
$this->setupSystemUser();
}
$response = $this->processRoute($route, $request, $response, $args);
} catch (\Throwable $e) {
$output = new ApiOutput($request);
@@ -450,19 +451,14 @@ class Application
$output = new ApiOutput($request);
try {
$controllerManager = $this->container->get('controllerManager');
$result = $controllerManager->process(
$controllerName, $actionName, $params, $data, $requestWrapped, $responseWrapped
);
$controllerManager = $this->container->get('controllerManager');
$result = $controllerManager->process(
$controllerName, $actionName, $params, $data, $requestWrapped, $responseWrapped
);
$response = $responseWrapped->getResponse();
$response = $responseWrapped->getResponse();
$response = $output->render($response, $result);
} catch (\Exception $e) {
$response = $output->processError($response, $e, false, $route, $args);
}
$response = $output->render($response, $result);
return $response;
}
+3 -1
View File
@@ -444,12 +444,14 @@ class Auth
$authLogRecord = $this->getEntityManager()->getEntity('AuthLogRecord');
$requestUrl = $request->getUri()->getScheme() . '://' . $request->getUri()->getHost() . $request->getUri()->getPath();
$authLogRecord->set([
'username' => $username,
'ipAddress' => $_SERVER['REMOTE_ADDR'] ?? null,
'requestTime' => $_SERVER['REQUEST_TIME_FLOAT'],
'requestMethod' => $this->request->getMethod(),
'requestUrl' => $this->request->getUri() . $this->request->getPath(),
'requestUrl' => $requestUrl,
'authenticationMethod' => $authenticationMethod
]);