Laravel: Как аутентифицировать пользователя из другой базы данных в веб-приложении? - PullRequest
0 голосов
/ 30 мая 2019

Мы создаем веб-приложение для нашего приложения. Наше приложение имеет базу данных, а наше веб-приложение имеет другую БД. Было принято решение использовать API для связи с базой данных APP, а не использовать одну базу данных для выполнения всех задач.

Поэтому из-за этого мне нужно выяснить, как аутентифицировать пользователя из другой базы данных в нашем веб-приложении.

У меня есть сведения о подключении к базе данных, и ниже приведено то, что я сделал до сих пор.

In auth.php

    'defaults' => [
         'guard' => 'custom_guard',

     ]

    'guards' => [
        // default guards here,
        'custom_guard' => [
            'driver' => 'session',
            'provider' => 'custom_users'
        ],
    ]



    'providers' => [
        //default providers,
        'custom_users' => [
             'driver' => 'eloquent',
             'model' => App\Models\Custom_User::class,
         ]
    ]


в приложении \ Models \ Custom_User

    namespace App\Models;

    use Illuminate\Database\Eloquent\Model;
    use Illuminate\Notifications\Notifiable;
    use Illuminate\Foundation\Auth\User as Authenticatable;

    class Custom_User extends Authenticatable
    {
    use Notifiable;
    protected $guard = 'custom_guard';
    protected $connection = 'secondary_connection';
    protected $table = 'users';

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
            //fillable stuff
        ];

        /**
         * The attributes that should be hidden for arrays.
         *
         * @var array
         */
        protected $hidden = [
            //hidden stuff
        ];
}

В database.php

'secondary_connection' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST'),
            'port' => env('DB_PORT'),
            'database' => env('DB'),
            'username' => env('DB_USERNAME'),
            'password' => env('DB_PASSWORD'),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],

Что мне нужно сделать в дополнение к этому или каков наилучший способ аутентификации на основе пользователя из другой БД?

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