Как я могу реализовать резервную проверку подлинности с помощью стороннего API в Laravel 5.7?

Привет и спасибо всем, кто нашел время, чтобы просмотреть это.

Вот небольшой фон. Наша текущая система имеет клиентскую панель, которая содержит набор пользователей. При входе в эту панель сначала он увидит, есть ли имя пользователя в базе данных. Если он не находит его, он вызывает сторонний API, у которого есть список администраторов "веб-мастеров" и там проверяет учетные данные.

Я пытаюсь реализовать эту функциональность в Laravel 5.7, и я не уверен, как это сделать. До сих пор я создал класс ActiveDirectory, который вызывает API для проверки учетных данных. Тогда в LoginController У меня есть следующий блок:

public function login(Request $request)
    {
        // Validate the form data
        $this->validate($request, [
            $this->username()  => 'required',
            'password' => 'required|min:6'
        ]);


        if ($this->attemptLogin($request)) {
            return $this->sendLoginResponse($request);
        }

        // Need to check if user is in active directory
        if (ActiveDirectory::validateWebmasterAdmin(request('username'), request('password'))) {
            return $this->sendLoginResponse($request);
        }

        // If the login attempt was unsuccessful we will increment the number of attempts
        // to login and redirect the user back to the login form. Of course, when this
        // user surpasses their maximum number of attempts they will get locked out.
        $this->incrementLoginAttempts($request);

        return $this->sendFailedLoginResponse($request);
    }

Я получаю правильные ответы обратно, но пользователь все еще не проходит аутентификацию, что, я уверен, связано с чем-то, что я делаю неправильно. Я предполагаю, что это как-то связано с $this->sendLoginResponse($request),

Если я получу совпадение учетных данных от API, я хотел бы использовать некоторые данные, которые я получаю обратно в приложение. Например, API возвращает имя, и я хотел бы использовать его в представлениях, подобных этому {{ Auth::user()->name }}

Любая помощь будет принята с благодарностью.

0 ответов

Другие вопросы по тегам