26 messaggi dal 06 settembre 2002
Vorrei poter sfruttare il sistema della sicurezza offerto da ASP.NET Core, ho letto il capitolo 17 del libro ma confesso di essermi un po' perso!!

Diciamo che mi trovo in questa situazione:
- ho un'app per smartphone che deve utilizzare dei servizi RESTful sviluppati con ASP.NET Core WebAPI.

Questi sono i passaggi che l'app smartphone deve effettuare:
1. registrazione utente (primo accesso all'app)
Dovrebbe essere possibile registrarsi con dati personali (ad esempio nome, cognome, email, cellulare) o tramite social network (Facebook, Google, Twitter)

2. autenticazione automatica
Una volta registrato, i dati per l'autenticazione dovrebbero essere registrati lato smartphone e lato server, in modo che ad ogni riavvio dell'app venga effettuato il login in modo automatico.

3. accesso ai servizi RESTful.

In questo scenario, dove il login viene effettuato in modo invisibile lato smartphone, come riesco a sfruttare il sistema di sicurezza offerto da ASP.NET Core?

Quali sono i passaggi che dovrei effettuare?

Grazie per la disponibilita'
salvo
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Salvo,
c'è stato un caso simile al tuo qualche giorno fa. Leggi qui, si parla dell'esempio ui-and-webapi-auth allegato al libro che fa al caso tuo.
http://forum.aspitalia.com/forum/post/421154/Autenticazione-Client-Tramite-Web-Api-JWT.aspx

Nel caso dell'altro utente, l'applicazione client era WPF mentre nel tuo caso è un'applicazione mobile (Xamarin?). Comunque, la situazione è pressoché identica.
  • Nell'esempio, la registrazione avviene sul sito ma tu puoi predisporre un'action webapi per farla anche da app mobile;
  • Dopo essersi registrato, l'utente inserisce username e password che vengono scambiati con un token JWT. Il token può avere una durata qualsiasi (es. nel tuo caso sarà una scadenza molto lunga);
  • Memorizza il token sullo smartphone e riusalo quando poi l'utente riapre l'app. NON memorizzare username e password per motivi di sicurezza, infatti se all'utente gli fregano lo smartphone è possibile che qualche malintenzionato possa entrare in possesso della sua password, che magari aveva usato anche per l'account Paypal. Ti basta il token.
  • Aggiungi il token all'intestazione di ogni richiesta rivolta alla web api. L'utente risulterà autenticato grazie al supporto dell'autenticazione basata su token da parte di ASP.NET Core.


ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.