Confruntarea cu sisteme multiple de conectare (Facebook Connect, Cont Google și altele)

voturi
3

Dacă doriți să permiteți utilizatorilor site-ului dvs. pentru a putea conecta cu Facebook Connect, Cont Google, etc, cum vă proiectați baza de date, astfel încât acestea sunt toate integrate?

Întrebat 24/06/2009 la 00:46
sursa de către utilizator
În alte limbi...                            


3 răspunsuri

voturi
2

Am sugerăm să utilizați un tabel de Conturi pentru a stoca datele contului locale, care ar fi apoi legate de o masă AthenticationMethods sau un tabel credențiale în ați ține detaliile legate de autentificare externe. Acest lucru permite site-ul dvs. și complexitatea sa de a fi legate de Conturi și procesul de autentificare pentru a frumos abstracte diferitele forme de autentificare pe care le-ați putea sprijini. Având în vedere că fiecare metodă de autentificare pot avea diferite niveluri de complexitate am sugerăm uita la diferite API-uri și corelarea cruce-le pe toate pentru a găsi asemănări comune. Mai important, veți dori să localizați în cazul în care acestea sunt diferite, astfel încât tabelul pe care scrisorile de acreditare se pot ocupa diferite biți de date pe care fiecare API-ar putea requrie. Nu uitați să includă OpenID!

Publicat 24/06/2009 la 01:16
sursa de către utilizator

voturi
0

Eu folosesc două câmpuri din contul sau de utilizator masa mea locală. Unul se numește "externalSystemId" (TINYINT), iar celălalt este "Codul de utilizator extern" (DOUBLE). Am niște constante de cod care definesc diferitele valori externalSystemId, adică. EXTERNAL_SYSTEM_FACEBOOK = 1, EXTERNAL_SYSTEM_OPENID = 2, etc este, desigur, extern s-a ID-ul utilizatorului de la acest sistem.

În timp ce manipularea unui obiect de utilizator în codul meu, pot determina cu ușurință ce sistem un utilizator este de la, și încărcați mecanismele de cod corespunzătoare pentru a te autentifica sau pentru a afișa ceva care este adecvat sistem, bazat pe externalSystemId.

Rețineți că ați putea dori să utilizați un tabel de baze de date pentru a stoca înregistrări de sisteme externe, mai degrabă decât constante de cod, în funcție de cât de multe aveți de gând să se ocupe cu și dacă aveți nevoie de o grămadă de informații suplimentare despre sistem.

Publicat 24/06/2009 la 01:31
sursa de către utilizator

voturi
0

Sunteți sigur că doriți să stocați alte informații decât „conectare“: „parola“? Vă recomandăm să aveți o enumerare pentru economie de conectare care sistemul utilizatorul vine de la.

Publicat 12/08/2009 la 14:25
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more