как использовать один и тот же CLIENT_ID & CLIENT_SECRET для одного провайдера - PullRequest
0 голосов
/ 17 апреля 2020

Я использую Множественная аутентификация для пользователей и администраторов (все работает отлично с многократной аутентификацией)

Примечание : панель администратора и панель пользователя работают в различные субдомены.

Я собираюсь использовать Socialite для аутентификации, а также для пользовательской панели и панели администратора . Итак, Socialite также работает для Facebook и Google, но есть проблема.

Проблема в том, что редирект работает только для одной части. Мне нужно определить разные URL-адреса перенаправления для каждой части.

Примечание: например, Google API принимает разные URL-адреса и перенаправить для одного CLIENT_ID

Вот мой драйвер и URL перенаправления

'google' => [
    'client_id' => env('GOOGLE_CLIENT_ID'),
    'client_secret' => env('GOOGLE_CLIENT_SECRET'),
    'redirect' => 'https://'.env('APP_USER_SOCIALITE').'/login/google/callback'
],
'facebook' => [
    'client_id' => env('FB_CLIENT_ID'),
    'client_secret' => env('FB_CLIENT_SECRET'),
    'redirect' => 'https://'.env('APP_USER_SOCIALITE').'/login/facebook/callback'
]

Примечание : нам запрещено использовать другое имя, например

'google_user' => [
    ...
],
'facebook_user' => [
   ...
],
'google_admin' => [
   ...
],
'facebook_admin = [
  ...
]

Я думаю, что решение должно быть каким-то что-то похожее на:

'google' => [
    'client_id' => env('GOOGLE_CLIENT_ID'),
    'client_secret' => env('GOOGLE_CLIENT_SECRET'),
    'redirect' => 'https://'.env('APP_USER_SOCIALITE').'/login/google/callback',
    'redirect2' => 'https://'.env('APP_ADMIN_SOCIALITE').'/login/google/callback'
],
'facebook' => [
    'client_id' => env('FB_CLIENT_ID'),
    'client_secret' => env('FB_CLIENT_SECRET'),
    'redirect' => 'https://'.env('APP_USER_SOCIALITE').'/login/facebook/callback'
    'redirect2' => 'https://'.env('APP_ADMIN_SOCIALITE').'/login/google/callback'
]

С нетерпением ждем помощи от вас

С уважением

...