User Management

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Kiwi
  • Registratie: Juli 2012
  • Nu online

Kiwi

Gadgetfreak

Topicstarter
Als allereerste hoop ik dat dit op de goede plek staat, ik weet niet helemaal zeker of het hier thuis hoort.

Ik ben met een (voor nu nog) hobby projectje bezig waarbij ik een REST service bouw in Node.js.
Dit gaat tot nu toe redelijk goed, alleen kom ik nu bij de authenticatie.

Gebruikers moeten kunnen inloggen op een webpagina (PHP) of een Android app, om vervolgens berichten te kunnen plaatsen via de REST service.
Ik zoek hier eigenlijk een softwarepakket voor dat het user management voor zijn rekening neemt.
Ik wil dus gebruikers aan kunnen maken en beheren, en vervolgens moeten die gegevens gebruikt worden om in te kunnen loggen op de webpagina en Android app.

Ik was een aantal systemen tegen gekomen, waaronder UserFrosting, maar ik begrijp niet helemaal het doel van deze systemen. Ik kan binnen dat systeem wel een webpagina aanmaken waarmee ze de berichten kunnen plaatsen, maar hoe kan ik dan bijvoorbeeld gebruikers laten inloggen via een Android app? Is dit überhaupt mogelijk met soortgelijke systemen of moet ik iets anders zoeken?

Beste antwoord (via Kiwi op 31-07-2016 17:08)


  • Mebus
  • Registratie: September 2006
  • Laatst online: 19-09 13:37
Als je je REST systeem met NodeJS maakt kan je toch ook net zo goed de rest met NodeJS maken? PassportJS is makkelijk in gebruik en ondersteund aardig veel login opties. Gebruikers geef je gewoon een type mee zoals admin, mod, gebruiker etc.. Dit opslaan in een database en klaar.

Vervolgens kijk je met je routes of een gebruiker is ingelogd en welke type ze hebben om zo vervolgens te kijken of ze de acties GET, POST, PUT, DELETE mogen gebruiken. Dat is het simpelste wat je kan doen denk. En als je later bepaalde gebruikers individuele rechten wilt geven maak je daarvoor een extra tabel aan.

Doe nog wat leuks met Angular en je hebt ook nog eens een leuke SPA (Single Page App) :)

Als je wilt kan ik wat voorbeeld code geven. Passport ondersteunt ook gewoon local logins (gebruikersnaam/email en wachtwoord).

BABYMETAL LoL - Twitch

Alle reacties


Acties:
  • 0 Henk 'm!

  • Ventieldopje
  • Registratie: December 2005
  • Laatst online: 19:53

Ventieldopje

I'm not your pal, mate!

Zoek eens op termen als oAuth en JWT. Of misschien is het handig om met API keys te gaan werken?

www.maartendeboer.net
1D X | 5Ds | Zeiss Milvus 25, 50, 85 f/1.4 | Zeiss Otus 55 f/1.4 | Canon 200 f/1.8 | Canon 200 f/2 | Canon 300 f/2.8


Acties:
  • 0 Henk 'm!

  • TweakMDS
  • Registratie: Mei 2002
  • Laatst online: 30-09 09:17
Ik gebruik passport.js. Daarmee ondersteun ik ook met iets van 10 regels code google of facebook login.
Het aanmaken en rechten uitdelen op users heb ik zelf geschreven omdat dat vrij eenvoudig was. Als je puur SSO gebruikt kan je dat ook wel automatiseren.

Acties:
  • 0 Henk 'm!

  • Kiwi
  • Registratie: Juli 2012
  • Nu online

Kiwi

Gadgetfreak

Topicstarter
Maar als ik het goed begrijp kan je met die methodes niet gewoon gebruikersaccounts aanmaken toch?

UserFrosting is qua admin frontend ideaal, ik heb alleen geen idee hoe ik gebruikers vanuit een app zou kunnen laten inloggen.

Acties:
  • Beste antwoord
  • 0 Henk 'm!

  • Mebus
  • Registratie: September 2006
  • Laatst online: 19-09 13:37
Als je je REST systeem met NodeJS maakt kan je toch ook net zo goed de rest met NodeJS maken? PassportJS is makkelijk in gebruik en ondersteund aardig veel login opties. Gebruikers geef je gewoon een type mee zoals admin, mod, gebruiker etc.. Dit opslaan in een database en klaar.

Vervolgens kijk je met je routes of een gebruiker is ingelogd en welke type ze hebben om zo vervolgens te kijken of ze de acties GET, POST, PUT, DELETE mogen gebruiken. Dat is het simpelste wat je kan doen denk. En als je later bepaalde gebruikers individuele rechten wilt geven maak je daarvoor een extra tabel aan.

Doe nog wat leuks met Angular en je hebt ook nog eens een leuke SPA (Single Page App) :)

Als je wilt kan ik wat voorbeeld code geven. Passport ondersteunt ook gewoon local logins (gebruikersnaam/email en wachtwoord).

BABYMETAL LoL - Twitch


Acties:
  • 0 Henk 'm!

  • TD092854
  • Registratie: December 2012
  • Laatst online: 08-10 15:33
Al eens gekeken naar het LoopBack framework van Strongloop?
Deze heeft met een externe module ondersteuning voor Oauth2 en kan ook doen aan social login.

Verder is het easy peasy om gebruikers en rollen aan te maken welke zorgen voor de beveiliging van de REST endpoints.

Acties:
  • 0 Henk 'm!

  • Kiwi
  • Registratie: Juli 2012
  • Nu online

Kiwi

Gadgetfreak

Topicstarter
Een beetje een late reactie, maar ik ben ondertussen aan de slag gegaan met Passport.js, en dat voldoet tot nu toe prima aan mijn eisen.

Bedankt voor alle antwoorden!

Acties:
  • 0 Henk 'm!

  • Mebus
  • Registratie: September 2006
  • Laatst online: 19-09 13:37
Kiwi schreef op zondag 31 juli 2016 @ 17:08:
Een beetje een late reactie, maar ik ben ondertussen aan de slag gegaan met Passport.js, en dat voldoet tot nu toe prima aan mijn eisen.

Bedankt voor alle antwoorden!
Het opzetten van PassportJS kan misschien wat verwarrend zijn in het begin, maar zodra je het door hebt kan je snel en makkelijk custom code maken en alles inrichten naar je eigen wensen.

Succes!

BABYMETAL LoL - Twitch

Pagina: 1