Как предоставить токен? Это правильный метод? ИЛИ Кодирование LIKE - это правильный метод?
Используется другой грант. Правильный метод в соответствии с потребностями вашего приложения. Перед внедрением OAuth вам необходимо узнать о типах грантов:
Грант кода авторизации
Грант кода авторизации должен быть очень знаком, если вы когда-либо входили в приложение с помощью Facebook или Google. account.
Неявное предоставление
Неявное предоставление аналогично предоставлению кода авторизации с двумя отличиями.
Предназначено для использования клиентами на основе агента пользователя. (например, одностраничные веб-приложения), которые не могут хранить секрет клиента, поскольку весь код приложения и хранилище легко доступны.
Во-вторых, вместо сервера авторизации, возвращающего код авторизации, который обменивается на токен доступа сервер авторизации возвращает маркер доступа
Предоставление учетных данных владельца ресурса
Это предоставление является отличным пользовательским интерфейсом для доверенных сторонних клиентов как в Интернете, так и в собственных приложениях для устройств.
Предоставление учетных данных клиента
Самый простой из всех l грантов OAuth 2.0, этот грант подходит для межмашинной аутентификации, где не требуется указывать c разрешение пользователя на доступ к данным.
Refre sh предоставление токена
Доступ к токенам со временем истекает; однако некоторые разрешения предоставляют токен refre sh, который позволяет клиенту получить новый токен доступа без необходимости перенаправления пользователя.
Какой грант OAuth 2.0 следует использовать?
Грант - это метод получения токена доступа. Решение о том, какие гранты реализовать, зависит от типа клиента, который будет использовать конечный пользователь, и опыта, который вы хотите для своих пользователей.
Как обрабатывать Refre sh Система токенов для Angular?
Срок действия маркеров доступа истекает; Клиент отправляет запрос POST со следующими параметрами тела в /oauth/token
:
grant_type
со значением refresh_token
refresh_token
со ссылкой ref sh token client_id
с идентификатором клиента client_secret
с секретом клиента scope
с разделенным пробелами списком запрошенных разрешений области действия. Это необязательно; если не отправлено, будут использованы исходные области, в противном случае вы можете запросить сокращенный набор областей .
$http = new GuzzleHttp\Client;
$response = $http->post('http://your-app.com/oauth/token', [
'form_params' => [
'grant_type' => 'refresh_token',
'refresh_token' => 'the-refresh-token',
'client_id' => 'client-id',
'client_secret' => 'client-secret',
'scope' => '',
],
]);
return json_decode((string) $response->getBody(), true);
или вы можете использовать Angular HTTPInterceptor
для обновления токена. Перехватчики HTTP используются для добавления пользовательских логи c для ведения журнала, изменения ответа, обработки ошибок, но одним из распространенных случаев является автоматическое присоединение аутентификационных данных к запросу и обновление токена sh для поддержания активности сеанса пользователя.
Ссылка: