Oftast ändrar man sessionsvariablar väldigt sällan på servern (enligt mig) vilket ger upphov till möjligheter att (dubbel)lagra värdena där det kan tänkas behövas.
Jag hade nog skapat en tabell i datbasen som vid varje Session_OnStart i global.asa lagrar en ny rad med session("username") och session.sessionId i varsin kolumn. Då kan du även spåra ner vilken användare som har vilket ID med det unika sessionID:et och även få fram den lista som frågas efter.
Om det nu skulle vara så att sessionsvariablarna ändras frekvent på sidorna, skapa en klass och kapsla in denna kod i så att den är lätt att exekvera och att inte sessionsvariabel-uppdateringar glöms bort och tabellen blir inaktiv.
För att sedan ta bort de som är inaktiva skapar man bara en rensningsfunktion i global.asa (lämpligtvis i session_onStart igen, eftersom session_OnEnd är opålitlig) och tar bort alla poster som äldre än session("timeout")-variabeln.