У меня есть сервер авторизации, и мой клиент - угловое приложение. Я не стороннее приложение. Я использовал этот пакет Symfony https://github.com/trikoder/oauth2-bundle Я использую тип гранта password
.
{
"grant_type":"password", "client_id":"myclientid", "username":"john@doe.com", "password":"foo", "client_secret":"3d4a940.....3c1ea38b5"
}
И ответ:
{ "token_type": "Bearer", "expires_in": 60, "access_token": "eyJ0eXAi....nK0Ag", "refresh_token": "def50200dfce4da3....fdc689e5" }
access_token
действителен только в течение 1 минуты, после этого клиенту необходимо использовать токен обновления, чтобы иметь возможность общаться с моим API:
{ "grant_type":"refresh_token", "client_id":"myclientid", "client_secret":"3d4a940.....3c1ea38b5" "refresh_token": "def50200dfce4da3....fdc689e5" }
client_id
и client_secret
хранятся в таблице,
Мой вопрос: безопасно / рекомендуется хранить client_id
и client_storage
в локальном хранилище переднего углового приложения? Потому что он в основном представляет учетные данные пользователя, и если кто-то их украдет, у них будет доступ к API. Но без них клиент не может отправить запрос в API. Я сканировал сеть, но не могу найти реального ответа, даже в документации oauth 2
Спасибо