-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Closed
Milestone
Description
Gitlab authentication is not working.
GITLAB_APP_ID, GITLAB_APP_SECRET and GITLAB_APP_URI have been correctly entered.
When redirecting to my Gitlab (self-hosted), the url contains an empty scope =
parameter. However, Gitlab does not seem (or no longer) to accept empty scopes.
A temporary fix that I made on my side is to add in the file app / Auth / Access / SocialAuthService.php
, in the function getSocialDriver
an additional condition:
/**
* Provide redirect options per service for the Laravel Socialite driver
*/
public function getSocialDriver(string $driverName): Provider
{
$driver = $this->socialite->driver($driverName);
if ($driverName === 'google' && config('services.google.select_account')) {
$driver->with(['prompt' => 'select_account']);
}
if ($driverName === 'azure') {
$driver->with(['resource' => 'https://graph.windows.net']);
}
// BEGIN Dirty-fix
if ($driverName === 'gitlab') {
$driver = $driver->setScopes(['read_user']);
}
// END dirty-fix
return $driver;
}
I put read_user
, but it's definitely too high a permission.
Gitlab version: 13.5.3
Thank you very much !