getBody()->getContents(), true); $headers = $request->getHeader('Authorization'); self::$logger->debug('body in AuthToken: ' . print_r($body, true) . "\nAuthorization: " . print_r($headers, true), true); $bearerToken = str_replace('Bearer ', '', $headers[0]); if (empty($bearerToken)) { throw new Exception('Informe o token.'); } if (empty($body['org_id'])) { throw new Exception('Informe o org_id.'); } $tokenEmpresas = Usuario::verifyTokenByOrg($bearerToken, $body['org_id']); self::$logger->debug('tokenEmpresas in AuthToken: ' . print_r($tokenEmpresas, true), true); if (empty($tokenEmpresas)) { throw new Exception('Requisicao nao autorizada, por favor verifique o token e a permissao de acesso!'); } $expiredDate = new DateTime($tokenEmpresas['expired_at']); $now = new DateTime(); if ($expiredDate < $now) { throw new Exception('Token expirado, realize uma nova autenticacao.'); } self::$logger->debug("Auth success to user " . $tokenEmpresas['user_id'], true); return $tokenEmpresas; } }