Autenticação baseada em 'Token' nas APIs REST

estou a tentar implementar uma abordagem de autenticação baseada em fichas: cada login de sucesso cria um novo token. ... ficha? Ou também preciso de persistir no IP? Pergunta adicional: como evitar que atacantes roubem o token de um cookie?