Mam pewien pomysł, nieco inny ale może Ci coś nasunie.
Co powiesz na inne podejście.
Masz strony A,B i C. Logowanie na dowolnej z nich ma pozwolić (w bezpieczny sposó

na to żeby user był zalogowany także na reszcie. Można byłoby wydzielić stronę X. Strona ta zajmowała by się jedynie logowaniem (scentralizowane logowanie). Wchodząc na dowolną stronę (przyjmijmy A) sprawdzane by było czy dany user jest zalogowany, jeśli nie to następowało by generowanie jakiegoś klucza i razem z nim następowało by przekierowanie do strony X gdzie user by się logował (o ile nie jest zalogowany). Po udanym logowaniu i przerobieniu klucza w odpowiedni sposób (szyfrowanie itp) następował by redirect z powrotem na stronę A wraz z kluczem, powodowalo by to sprawdzenie klucza i utworzenie sesji zalogowanego użytkownika. Po wejściu na stronę B mamy taki sam scenariusz tyle że użytkownik jest już zalogowany na X więc X odrazu odsyła przerobiony klucz, B robi sesję i wszystko działa.
Próbowałem to napisać czysto ideologicznie bo spotkałem sie z czymś podobnym ale nie chciałbym konkretnie na nic nakierowywać. Wydaje mi się jednak że ma to sporo plusow.
- centralny system logowania,
- bezpieczna wymiana informacji (klucze, szyfrowanie itd),
- dla zalogowanego użytkownika - szybkie działanie i wykrywanie stanu zalogowania,
- brak kombinowania z sesjami pomiędzy stronami a tworzenie ich dynamicznie w określonych przypadkach.