Ik ben al even aan het zoeken naar een goed inlog script. De bedoeling is dat er ingelogd kan worden via social media en dat het ook mogelijk moet zijn om met verschillende gebruikers rollen te werken en dus verschillende access restrictions. Als het daarnaast ook nog mogelijk is om gewoon ter plekke een acount te maken met email en wachtwoord is dat een pre. Is er iemand die ervaring heeft met een systeem die dat kan? Zo ja welke en als je ervaring hebt met meerdere welke raad je aan en waarom?
Ikzelf heb wel goede ervaringen met Hybrid oAuth. Je kan hiermee nadat iemand ermee inlogt een eigen account aanmaken voor op je website, en daar website-restricties aan vast hangen. Via een koppeltabel kan je uiteraard bijhouden via welke providers (FB, Twitter Yahoo etc..) iemand een Single Sign-On mag doen.
De hele afhandeling in de database is iets dat je het best zelf kan integreren. Ze hebben we een mooi stukje voorbeeldcode als work-flow, maar dat moet je niet 1-op-1 implementeren.
Zo zie ik even snel dat ze per gebruikersaccount die er worden aangemaakt maar een enkele provider toestaan. Dat is natuurlijk niet netjes, en kan prima met meerdere providers en een genoemde koppeltabel.
Ik zou het bij voorkeur zelf bouwen, zodat je alle controle erover hebt. Het belangrijkste is dat je de wachtwoorden goed en veilig opslaat met [php]password_hash[/php] en [php]password_verify[/php]. Ook is het zeer verstandig om gebruik te maken van PHP-sessies.
Heb je dan toevallig iets van een basis login systeem met user roles waaruit ik kan vertrekken. Ken wel wat van PHP maar mijn authorisatie kennis in php is nog miniem.
Ikzelf heb een recentelijk gebouwd rechtensysteem een beetje voortgeborduurd op deze code (hoe oud het ook mag zijn, voor mij voldoet het met een kleine rewrite).
Je hebt hiermee roles die beschrijven wat een gebruiker/usergroup mag doen, en de rights met de rechten die ze hebben. Dit is vaak verdeeld in acties zoals het CRUD-systeem (Create, Read, Update,Delete).
Het beschreven rechtensysteem uit de genoemde thread is overigens bijzonder goed schaalbaar, hoewel ik het denk ik veel netter opnieuw had gedaan als ik daarvoor de tijd had.
Je kan natuurlijk ook met levels werken, waarbij elke level extra rechten kent. Een stuk simpeler, maar kent wel behoorlijke beperkingen vergeleken met een CRUD-gebaseerd rechtensysteem.
1 - Normale gebruikers
2 - Moderator
3 - Admin
4 - Superadmin
5 - Hoofdbeheerder