Ограничить сотрудников, чтобы войти в Laravel в обеих системах - PullRequest
0 голосов
/ 19 сентября 2018

Я создал 2 (две) системы и 2 субдомена с одной и той же базой данных, но персонал, в который они могут войти в обе системы, и я хочу отключить персонал, чтобы не входить в другую систему.

Пожалуйста, дайте мне знать, если кто-нибудь может это сделать.Я новичок в мире Laravel

Спасибо

1 Ответ

0 голосов
/ 19 сентября 2018

Рассмотрите возможность добавления поля instance_id к модели User.

В первом приложении добавьте к app/Http/Controllers/Auth/LoginController.php:

/**
 * Attempt to log the user into the application.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return bool
 */
protected function attemptLogin(Request $request)
{
    $success = $this->guard()->attempt(
        $this->credentials($request), $request->filled('remember')
    );

    return ($success && $this->userExistsInApplication());
}


/**
 * Determine if the user exists for the specified application
 *
 * @return bool
 */
private function userExistsInApplication()
{
    if ($this->guard()->user()->instance_id == env('APP_INSTANCE'))
        return true;

    $this->guard()->user()->logout();

    return false;
}

Добавить к .env:

APP_INSTANCE=1

В приложении second добавьте к app/Http/Controllers/Auth/LoginController.php:

/**
 * Attempt to log the user into the application.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return bool
 */
protected function attemptLogin(Request $request)
{
    $success = $this->guard()->attempt(
        $this->credentials($request), $request->filled('remember')
    );

    return ($success && $this->userExistsInApplication());
}


/**
 * Determine if the user exists for the specified application
 *
 * @return bool
 */
private function userExistsInApplication()
{
    if ($this->guard()->user()->instance_id == env('APP_INSTANCE'))
        return true;

    $this->guard()->user()->logout();

    return false;
}

Добавьте к .env:

APP_INSTANCE=2

Setв какой экземпляр пользователь может войти, основываясь на их значении, установленном в instance_id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...