браузерный клиент вебсокета отправляет куки (подходит если домен и порт сокета совпадают с http доменом и портом страниц)
так же можно передавать параметры в url сокета - универсальное решение
При авторизации генерируем пользователю токен сессии, я обычно в качестве такого токена использую uuid
При коннекте к серверу передаем этот токен в url, например так:
var protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
var ws = new WebSocket(protocol + '//' + window.location.host + '/' + token);
где в переменной token должна быть строка с токеном сессии
На сервере, при новом соеденении по вебсокету смотрим url и извлекаем из него токен и получаем по нему сессию, если такой сессии нет - обрываем соеденние