Я создаю простой api с Rails API и хочу, чтобы я был на правильном пути здесь. Я использую приложение для обработки логинов и решил перейти с параметром Devise token_authenticatable
, который генерирует ключ API, который вам нужно отправить с каждым запросом.
Я соединяю API с базовым интерфейсом/марионеткой и обычно задаюсь вопросом, как мне обрабатывать сеансы. Моя первая мысль состояла в том, чтобы просто сохранить ключ api в локальном хранилище или куки файл и получить его на загрузке страницы, но что-то о сохранении ключа api, которое меня беспокоило с точки зрения безопасности. Нелегко ли было бы захватить ключ api, заглянув в локальное хранилище/куки или обнюхивая любой запрос, который проходит, и используйте его для олицетворения этого пользователя на неопределенный срок? Я в настоящее время сбрасываю ключ api каждый логин, но даже это кажется частым - каждый раз, когда вы входите в систему на любом устройстве, это означает, что вы выходите на все остальные, что является видом боли. Если бы я мог отказаться от этого reset, я чувствую, что он улучшится с точки зрения удобства использования.
Я могу быть совершенно неправ здесь (и надеюсь, что найду), может ли кто-нибудь объяснить, надежна ли аутентификация таким образом, а если не хорошая альтернатива? В целом, я ищу способ, которым я могу безопасно поддерживать доступ пользователей к доступу к API без частого принудительного повторного авторизации.