Хорошо, у меня есть небольшой вопрос концепции приложения. Я хочу разделить ресурс и сервер авторизации с паспортом laravel.
У меня есть сервер OAuth2 и классическое приложение laravel с самодельной системой аутентификации без сохранения состояния. У меня есть SPA с Vue.js, который отправляет запрос на вход в интерфейс REST в переднее приложение laravel. Это приложение вызвало GuzzleClient для отправки запроса типа предоставления пароля oauth для получения токена.
public function login(Request $request, Client $client)
{
$url = config('app.auth.server') .'/oauth/token';
$response = $client->post($url, [
'form_params' => [
'grant_type' => 'password',
'username' => $request->name,
'password' => $request->password,
'client_id' => config('auth.oauth.password.client-id'),
'client_secret' => config('auth.oauth.password.client-secret'),
]
]);
if ($response->getStatusCode() !== Response::HTTP_OK) {
return http_response_code($response->getStatusCode());
}
return response()->json($response->getBody()->getContent(), Response::HTTP_OK);
}
Но если я хочу защитить маршрут API, я не могу использовать защиту auth:api, предоставленную паспортом.
2 решения.
Второе решение, вероятно, лучше. Но что вы думаете ? Есть ли у вас какие-либо идеи или лучшие практики?
Спасибо за чтение.






Есть ли решение?