Domyślnym założeniem większości modułów Drupal z uwierzytelnianiem jest to, że zastąpią one obecną konfigurację logowania własną.
Podejście to zostało dobrze opisane w http://drupal.org/node/114774#dist-auth i można je zobaczyć w tym, jak działa obecny moduł openid w rdzeniu Drupal.
Jeśli dobrze rozumiem twoje pytanie, chcesz zapewnić ludziom możliwość uwierzytelnienia z wielu różnych źródeł i umożliwić włączenie tych włączonych źródeł pod ich profilem użytkownika. Nie sądzę, aby istniał jeszcze moduł, który to robi, ponieważ większość modułów uwierzytelniania działa we własnej małej bańce, jak opisano powyżej.
Po krótkim spojrzeniu na OpenID Selector nie uzyskasz stamtąd dużego przebiegu, głównie jego implementacja i konfiguracja biblioteki jquery. Będziesz musiał napisać to od zera.
Główne elementy Twojego modułu to:
- Tabela bazy danych, która utrzymuje dane logowania powiązane z danym użytkownikiem.
- Jakiś schemat form_alter dla strony logowania, aby pokazać wszystkie dostępne opcje logowania określone przez właściciela strony (to zastąpi to, co obecnie robią poszczególne moduły)
- Strona administratora dla właściciela witryny do wyboru spośród dostępnych opcji.
Każda z tych opcji logowania będzie zapewniona przez osobny moduł contrib, więc być może będziesz musiał zmienić logikę pod kątem szczegółów, które znajdziesz w implementacji z tych modułów.
Dla mnie jest to ambitne przedsięwzięcie dotyczące konfigurowalnego modułu, który planujesz wypuścić, ale jeśli wybierzesz szybką i brudną wysoce spersonalizowaną / zakodowaną na stałe trasę dla pojedynczej witryny, nie powinno to zająć zbyt długo.
Inne miejsca, w których można zainspirować się działaniem modułów uwierzytelniających w Drupal, a potencjalnymi źródłami, które możesz chcieć podać, są FBOauth i Twitter .