В чем собственно проблема? Все подробно описано в документации
socketo.me/docs/hello-world
Для авторизации или аутентификации просто отправляется сообщение определенной структуры (желательно over tls), например шлешь {"type":"login", "username":"foo","password":"bar"}, на сервере проверяешь, если пользователь найден, метишь соединение и отправляешь назад например {"type":"logged_in","token":"baz"}, сохраняешь на клиенте токен и при открытии соединения в следующий раз в первую очередь шлешь этот токен
вот пример с jwt
https://gist.github.com/jfromaniello/8418116