Client Web e-mail: come gestire le credenziali

0

Sto pensando di creare un client web di posta elettronica che possa essere eseguito sul mio server come progetto parallelo. Gli indirizzi del server devono essere configurati sul lato server.

Più account dovrebbero essere in grado di accedere alle loro e-mail attraverso il client.

Come vedo, per POP / IMAP / SMTP le credenziali devono essere inviate con ogni richiesta, quindi ho bisogno di memorizzarle da qualche parte.

Qual è il modo più sicuro per farlo?

    
posta Dominik G 10.06.2018 - 12:00
fonte

1 risposta

1

Poiché il tuo client di posta elettronica è solo un front-end per alcuni account di posta elettronica esistenti, puoi semplicemente utilizzare le informazioni di accesso IMAP / POP come informazioni di accesso per il tuo client di posta elettronica. In questo caso non è necessario memorizzare le credenziali in modo permanente per recuperare la posta.

Poiché probabilmente hai bisogno di accedere alle credenziali mentre l'utente è ancora connesso alla tua applicazione di posta elettronica e non vuoi chiedere di nuovo all'utente, potresti includere le credenziali in forma crittografata all'interno del cookie di sessione, ad esempio come carico utile crittografato in un cookie basato su JWT.

Mentre molti (la maggior parte?) provider di posta hanno le stesse credenziali per IMAP / POP e per SMTP potrebbero essere diversi per alcuni provider. In questo caso è possibile crittografare le credenziali SMTP con una chiave derivata dalle credenziali IMAP / POP in modo che siano accessibili solo per qualcuno con le credenziali IMAP / POP già. È quindi possibile archiviare queste credenziali crittografate in un database o archiviarle solo sul lato client, ad esempio nella memoria locale del browser o in alcuni cookie con una scadenza molto lunga. La memorizzazione di queste informazioni crittografate sul lato client ha il vantaggio che non è necessario memorizzare alcuna informazione client sensibile sul lato server.

    
risposta data 10.06.2018 - 12:33
fonte

Leggi altre domande sui tag