Skip to content
This repository has been archived by the owner on Feb 12, 2021. It is now read-only.

Authentication and security improvements #18

Closed
jvdoorn opened this issue Jan 21, 2019 · 8 comments
Closed

Authentication and security improvements #18

jvdoorn opened this issue Jan 21, 2019 · 8 comments
Labels
beveiliging Het probleem heeft betrekking tot beveiliging suggestie Een willekeurige suggestie voor Delta

Comments

@jvdoorn
Copy link
Contributor

jvdoorn commented Jan 21, 2019

(node:67643) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'Id' of undefined
    at retrieveAccount (/Users/julian/Delta/node_modules/magister.js/lib/magister.js:559:38)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:67643) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)

Occasionally an error is thrown when authenticating, after refreshing a couple times it will go away. It should probably be looked into though.

@keesvv
Copy link
Collaborator

keesvv commented Jan 21, 2019

Ik heb hier even kort naar gekeken: als je probeert een verkeerde gebruikersnaam of een verkeerd wachtwoord op te geven, dit is de error die je dan krijgt:

(node:7659) UnhandledPromiseRejectionWarning: AuthError: Invalid username
    at Magister.login (/home/kees/Projects/Electron/Delta/node_modules/magister.js/lib/magister.js:600:13)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:7659) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)

Als je goed kijkt zie je dat jouw snippet een rejection id: 2 heeft en die van mij een rejection id: 1.

@keesvv
Copy link
Collaborator

keesvv commented Jan 21, 2019

Ik denk dat we hier try-catch blocks voor moeten maken, daar ga ik morgen wel naar kijken.

@jvdoorn
Copy link
Contributor Author

jvdoorn commented Jan 21, 2019

Ik ben er op het moment mee bezig dat wachtwoorden niet meer worden opgeslagen (in plain text). Zie deze commit. Het idee is om wellicht the token op te slaan en die te gebruiken voor authenticatie (als je wilt dat je wordt onthouden). Ik weet echter niet of dat gaat lukken.

@keesvv
Copy link
Collaborator

keesvv commented Jan 21, 2019

Het is altijd het proberen waard! 😄 Als MagisterJS het inloggen en genereren van een token ondersteunt, dan zou dat geweldig zijn, omdat tokens niet snel kunnen worden gereversed naar het originele password.

@jvdoorn jvdoorn changed the title UnhandledPromiseRejectionWarning Authentication and security improvements Jan 21, 2019
@jvdoorn
Copy link
Contributor Author

jvdoorn commented Jan 21, 2019

Ik ga kijken wat de conclusie van deze issue wordt. Mocht de token alleen maar voor korte tijd bruikbaar zijn kunnen we hem gebruiken voor logins kort na de eerste login.

In mijn branch heb ik het nu zo gedaan dat alleen je gebruikersnaam en wachtwoord worden opgeslagen. Het lijkt mij een kleine moeite als je bij iedere login je wachtwoord in moet voeren, zeker als dit de veiligheid verbeterd.

@lieuwex
Copy link

lieuwex commented Jan 21, 2019

FWIW (geen idee of het uberhaupt van nut is) bij simplyHomework heb ik het vroeger zo gedaan dat hij eerst de laatste token probeerde, en als dat mislukte het opnieuw probeerde met een wachtwoord/gebruikersnaam combo. Maar dit was meer vanwege optimalisatie redenen dan beveiliging (inloggen kost toch weer wat requests, en simplyHomework heeft geen concept van ingelogd of niet, het werkte op een wat hoger niveau dan dat)
https://github.com/simplyGits/simplyHomework/blob/develop/packages/magister-binding/magister-binding.js#L190

@keesvv
Copy link
Collaborator

keesvv commented Jan 28, 2019

Hoi @lieuwex , bedoel je dat je eerst een token probeert en als dat niet werkt, dat je dan de gebruiker opnieuw om zijn credentials vraagt?

@keesvv keesvv added suggestie Een willekeurige suggestie voor Delta beveiliging Het probleem heeft betrekking tot beveiliging labels Jan 28, 2019
@keesvv
Copy link
Collaborator

keesvv commented Jan 30, 2019

Hoi @argetan ! Ik heb zojuist je credentials-storage branch bekeken, en het ziet er goed uit! Voor mijn gevoel lijkt de authenticatie zelfs iets soepeler te lopen. Ik ga hem mergen als je het goed vindt, en dan sluit ik deze issue!

@keesvv keesvv closed this as completed Jan 30, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
beveiliging Het probleem heeft betrekking tot beveiliging suggestie Een willekeurige suggestie voor Delta
Projects
None yet
Development

No branches or pull requests

3 participants