O token_authenticatable do dispositivo é seguro?

Eu estou construindo uma API simples comAPI Railse quero ter certeza de que estou no caminho certo aqui. Eu estou usando o legado para lidar com logins, e decidi ir com o Devise'stoken_authenticatable opção, que gera uma chave de API que você precisa enviar com cada solicitação.

Estou emparelhando a API com um front-end de backbone / marionete e geralmente estou me perguntando como devo lidar com as sessões. Meu primeiro pensamento foi apenas armazenar a chave api no armazenamento local ou um cookie, e recuperá-lo no carregamento da página, mas algo sobre o armazenamento da chave de API dessa maneira me incomodou do ponto de vista de segurança. Não seria fácil pegar a chave de API, procurando no armazenamento local / no cookie ou farejando qualquer solicitação que passar e usá-la para representar esse usuário indefinidamente? No momento, estou redefinindo a chave da API a cada login, mas mesmo isso parece freqüente - sempre que você faz login em qualquer dispositivo, isso significa que você seria desconectado de todos os outros, o que é uma espécie de dor. Se eu pudesse largar este reset, eu sinto que ele iria melhorar do ponto de vista da usabilidade.

Eu posso estar totalmente errado aqui (e espero que eu esteja), alguém pode explicar se a autenticação desse modo é confiável, e se não é uma boa alternativa? No geral, estou procurando uma maneira de manter seguramente os usuários "conectados" ao acesso à API sem forçar a nova autenticação com frequência.

questionAnswers(3)

yourAnswerToTheQuestion