2016-05-13 18 views
8

Desidero creare l'applicazione Web che sarà basata sul frontend angularjs e sull'API Web ASP.NET. Ho bisogno di creare l'API sicura, ma non posso usare l'autenticazione basata su token sul server dell'azienda in cui verrà implementata questa applicazione web.È possibile utilizzare l'autenticazione basata su cookie con API Web ASP.NET e SPA?

È possibile utilizzare l'autenticazione basata su cookie per SPA e API Web ASP.NET?

Come è possibile configurare l'autenticazione basata su cookie sul progetto ASP.NET per questo scenario in cui dispongo delle API SPA e Web?

+0

Anche i token sono memorizzati nei cookie, è il modo più comune per mantenere una sessione. – Crowcoder

+6

@JahirulIslamBhuiyan Non è ironico che questa domanda sia il risultato di google numero 1? Il tuo commento non mi ha aiutato affatto. – Dan

risposta

6

L'autenticazione TokenBased è attualmente utilizzato in SPA sulla base di applicazioni API backend è di superare la limitazione di autenticazione cookiebased Ma dal momento che avete deciso di andare con esso quindi è possibile utilizzare OWIN cookieAuthentication middleware che farà il necessario. Here's an article showing how to configure il middleware di autenticazione dei cookie OWIN nel progetto Asp.net (non importa se si tratta dell'applicazione WebApi o MVC).

+1

Possiamo utilizzare l'autenticazione basata su cookie se SPA e ASP.NET Web API sono progetti diversi e si trovano su domini diversi? Ho più client, sarò in grado di utilizzare solo token bearer in questo caso? –

+0

grazie, lo stavo cercando da così tanto tempo –

+0

anche io l'autenticazione token è piena di limiti e durezza spedite: | anche sembra buggy e richiede un sacco di sforzi che non sono a conoscenza di ... – deadManN

-3

Per impostazione predefinita, quando un'applicazione Web API viene creata con Visual Studio, è necessario innanzitutto registrare l'utente e quindi effettuare il login. Quando si effettua l'accesso a /Token, il server restituisce il token di autenticazione che deve essere memorizzato nei cookie del browser.

Quando si desidera accedere al percorso autorizzato, è necessario inviare il token nell'intestazione.

Formato di esempio:

"Autorizzazione": "portatore 353A405CF2A34542A2D544E68E2C9265"

Le vostre azioni di percorso o il controller dovrebbero avere attributi [Authorize].

+7

Questo non tenta nemmeno di rispondere alla domanda in remoto. – Dan

Problemi correlati