Em alguns projetos eu gero um token em md5 e gravo uma sessão no banco com a data de inicio, este token é enviado ao cliente e toda requisição eu valido se este token esta com a "data fim" nula, sendo assim autorizo o processamento da requisição.
Sempre que um novo "login" é feito eu "mato" a ultima sessão aberta e crio uma nova, desta forma eu mantenho um log das sessões do usuário.
( Nesta arquitetura independente do servidor que estiver rodando a api no momento o token para efeito de comparação pode ser validado pelo banco )
Na opnião de vocês esta é uma boa forma de implementar autenticação?