А передавать индефикатор сесии через форму не пробывал? Юзер авторизовался, для него сгенерился SID, его помещаешь в базу и в форму на странице. Когда юзер переходит на другую страницу по ссылке, органезуешь отправку данных с формы (через JavaScript), сервер получив SID ищет его в базе, и если находит то всё ОК. это тот самый юзер, а если нет то посылает авторизовываться. SID лучше случайный генерить, и при каждой авторизации обновлять его в базе.