Я пытаюсь найти несколько способов аутентификации для службы API в моем приложении Laravel. Приложение представляет собой SPA, использующее Vue. js и использует маршрут API для визуализации и представления всех компонентов представления. В настоящее время я использую драйвер JWT для защиты API в приложении. Однако я также хотел бы предложить своим клиентам возможность доступа к одному и тому же API через OAuth и персональный токен Laravel. С учетом вышесказанного, как мне защитить свои ресурсы с помощью промежуточного программного обеспечения Auth, где к нему можно получить доступ изнутри с помощью JWT или извне с помощью клиента с OAuth или токеном API.
Контроллер:
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
// Make sure user is authenticated
$this->middleware('auth:api');
//$this->middleware('auth:oauth');
}
Auth Guard:
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'jwt',
'provider' => 'users',
],
'oauth' => [
'driver' => 'token',
'provider' => 'users',
]
],