mirror of
https://github.com/Bubka/2FAuth.git
synced 2024-11-22 16:23:18 +01:00
Refactor routes rejection using middlewares
This commit is contained in:
parent
30331998d2
commit
5eee3de134
@ -59,10 +59,5 @@ public function register()
|
|||||||
return response()->json([
|
return response()->json([
|
||||||
'message' => $exception->getMessage()], 400);
|
'message' => $exception->getMessage()], 400);
|
||||||
});
|
});
|
||||||
|
|
||||||
$this->renderable(function (UnsupportedWithReverseProxyException $exception, $request) {
|
|
||||||
return response()->json([
|
|
||||||
'message' => __('errors.unsupported_with_reverseproxy')], 400);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,14 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Exceptions;
|
|
||||||
|
|
||||||
use Exception;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class UnsupportedWithReverseProxyException.
|
|
||||||
*
|
|
||||||
* @codeCoverageIgnore
|
|
||||||
*/
|
|
||||||
class UnsupportedWithReverseProxyException extends Exception
|
|
||||||
{
|
|
||||||
}
|
|
@ -5,7 +5,6 @@
|
|||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Foundation\Auth\SendsPasswordResetEmails;
|
use Illuminate\Foundation\Auth\SendsPasswordResetEmails;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class ForgotPasswordController extends Controller
|
class ForgotPasswordController extends Controller
|
||||||
{
|
{
|
||||||
@ -23,19 +22,6 @@ class ForgotPasswordController extends Controller
|
|||||||
use SendsPasswordResetEmails;
|
use SendsPasswordResetEmails;
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validate the email for the given request.
|
* Validate the email for the given request.
|
||||||
*
|
*
|
||||||
|
@ -10,7 +10,6 @@
|
|||||||
use App\Http\Requests\LoginRequest;
|
use App\Http\Requests\LoginRequest;
|
||||||
use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
|
|
||||||
class LoginController extends Controller
|
class LoginController extends Controller
|
||||||
@ -29,19 +28,6 @@ class LoginController extends Controller
|
|||||||
use AuthenticatesUsers;
|
use AuthenticatesUsers;
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle a login request to the application.
|
* Handle a login request to the application.
|
||||||
*
|
*
|
||||||
|
@ -6,25 +6,9 @@
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class PasswordController extends Controller
|
class PasswordController extends Controller
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update the user's password.
|
* Update the user's password.
|
||||||
*
|
*
|
||||||
|
@ -1,29 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Auth;
|
|
||||||
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Laravel\Passport\Http\Controllers\PersonalAccessTokenController as PassportPersonalAccessTokenController;
|
|
||||||
|
|
||||||
class PersonalAccessTokenController extends PassportPersonalAccessTokenController
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Get all of the personal access tokens for the authenticated user.
|
|
||||||
*
|
|
||||||
* @param \Illuminate\Http\Request $request
|
|
||||||
* @return \Illuminate\Database\Eloquent\Collection
|
|
||||||
*/
|
|
||||||
public function forUser(Request $request)
|
|
||||||
{
|
|
||||||
// WebAuthn is useless when authentication is handle by
|
|
||||||
// a reverse proxy so we return a 202 response to tell the
|
|
||||||
// client nothing more will happen
|
|
||||||
if (config('auth.defaults.guard') === 'reverse-proxy-guard') {
|
|
||||||
return response()->json([
|
|
||||||
'message' => 'no personal access token with reverse proxy'], 202);
|
|
||||||
}
|
|
||||||
|
|
||||||
parent::forUser($request);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -8,7 +8,6 @@
|
|||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use Illuminate\Auth\Events\Registered;
|
use Illuminate\Auth\Events\Registered;
|
||||||
use Illuminate\Foundation\Auth\RegistersUsers;
|
use Illuminate\Foundation\Auth\RegistersUsers;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class RegisterController extends Controller
|
class RegisterController extends Controller
|
||||||
{
|
{
|
||||||
@ -26,19 +25,6 @@ class RegisterController extends Controller
|
|||||||
use RegistersUsers;
|
use RegistersUsers;
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle a registration request for the application.
|
* Handle a registration request for the application.
|
||||||
*
|
*
|
||||||
|
@ -4,7 +4,6 @@
|
|||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Foundation\Auth\ResetsPasswords;
|
use Illuminate\Foundation\Auth\ResetsPasswords;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class ResetPasswordController extends Controller
|
class ResetPasswordController extends Controller
|
||||||
{
|
{
|
||||||
@ -21,17 +20,4 @@ class ResetPasswordController extends Controller
|
|||||||
|
|
||||||
use ResetsPasswords;
|
use ResetsPasswords;
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,6 @@
|
|||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use Illuminate\Support\Facades\DB;
|
use Illuminate\Support\Facades\DB;
|
||||||
use Illuminate\Support\Facades\Artisan;
|
use Illuminate\Support\Facades\Artisan;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
use Exception;
|
use Exception;
|
||||||
|
|
||||||
class UserController extends Controller
|
class UserController extends Controller
|
||||||
@ -32,11 +31,6 @@ class UserController extends Controller
|
|||||||
public function __construct(TwoFAccountService $twofaccountService)
|
public function __construct(TwoFAccountService $twofaccountService)
|
||||||
{
|
{
|
||||||
$this->twofaccountService = $twofaccountService;
|
$this->twofaccountService = $twofaccountService;
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Providers\RouteServiceProvider;
|
use App\Providers\RouteServiceProvider;
|
||||||
use DarkGhostHunter\Larapass\Http\ConfirmsWebAuthn;
|
use DarkGhostHunter\Larapass\Http\ConfirmsWebAuthn;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class WebAuthnConfirmController extends Controller
|
class WebAuthnConfirmController extends Controller
|
||||||
{
|
{
|
||||||
@ -28,18 +27,4 @@ class WebAuthnConfirmController extends Controller
|
|||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
protected $redirectTo = RouteServiceProvider::HOME;
|
protected $redirectTo = RouteServiceProvider::HOME;
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -6,7 +6,6 @@
|
|||||||
use DarkGhostHunter\Larapass\Http\SendsWebAuthnRecoveryEmail;
|
use DarkGhostHunter\Larapass\Http\SendsWebAuthnRecoveryEmail;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Validation\ValidationException;
|
use Illuminate\Validation\ValidationException;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class WebAuthnDeviceLostController extends Controller
|
class WebAuthnDeviceLostController extends Controller
|
||||||
{
|
{
|
||||||
@ -23,19 +22,6 @@ class WebAuthnDeviceLostController extends Controller
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The recovery credentials to retrieve through validation rules.
|
* The recovery credentials to retrieve through validation rules.
|
||||||
*
|
*
|
||||||
|
@ -6,7 +6,6 @@
|
|||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use DarkGhostHunter\Larapass\Http\AuthenticatesWebAuthn;
|
use DarkGhostHunter\Larapass\Http\AuthenticatesWebAuthn;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class WebAuthnLoginController extends Controller
|
class WebAuthnLoginController extends Controller
|
||||||
{
|
{
|
||||||
@ -27,18 +26,6 @@ class WebAuthnLoginController extends Controller
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function options(Request $request)
|
public function options(Request $request)
|
||||||
{
|
{
|
||||||
|
@ -6,12 +6,9 @@
|
|||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Http\Requests\WebauthnRenameRequest;
|
use App\Http\Requests\WebauthnRenameRequest;
|
||||||
use DarkGhostHunter\Larapass\Eloquent\WebAuthnCredential;
|
use DarkGhostHunter\Larapass\Eloquent\WebAuthnCredential;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class WebAuthnManageController extends Controller
|
class WebAuthnManageController extends Controller
|
||||||
{
|
{
|
||||||
// use RecoversWebAuthn;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
| WebAuthn Manage Controller
|
| WebAuthn Manage Controller
|
||||||
@ -33,14 +30,6 @@ public function __construct()
|
|||||||
*/
|
*/
|
||||||
public function index(Request $request)
|
public function index(Request $request)
|
||||||
{
|
{
|
||||||
// WebAuthn is useless when authentication is handle by
|
|
||||||
// a reverse proxy so we return a 202 response to tell the
|
|
||||||
// client nothing more will happen
|
|
||||||
if (config('auth.defaults.guard') === 'reverse-proxy-guard') {
|
|
||||||
return response()->json([
|
|
||||||
'message' => 'no webauthn with reverse proxy'], 202);
|
|
||||||
}
|
|
||||||
|
|
||||||
$user = $request->user();
|
$user = $request->user();
|
||||||
$allUserCredentials = $user->webAuthnCredentials()
|
$allUserCredentials = $user->webAuthnCredentials()
|
||||||
->enabled()
|
->enabled()
|
||||||
@ -72,6 +61,9 @@ public function rename(WebauthnRenameRequest $request, string $credential)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the specified credential from storage.
|
* Remove the specified credential from storage.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @param string|array $credential
|
||||||
*
|
*
|
||||||
* @return \Illuminate\Http\JsonResponse
|
* @return \Illuminate\Http\JsonResponse
|
||||||
*/
|
*/
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Validation\ValidationException;
|
use Illuminate\Validation\ValidationException;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class WebAuthnRecoveryController extends Controller
|
class WebAuthnRecoveryController extends Controller
|
||||||
{
|
{
|
||||||
@ -32,19 +31,7 @@ class WebAuthnRecoveryController extends Controller
|
|||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
protected $redirectTo = RouteServiceProvider::HOME;
|
protected $redirectTo = RouteServiceProvider::HOME;
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the credential creation options to the user.
|
* Returns the credential creation options to the user.
|
||||||
|
@ -4,7 +4,6 @@
|
|||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use DarkGhostHunter\Larapass\Http\RegistersWebAuthn;
|
use DarkGhostHunter\Larapass\Http\RegistersWebAuthn;
|
||||||
use App\Exceptions\UnsupportedWithReverseProxyException;
|
|
||||||
|
|
||||||
class WebAuthnRegisterController extends Controller
|
class WebAuthnRegisterController extends Controller
|
||||||
{
|
{
|
||||||
@ -20,16 +19,4 @@ class WebAuthnRegisterController extends Controller
|
|||||||
| persisted into the application, otherwise it will signal failure.
|
| persisted into the application, otherwise it will signal failure.
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new controller instance.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$authGuard = config('auth.defaults.guard');
|
|
||||||
|
|
||||||
if ($authGuard === 'reverse-proxy-guard') {
|
|
||||||
throw new UnsupportedWithReverseProxyException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -71,7 +71,9 @@ class Kernel extends HttpKernel
|
|||||||
'auth' => \App\Http\Middleware\Authenticate::class,
|
'auth' => \App\Http\Middleware\Authenticate::class,
|
||||||
'guest' => \App\Http\Middleware\RejectIfAuthenticated::class,
|
'guest' => \App\Http\Middleware\RejectIfAuthenticated::class,
|
||||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||||
'disableInDemoMode' => \App\Http\Middleware\DisableInDemoMode::class,
|
'rejectIfDemoMode' => \App\Http\Middleware\RejectIfDemoMode::class,
|
||||||
|
'rejectIfReverseProxy' => \App\Http\Middleware\RejectIfReverseProxy::class,
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
use Illuminate\Http\Response;
|
use Illuminate\Http\Response;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
|
|
||||||
class DisableInDemoMode
|
class RejectIfDemoMode
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Handle an incoming request.
|
* Handle an incoming request.
|
||||||
@ -19,7 +19,7 @@ public function handle($request, Closure $next)
|
|||||||
{
|
{
|
||||||
|
|
||||||
if( config('2fauth.config.isDemoApp') ) {
|
if( config('2fauth.config.isDemoApp') ) {
|
||||||
Log::notice('Cannot request a password reset in Demo mode');
|
Log::notice('Cannot request this action in Demo mode');
|
||||||
|
|
||||||
return response()->json(['message' => __('auth.forms.disabled_in_demo')], Response::HTTP_UNAUTHORIZED);
|
return response()->json(['message' => __('auth.forms.disabled_in_demo')], Response::HTTP_UNAUTHORIZED);
|
||||||
}
|
}
|
28
app/Http/Middleware/RejectIfReverseProxy.php
Normal file
28
app/Http/Middleware/RejectIfReverseProxy.php
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Middleware;
|
||||||
|
|
||||||
|
use Closure;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
|
||||||
|
class RejectIfReverseProxy
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Handle an incoming request.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @param \Closure $next
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function handle($request, Closure $next)
|
||||||
|
{
|
||||||
|
if (config('auth.defaults.guard') === 'reverse-proxy-guard') {
|
||||||
|
Log::notice('Cannot request this action in Demo mode');
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'message' => __('errors.unsupported_with_reverseproxy')], 400);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
|
}
|
@ -84,12 +84,8 @@
|
|||||||
|
|
||||||
this.isFetching = true
|
this.isFetching = true
|
||||||
|
|
||||||
await this.axios.get('/oauth/personal-access-tokens').then(response => {
|
await this.axios.get('/oauth/personal-access-tokens')
|
||||||
if (response.status === 202) {
|
.then(response => {
|
||||||
this.isRemoteUser = true
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
const tokens = []
|
const tokens = []
|
||||||
|
|
||||||
response.data.forEach((data) => {
|
response.data.forEach((data) => {
|
||||||
@ -104,6 +100,16 @@
|
|||||||
|
|
||||||
this.tokens = tokens
|
this.tokens = tokens
|
||||||
})
|
})
|
||||||
|
.catch(error => {
|
||||||
|
if( error.response.status === 400 ) {
|
||||||
|
|
||||||
|
this.isRemoteUser = true
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
|
||||||
|
this.$router.push({ name: 'genericError', params: { err: error.response } });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
this.isFetching = false
|
this.isFetching = false
|
||||||
},
|
},
|
||||||
|
@ -101,11 +101,19 @@
|
|||||||
|
|
||||||
this.isFetching = true
|
this.isFetching = true
|
||||||
|
|
||||||
await this.axios.get('/webauthn/credentials').then(response => {
|
await this.axios.get('/webauthn/credentials', {returnError: true})
|
||||||
if (response.status === 202) {
|
.then(response => {
|
||||||
|
this.credentials = response.data
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
if( error.response.status === 400 ) {
|
||||||
|
|
||||||
this.isRemoteUser = true
|
this.isRemoteUser = true
|
||||||
}
|
}
|
||||||
else this.credentials = response.data
|
else {
|
||||||
|
|
||||||
|
this.$router.push({ name: 'genericError', params: { err: error.response } });
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
this.isFetching = false
|
this.isFetching = false
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
/**
|
/**
|
||||||
* Routes that only work for unauthenticated user (return an error otherwise)
|
* Routes that only work for unauthenticated user (return an error otherwise)
|
||||||
*/
|
*/
|
||||||
Route::group(['middleware' => ['guest', 'disableInDemoMode']], function () {
|
Route::group(['middleware' => ['guest', 'rejectIfDemoMode']], function () {
|
||||||
Route::post('user', 'Auth\RegisterController@register')->name('user.register');
|
Route::post('user', 'Auth\RegisterController@register')->name('user.register');
|
||||||
Route::post('user/password/lost', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('user.password.lost');;
|
Route::post('user/password/lost', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('user.password.lost');;
|
||||||
Route::post('user/password/reset', 'Auth\ResetPasswordController@reset')->name('user.password.reset');
|
Route::post('user/password/reset', 'Auth\ResetPasswordController@reset')->name('user.password.reset');
|
||||||
@ -36,17 +36,17 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Routes protected by an authentication guard
|
* Routes protected by an authentication guard but rejected when reverse-proxy guard is enabled
|
||||||
*/
|
*/
|
||||||
Route::group(['middleware' => 'behind-auth'], function () {
|
Route::group(['middleware' => ['behind-auth', 'rejectIfReverseProxy']], function () {
|
||||||
Route::put('user', 'Auth\UserController@update')->name('user.update');
|
Route::put('user', 'Auth\UserController@update')->name('user.update');
|
||||||
Route::patch('user/password', 'Auth\PasswordController@update')->name('user.password.update')->middleware('disableInDemoMode');
|
Route::patch('user/password', 'Auth\PasswordController@update')->name('user.password.update')->middleware('rejectIfDemoMode');
|
||||||
Route::get('user/logout', 'Auth\LoginController@logout')->name('user.logout');
|
Route::get('user/logout', 'Auth\LoginController@logout')->name('user.logout');
|
||||||
Route::delete('user', 'Auth\UserController@delete')->name('user.delete')->middleware('disableInDemoMode');
|
Route::delete('user', 'Auth\UserController@delete')->name('user.delete')->middleware('rejectIfDemoMode');
|
||||||
|
|
||||||
Route::get('oauth/personal-access-tokens', 'Auth\PersonalAccessTokenController@forUser')->name('passport.personal.tokens.index');
|
Route::get('oauth/personal-access-tokens', 'Laravel\Passport\Http\Controllers\PersonalAccessTokenController@forUser')->name('passport.personal.tokens.index');
|
||||||
Route::post('oauth/personal-access-tokens', 'Auth\PersonalAccessTokenController@store')->name('passport.personal.tokens.store');
|
Route::post('oauth/personal-access-tokens', 'Laravel\Passport\Http\Controllers\PersonalAccessTokenController@store')->name('passport.personal.tokens.store');
|
||||||
Route::delete('oauth/personal-access-tokens/{token_id}', 'Auth\PersonalAccessTokenController@destroy')->name('passport.personal.tokens.destroy');
|
Route::delete('oauth/personal-access-tokens/{token_id}', 'Laravel\Passport\Http\Controllers\PersonalAccessTokenController@destroy')->name('passport.personal.tokens.destroy');
|
||||||
|
|
||||||
Route::post('webauthn/register/options', [WebAuthnRegisterController::class, 'options'])->name('webauthn.register.options');
|
Route::post('webauthn/register/options', [WebAuthnRegisterController::class, 'options'])->name('webauthn.register.options');
|
||||||
Route::post('webauthn/register', [WebAuthnRegisterController::class, 'register'])->name('webauthn.register');
|
Route::post('webauthn/register', [WebAuthnRegisterController::class, 'register'])->name('webauthn.register');
|
||||||
|
Loading…
Reference in New Issue
Block a user