autenticação socket.io após o soquete estabelecido
Estou trabalhando em um pequeno jogo multiplayer. Eu gostaria de introduzir autenticação. Estou usando o Node.js e o Socket.io.
Quando o usuário chegar à página principal - quero que ele entre no jogo, esteja logado ou não - mas não poderá fazer nada dentro dele (apenas observe).
Como eu poderia autenticar o usuário no soquete já aberto?
Posso manter a autenticação ainda se eles saírem do site e voltarem? Você pode passar um cookie através de um soquete da web?
EDITA
Para aprofundar minha pergunta. Um dos pensamentos possíveis que tive foi fornecer a conexão do websocket e, quando eles tentam fazer login, passa o nome de usuário e a senha como uma mensagem para o websocke
client.on('onLogin', loginfunction);
Eu poderia pegar o nome de usuário e a senha, verificar no banco de dados, pegar o ID da sessão do soquete e passá-lo em algum lugar para dizer que a sessão está autenticada para esse usuári
Isso é seguro? Ainda posso implementar um cookie no soquete para que eles voltem? Existe alguma maneira no socket.io de declarar que o soquete agora está autenticado em vez de verificar manualmente cada mensagem recebida?
Felicidade