ATTENZIONE: Questo sito impiega diversi tipi di cookies. Alla pagina MAGGIORI INFORMAZIONI è possibile avere informazioni aggiuntive. Cliccando su ACCETTO o continuando a navigare sul sito acconsenti al loro utilizzo.
<settembre 2021>
lunmarmergiovensabdom
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910
Immagini  

ASP.NET - Login con Facebook

Oggi è molto comodo demandare a provider di autenticazione esterni l'autenticazione (o login).
Il provider più diffuso, nonché quello che contiene il maggior numero di utenti già registrati è Facebook.
Vediamo come integrare in un sito web l'autenticazione di Facebook.

Cosa fare su Facebook

  • Registrare su Facebook una nuova applicazione, collegandosi al link https://developers.facebook.com/apps/
    • Selezionare il bottone "Aggiungi una nuova applicazione", e quindi selezionare l'opzione SITO WEB
    • Dare un nome univoco all'applicazione (suggerisco di chiamarla come il sito per il quale si sta configurando il servizio)
    • Compilate le informazioni richieste allo step successivo che sono: la vostra email e una categoria per l'applicazione
    • Una volta inserite queste info potete selezionare lo SKIP QUICK START e andare direttamente alla pagina delle impostazioni
    • Prendere nota di: ID APPLICAZIONE (Application ID), e CHIAVE SEGRETA (Secret key)
    • Nel campo DOMINI APPLICAZIONE inserite il dominio del vostro sito (ad esempio www.polipone.com)
    • Selezionate il pulsante AGGIUNGI PIATTAFORMA e scegliete SITO WEB
    • Nel campo URL DEL SITO inserite l'url completo del vostro sito, seguito da "&#39"  (ad esempio http://www.polipone.com/&#39)
   

Cosa fare su Visual Studio

  • Inserire nel web.config due nuovi app setting, che contengo rispettivamente l'ID APPLICAZIONE e la CHIAVE SEGRETA, ottenuti registrando l'applicazione su Facebook
  
      <appsettings>
        <add key="FacebookAppId" value="xxxxxxxxxxxx" />
        <add key="FacebookAppSecret" value="xxxxxxxxxxxxxxxxxxxxxxxxxx" />
      </appsettings>
  • Creare la seguente classe CFacebook nel progetto

   
 
  • Scegliete ora la pagina in cui volete inserire il link che chiamerete, ad esempio,  LOGIN CON FACEBOOK
  • Nel code behind di questa pagina, all'evento Page_Load, valorizzare l'url col metodo getUrlLogin della classe CFacebook.
         hlFacebookLogin.NavigateUrl = CFacebook.getUrlLogin("/pages/loginFacebook.aspx");
  • Il metodo precedente ha un parametro che deve essere valorizzato col il path assoluto della pagina che poi verrà richiamata da Facebook dopo il login, e alla quale Facebook passerà i dati dell'utente, che serviranno a noi per gestire la nostra logica applicativa.
  • A questo punto abbiamo una pagina che contiene il link "LOGIN CON FACEBOOK".
    • Quando l'utente lo seleziona viene reindirizzato a Facebook.
    • Se è la prima volta che accede dal nostro sito, Facebook chiederà il permesso all'utente di usare la nostra applicazione di Facebook.
    • Quindi, dopo che l'utente avrà accettato, Facebook reindirizzerà il browser alla pagina che abbiamo specificato prima (nel nostro esempio loginFacebook.aspx)
  • Pagina loginFacebook.aspx
    • Questa pagina avrà il seguente codice nell'evento Page_Load:

Un grazie particolare va a Nick Pinheiro

Notifiche