diff --git a/app/Http/Controllers/Setup/AccountController.php b/app/Http/Controllers/Setup/AccountController.php index ff124a58..b8fb3f5a 100644 --- a/app/Http/Controllers/Setup/AccountController.php +++ b/app/Http/Controllers/Setup/AccountController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Setup; use App\Actions\Fortify\CreateNewUser; +use App\Enums\Role; use App\Http\Controllers\Controller; use Illuminate\Contracts\View\View; use Illuminate\Http\RedirectResponse; @@ -27,6 +28,7 @@ public function index(): View protected function register(Request $request): RedirectResponse { $user = (new CreateNewUser())->create($request->input()); + $user->assignRole(Role::ADMIN); Auth::login($user, true); diff --git a/app/Http/Controllers/SocialiteController.php b/app/Http/Controllers/SocialiteController.php index 4f10bde9..a83a4948 100644 --- a/app/Http/Controllers/SocialiteController.php +++ b/app/Http/Controllers/SocialiteController.php @@ -26,8 +26,8 @@ public function callback(string $provider) if ($user = User::where('email', $authUser->getEmail())->first()) { if ($user->sso_provider !== null && $user->sso_provider !== $provider) { abort(403, trans('auth.sso_wrong_provider', [ - 'currentProvider' => trans('auth.sso.' . $provider), - 'userProvider' => trans('auth.sso.' . $user->sso_provider), + 'currentProvider' => trans('auth.sso_provider.' . $provider), + 'userProvider' => trans('auth.sso_provider.' . $user->sso_provider), ])); } diff --git a/app/Models/User.php b/app/Models/User.php index 17e0e92b..e5b4f51e 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -125,4 +125,9 @@ public function isSystemUser(): bool { return $this->id === 0; } + + public function isSsoUser(): bool + { + return $this->sso_id !== null; + } } diff --git a/lang/en_US/auth.php b/lang/en_US/auth.php index 95c5dc94..6b2c4a2f 100644 --- a/lang/en_US/auth.php +++ b/lang/en_US/auth.php @@ -52,10 +52,13 @@ 'api_tokens.revoke_confirm' => 'Do you really want to revoke this token? This step cannot be undone and the token cannot be recovered.', 'api_tokens.revoke_successful' => 'The token was revoked successfully.', + 'sso' => 'SSO', + 'sso_account_provider' => 'SSO Provider', + 'sso_account_id' => 'SSO ID', 'sso_provider_disabled' => 'The selected SSO provider is not available. Please choose another one.', 'sso_wrong_provider' => 'Unable to login with :currentProvider. Please use :userProvider to login, or contact your administrator for help.', - 'sso' => [ + 'sso_provider' => [ 'auth0' => 'Auth0', 'authentik' => 'Authentik', 'azure' => 'Azure', diff --git a/resources/views/admin/users/partials/user-list.blade.php b/resources/views/admin/users/partials/user-list.blade.php index 7fee9f73..9b266857 100644 --- a/resources/views/admin/users/partials/user-list.blade.php +++ b/resources/views/admin/users/partials/user-list.blade.php @@ -9,6 +9,9 @@
{{ $user->name }} {{ $user->email }} + @if($user->isSsoUser()) + @lang('auth.sso') + @endif @if($user->isBlocked()) @lang('linkace.blocked') @endif diff --git a/resources/views/admin/users/show.blade.php b/resources/views/admin/users/show.blade.php index f8bb7e0d..3adbc5a5 100644 --- a/resources/views/admin/users/show.blade.php +++ b/resources/views/admin/users/show.blade.php @@ -16,6 +16,12 @@
{{ $user->email }}
@lang('linkace.created_at') {{ $user->created_at }}
+ @if($user->isSsoUser()) +
+
@lang('auth.sso_account_provider'): @lang('auth.sso_provider.' . $user->sso_provider)
+
@lang('auth.sso_account_id'): {{ $user->sso_id }}
+
+ @endif