Google2Fa ready to upload
This commit is contained in:
parent
e3495be8b8
commit
73e38a006e
127 changed files with 2637 additions and 589 deletions
24
app/Http/Middleware/AuthGoogle2FA.php
Normal file
24
app/Http/Middleware/AuthGoogle2FA.php
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Auth;
|
||||
use Closure;
|
||||
use App\Services\AuthGoogle2FA;
|
||||
|
||||
class AuthGoogle2FA
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$AuthGoogle2FA = app(AuthGoogle2FA::class)->init($request);
|
||||
|
||||
if(!Auth::user()->isGoogle2Fa()){
|
||||
return $AuthGoogle2FA->makeActiveOneTimePasswordResponse();
|
||||
}
|
||||
if ($AuthGoogle2FA->isAuthenticated()) {
|
||||
return $next($request);
|
||||
}
|
||||
return $AuthGoogle2FA->makeRequestOneTimePasswordResponse();
|
||||
}
|
||||
}
|
||||
|
||||
99
app/Http/Middleware/Authenticate.php
Normal file
99
app/Http/Middleware/Authenticate.php
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Auth\AuthenticationException;
|
||||
use Illuminate\Contracts\Auth\Factory as Auth;
|
||||
use Illuminate\Contracts\Auth\Middleware\AuthenticatesRequests;
|
||||
|
||||
class Authenticate implements AuthenticatesRequests
|
||||
{
|
||||
/**
|
||||
* The authentication factory instance.
|
||||
*
|
||||
* @var \Illuminate\Contracts\Auth\Factory
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* Create a new middleware instance.
|
||||
*
|
||||
* @param \Illuminate\Contracts\Auth\Factory $auth
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Auth $auth)
|
||||
{
|
||||
$this->auth = $auth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @param string[] ...$guards
|
||||
* @return mixed
|
||||
*
|
||||
* @throws \Illuminate\Auth\AuthenticationException
|
||||
*/
|
||||
public function handle($request, Closure $next, ...$guards)
|
||||
{
|
||||
$this->authenticate($request, $guards);
|
||||
if(!$this->auth->user()->active){
|
||||
abort(403, 'Konto ist nicht aktiv');
|
||||
}
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the user is logged in to any of the given guards.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param array $guards
|
||||
* @return void
|
||||
*
|
||||
* @throws \Illuminate\Auth\AuthenticationException
|
||||
*/
|
||||
protected function authenticate($request, array $guards)
|
||||
{
|
||||
if (empty($guards)) {
|
||||
$guards = [null];
|
||||
}
|
||||
|
||||
foreach ($guards as $guard) {
|
||||
if ($this->auth->guard($guard)->check()) {
|
||||
return $this->auth->shouldUse($guard);
|
||||
}
|
||||
}
|
||||
|
||||
$this->unauthenticated($request, $guards);
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an unauthenticated user.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param array $guards
|
||||
* @return void
|
||||
*
|
||||
* @throws \Illuminate\Auth\AuthenticationException
|
||||
*/
|
||||
protected function unauthenticated($request, array $guards)
|
||||
{
|
||||
throw new AuthenticationException(
|
||||
'Unauthenticated.', $guards, $this->redirectTo($request)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the path the user should be redirected to when they are not authenticated.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return string|null
|
||||
*/
|
||||
protected function redirectTo($request)
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
||||
24
app/Http/Middleware/Google2FA.php
Normal file
24
app/Http/Middleware/Google2FA.php
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Auth;
|
||||
use Closure;
|
||||
use App\Services\AuthGoogle2FA;
|
||||
|
||||
class Google2FA
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$AuthGoogle2FA = app(AuthGoogle2FA::class)->init($request);
|
||||
|
||||
if(!Auth::user()->isGoogle2Fa()){
|
||||
return $AuthGoogle2FA->makeActiveOneTimePasswordResponse();
|
||||
}
|
||||
if ($AuthGoogle2FA->isAuthenticated()) {
|
||||
return $next($request);
|
||||
}
|
||||
return $AuthGoogle2FA->makeRequestOneTimePasswordResponse();
|
||||
}
|
||||
}
|
||||
|
||||
25
app/Http/Middleware/Google2FAAuth.php
Normal file
25
app/Http/Middleware/Google2FAAuth.php
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use PragmaRX\Google2FALaravel\Support\Authenticator;
|
||||
use Auth;
|
||||
|
||||
class Google2FA
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$authenticator = app(Authenticator::class)->boot($request);
|
||||
dd(Auth::user()->isGoogle2Fa());
|
||||
if(Auth::user()->isGoogle2Fa()){
|
||||
|
||||
}
|
||||
if ($authenticator->isAuthenticated()) {
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
return $authenticator->makeRequestOneTimePasswordResponse();
|
||||
}
|
||||
}
|
||||
|
||||
24
app/Http/Middleware/MiddleGoogle2FA.php
Normal file
24
app/Http/Middleware/MiddleGoogle2FA.php
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Auth;
|
||||
use Closure;
|
||||
use App\Services\AuthGoogle2FA;
|
||||
|
||||
class MiddleGoogle2FA
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$AuthGoogle2FA = app(AuthGoogle2FA::class)->init($request);
|
||||
|
||||
if(!Auth::user()->isGoogle2Fa()){
|
||||
\App\Services\MyGoogle2FA::logout();
|
||||
return $AuthGoogle2FA->makeActiveOneTimePasswordResponse();
|
||||
}
|
||||
if ($AuthGoogle2FA->isAuthenticated()) {
|
||||
return $next($request);
|
||||
}
|
||||
return $AuthGoogle2FA->makeRequestOneTimePasswordResponse();
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue