Universeel login systeem

Status
Niet open voor verdere reacties.

Lapixx

Gebruiker
Lid geworden
2 mei 2008
Berichten
132
Hoi,

voor een groep van projecten waar ik aan werk is het handig om een centraal gebruikerssysteem te hebben, zodat je niet voor elke webpagina een nieuwe gebruiker moet registreren/verschillende gebruikersnamen moet gebruiken en alle andere leuke dingen die bij inloggen komen kijken.

Hoe dan ook, een systeem als openID doet ongeveer hetgeen dat ik wil bereiken: Een centrale DB met gebruikersnamen/wachtwoorden etc. die andere webdiensten kunnen gebruiken om in te loggen. Ik weet echter niet precies hoe dit werkt, vandaar dat ik dat hier wilde vragen.

Wat ik aanneem (en dat zijn puur speculaties) is dat er een loginsysteem van de centrale database wordt gebruikt door andere systemen, die vervolgens een sessie ID krijgen teruggestuurd. Het centrale loginsysteem houdt de sessies met bijbehorende username bij en op die manier kan het sessie ID gebruikt worden om acties uit te voeren op naam van een bepaalde gebruiker. Dat leek me redelijk voor de hand liggend, gezien een "normaal" login systeem ook op een dergelijke wijze werkt.

Wat ik NIET weet, is hoe dit precies realiseerbaar is. M.a.w.: Zie ik dingen (met betrekking tot beveiliging, sessies zijn te 'kapen', en als je een eigen sessie systeem maakt lijkt me die kans niet kleiner worden) over het hoofd? Hoe maak je een API-achtig systeem om vanaf andere websites data met de centrale server te kunnen uitwisselen? E.z.v.

Hopelijk kan iemand mij helpen,
Alvast bedankt.
 
Als voorbeeld een MySQL database op een server draaien met hierin alle gebruikersnamen en wachtwoorden (gecodeerd met sha1 en md5).
Maak vervolgens een login pagina en leg hier een verbinding vast met die database en wanneer die op een andere server draait een externe verbinding.
Dit is naar mijn weten een redelijk veilig systeem zo.
 
Dus als ik het goed begrijp is het veilig om de externe websites met behulp van MySQL zelf in de databases te komen? Lijkt me niet echt de bedoeling, en ik ben redelijk overtuigd dat OpenID / Facebook connect / LiveID en dergelijke dat ook niet doen.

Zoals ik al in mijn beginpost beschreef dacht ik eerder aan een bepaalde interface waarbij data uitgewisseld word en de MySQL tabel (of wat voor type van opslag ook word gebruikt) gewoon gescheiden is van externe websites.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan