X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/dabe79a438f22612e7d68c8d1de7817505b59b93..refs/pull/2890/head:/app/Http/Controllers/Auth/Saml2Controller.php diff --git a/app/Http/Controllers/Auth/Saml2Controller.php b/app/Http/Controllers/Auth/Saml2Controller.php index 863894128..14eb65b71 100644 --- a/app/Http/Controllers/Auth/Saml2Controller.php +++ b/app/Http/Controllers/Auth/Saml2Controller.php @@ -7,7 +7,6 @@ use BookStack\Http\Controllers\Controller; class Saml2Controller extends Controller { - protected $samlService; /** @@ -15,17 +14,8 @@ class Saml2Controller extends Controller */ public function __construct(Saml2Service $samlService) { - parent::__construct(); $this->samlService = $samlService; - - // SAML2 access middleware - $this->middleware(function ($request, $next) { - if (!config('saml2.enabled')) { - $this->showPermissionError(); - } - - return $next($request); - }); + $this->middleware('guard:saml2'); } /** @@ -59,8 +49,9 @@ class Saml2Controller extends Controller public function metadata() { $metaData = $this->samlService->metadata(); + return response()->make($metaData, 200, [ - 'Content-Type' => 'text/xml' + 'Content-Type' => 'text/xml', ]); } @@ -72,6 +63,7 @@ class Saml2Controller extends Controller { $requestId = session()->pull('saml2_logout_request_id', null); $redirect = $this->samlService->processSlsResponse($requestId) ?? '/'; + return redirect($redirect); } @@ -86,11 +78,10 @@ class Saml2Controller extends Controller $user = $this->samlService->processAcsResponse($requestId); if ($user === null) { $this->showErrorNotification(trans('errors.saml_fail_authed', ['system' => config('saml2.name')])); + return redirect('/login'); } - session()->put('last_login_type', 'saml2'); return redirect()->intended(); } - }