mirror of
https://github.com/Bubka/2FAuth.git
synced 2025-02-13 00:51:11 +01:00
Log error & Check OpenID config to ease SSO setup - See #325
This commit is contained in:
parent
ef11bef2bd
commit
d1c2a05b87
@ -8,6 +8,7 @@
|
|||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Carbon;
|
use Illuminate\Support\Carbon;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Laravel\Socialite\Facades\Socialite;
|
use Laravel\Socialite\Facades\Socialite;
|
||||||
|
|
||||||
@ -20,10 +21,16 @@ class SocialiteController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function redirect(Request $request, string $driver)
|
public function redirect(Request $request, string $driver)
|
||||||
{
|
{
|
||||||
|
// Generic SSO provider definition check
|
||||||
if (! config('services.' . $driver . '.client_id') || ! config('services.' . $driver . '.client_secret')) {
|
if (! config('services.' . $driver . '.client_id') || ! config('services.' . $driver . '.client_secret')) {
|
||||||
return redirect('/error?err=sso_bad_provider_setup');
|
return redirect('/error?err=sso_bad_provider_setup');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OpenID SSO provider definition check
|
||||||
|
if ($driver == 'openid' && (! config('services.openid.token_url') || ! config('services.openid.authorize_url') || ! config('services.openid.userinfo_url'))) {
|
||||||
|
return redirect('/error?err=sso_bad_provider_setup');
|
||||||
|
}
|
||||||
|
|
||||||
return Settings::get('enableSso')
|
return Settings::get('enableSso')
|
||||||
? Socialite::driver($driver)->redirect()
|
? Socialite::driver($driver)->redirect()
|
||||||
: redirect('/error?err=sso_disabled');
|
: redirect('/error?err=sso_disabled');
|
||||||
@ -39,6 +46,8 @@ public function callback(Request $request, string $driver)
|
|||||||
try {
|
try {
|
||||||
$socialiteUser = Socialite::driver($driver)->user();
|
$socialiteUser = Socialite::driver($driver)->user();
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
|
Log::error($e);
|
||||||
|
|
||||||
return redirect('/error?err=sso_failed');
|
return redirect('/error?err=sso_failed');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user