Posts tagged facebook

janrain-social-login

Autenticazione ‘social’ con Janrain !

2

Non è una novità: ogni volta che scopriamo un servizio interessante, eccoci a dover nuovamente cliccare sul bottone “Crea nuovo account“, per poi compilare lunghi form, verificare l’indirizzo email, ricordarsi la password.

Quanto è più comodo poter usare, per l’autenticazione, alcuni dei più famosi social network mondiali ? Beh, se non si tratta di servizi critici, poter chiedere la garanzia di un account ad un attore di terze parti come Google o Facebook è molto comodo: basta password da memorizzare, procedure di recupero da inventare, captcha…

C’è però un problemino: quale terza parte scegliamo di usare ? Beh, non è banale ma prendendo anche solo i 3 maggiori social network:

vediamo che ognuno ha la sua libreria ed i suoi metodi per l’autenticazione attraverso il protocollo OAuth.

A tal proposito ci viene in aiuto Janrain, un comodo servizio -gratuito per i piccoli siti- che funge da meta-autenticatore: sarà Janrain a presentare all’utente il servizio social con cui intende autenticarsi, dopodichè provvederà lui ad inviare al nostro server il token ed altre informazioni utili sull’utente.

Come si implementa sul proprio sito web ?

Innanzitutto si crea un account su Janrain.com e poi si crea una nuova “Applicazione”. A questo punto si decide se si preferisce il widget modale (apre un popup) oppure embedded (si tratta di un <div> da inserire nelle proprie pagine).

Il secondo passaggio, un pò più oneroso in termini di tempo, è la scelta dei providers di autenticazione e la creazione, per ognuno di essi, di una applicazione. Il percorso è guidato ed è comunque molto semplice da realizzare.

Dal lato client, è sufficente inserire il loro snipet javascript nelle pagine web dove l’utente può accedere all’autenticazione. Personalmente ho preferito copiare il codice in un nuovo file:

<script type='text/javascript' src='[path_to_js]/janrain.js'></script>

Importante ricordarsi di cambiare l’URL della pagina per il callback dell’autenticazione:

janrain.settings.tokenUrl = 'http://www.openitaly.net/janrain.php';

A questo punto passiamo alla parte più interessante del processo di single sign-on: la pagina di callback. Sul loro sito ci sono esempi i tutti i linguaggi di programmazione più comuni, compreso il PHP. Io ho preferito fare alcune prove e posso dare qualche informazione in più, con il var_dump di quanto restituiscono i tre provider succitati:

<?php

$rpx_api_key = '[API KEY DELL'APPLICAZIONE SU JANRAIN]'; $engage_pro = false; /* STEP 1: Extract token POST parameter */ $token = $_POST['token']; if(strlen($token) == 40) {//test the length of the token; it should be 40 characters     /* STEP 2: Use the token to make the auth_info API call */     $post_data = array('token'  => $token, 'apiKey' => $rpx_api_key, 'format' => 'json', 'extended' => 'true'); //Extended is not available to Basic.          $curl = curl_init();     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);     curl_setopt($curl, CURLOPT_URL, 'https://rpxnow.com/api/v2/auth_info');     curl_setopt($curl, CURLOPT_POST, true);     curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);     curl_setopt($curl, CURLOPT_HEADER, false);     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);     curl_setopt($curl, CURLOPT_FAILONERROR, true);     $result = curl_exec($curl);     if ($result == false) {     $mySession->sendMessage("cURL error: ".curl_error($curl)."(".curl_errno($curl).")",T_ERROR);     }     curl_close($curl);     $authInfoArray = json_decode($result, true);     if($authInfoArray['stat'] == 'ok') {     $profileArray = $authInfoArray["profile"]; //    var_dump($profileArray);     $identifier = CleanInput($profileArray["identifier"]);          $result = dbQuery("SELECT Username FROM Users WHERE providerId='$identifier';");          if(mysql_num_rows($result) == 1) {         $row = mysql_fetch_array($result, MYSQL_ASSOC);         $userName = stripslashes($row["Username"]);         if($userName) {             // Ok, questo utente e' registrato. Autentica la sessione e vai alla sua pagina principale ....         }     }     // Se l'utente non e' presente nel DB, richiedi autenticazione oppure l'iscrizione     if($profileArray["providerName"] == "Facebook") { /* FACEBOOK array(10) {     ["name"]=> array(3) {     ["givenName"]=> string(9) "Openitaly"     ["familyName"]=> string(3) "Net"     ["formatted"]=> string(13) "Openitaly Net"     }     ["photo"]=> string(60) "http://graph.facebook.com/100000185893913/picture?type=large"     ["address"]=> array(1) {     ["formatted"]=> string(12) "Siena, Italy"     }     ["displayName"]=> string(13) "Openitaly Net"     ["preferredUsername"]=> string(12) "OpenitalyNet"     ["url"]=> string(33) "http://www.facebook.com/openitaly"     ["gender"]=> string(4) ""     ["utcOffset"]=> string(5) "01:00"     ["providerName"]=> string(8) "Facebook"     ["identifier"]=> string(54) "http://www.facebook.com/profile.php?id=[ID]" } */          ....     } else if($profileArray["providerName"] == "Twitter") { /* TWITTER array(7) {     ["photo"]=> string(74) "http://a3.twimg.com/profile_images/1665796327/logoSquare128x128_normal.png"     ["name"]=> array(1) {     ["formatted"]=> string(9) "OpenItaly"     }     ["displayName"]=> string(9) "OpenItaly"     ["preferredUsername"]=> string(9) "OpenItaly"     ["url"]=> string(28) "http://twitter.com/OpenItaly"     ["providerName"]=> string(7) "Twitter"     ["identifier"]=> string(51) "http://twitter.com/account/profile?user_id=[ID]" } */ ....     } else if($profileArray["providerName"] == "Google") { /* GOOGLE array(9) {     ["googleUserId"]=> string(21) "[userId]"     ["name"]=>     array(3) {       ["givenName"]=>       string(7) "Michele"       ["familyName"]=>       string(7) "Pinassi"       ["formatted"]=>       string(15) "Michele Pinassi"     }     ["verifiedEmail"]=> string(25) "michele.pinassi@gmail.com"     ["displayName"]=> string(15) "michele.pinassi"     ["preferredUsername"]=> string(15) "michele.pinassi"     ["url"]=> string(53) "https://www.google.com/profiles/[ID]"     ["providerName"]=> string(6) "Google"     ["identifier"]=> string(53) "https://www.google.com/profiles/[ID]"     ["email"]=> string(25) "michele.pinassi@gmail.com" } */      ....     } else {      // Provider non riconosciuto. Che faccio ?     }   } else {    // Gracefully handle auth_info error.  Hook this into your native error handling system.     $mySession->sendMessage("Error while signing on: ".$authInfoArray['err']['msg'],T_ERROR);   } } else { // Gracefully handle the missing or malformed token.  Hook this into your native error handling system.    $mySession->sendMessage("Abort received while signing on. Wanna try again ?",T_ERROR); }

Come potete vedere, non tutti i provider restituiscono gli stessi dati. Tuttavia Janrain suggerisce di utilizzare identifier come identificatore univoco dell’utente.

Spero di esservi stato di aiuto e …buona autenticazione !

About Michele Pinassi

Nato a Siena nel 1978, dopo aver conseguito il diploma in "Elettronica e Telecomunicazioni" e la laurea in "Storia, Tradizione e Innovazione", attualmente è Responsabile del Sistema telefonico di Ateneo presso l'Università degli Studi di Siena. Utilizza quasi esclusivamente software libero. Dal 2006 si occupa di politica locale come attivista nel Movimento Siena 5 Stelle.

Screenshot v0.1.0

SquidTL 0.1.0

0

Ho appena rilasciato, dopo due giorni di testing sul proxy della Sala di Lettura “Chiesa della Rosa”, la versione stabile (si spera !) di SquidTL.

Screenshot v0.1.0Perchè SquidTL ?

Siete il gestore della intranet del Vs ufficio/azienda. Molti colleghi passano le giornate su Facebook o sui siti di notizie sportive. Il vs capo è preoccupato della produttività e delle perdite economiche causate dalla perdita di tempo dei Suoi dipendenti. Tuttavia non vuole scatenare la rivolta dei sindacati e le proteste di chi pensa che rilassarsi ogni tanto e distrarsi dal lavoro sia un diritto. Non potete semplicemente bloccare Facebook o Corriere dello Sport. Cosa fate ?

Pensate alla possibilità di non bloccare Facebook ai Vs utenti ma di limitarne l’uso. Potete accedere a Facebook, controllare la posta, rispondere alle notifiche ma…se esagerate…il sistema vi blocca per n minuti.

E questo potete farlo sia per un dominio ma anche per una lista di domini (bloccare i siti porno, ad esempio). Potete farlo specificando regole diverse per contesto (tot regole per l’Ufficio Amministrazione, altre per la Direzione, altre ancora per il reparto progettazione…) e gruppi di utenti diversi.

Potete monitorare il traffico di tutti i Vs utenti -chi, quando e da quale IP- comodamente via web.

Potete gestire account temporanei, bloccare temporaneamente utenti che violano le policy aziendali, controllare quali sono i siti web più visitati.

Come funziona SquidTL ?

SquidTL utilizza il meccanismo degli url_redirector di squid, un fantastico software per realizzare proxy web. Riceve ed analizza tutti gli accessi al web che transitano attraverso il proxy, decidendo se permetterlo oppure no.

SquidTL si basa fortemente su MySQL e PHP (per la GUI) ed il demone è sviluppato in C per la massima velocità ed affidabilità.

L’installazione è stata semplificata al massimo e si compone di una parte web (la GUI di gestione sviluppata in PHP), un dabatase (su MySQL) ed il demone in C.

L’interfaccia di gestione è stata creata pensando sia alla comodità di uso ma anche alla gradevolezza: utilizza jQuery ed i CSS per una grafica efficace ed accativante.

Vorrei provarlo ma…

SquidTL è software libero: non ha costi di licenza e viene distribuito in codice sorgente. Tuttavia mi rendo conto che può non essere semplice mettere a regime un proxy senza esperienza. Se desiderate provarlo nella Vs azienda sono a Vs disposizione per consulenza, messa in opera e gestione remota del sistema.

About Michele Pinassi

Nato a Siena nel 1978, dopo aver conseguito il diploma in "Elettronica e Telecomunicazioni" e la laurea in "Storia, Tradizione e Innovazione", attualmente è Responsabile del Sistema telefonico di Ateneo presso l'Università degli Studi di Siena. Utilizza quasi esclusivamente software libero. Dal 2006 si occupa di politica locale come attivista nel Movimento Siena 5 Stelle.

Social Networks: bloccare o permettere ? Meglio limitare !

1

Da alcuni studi, sembra che l’uso di Facebook sul posto di lavoro diminuisca la produttività di almeno l’1,5% e che il costo dei social network (LinkedIn, Twitter, Facebook) sia una bella cifra:

Morse PLC, una società specializzata in servizi IT, ha condotto lo studio su 1.460 impiegati inglesi, scoprendo che il 57% di loro accede ai siti di social networking in ufficio per motivi personali. La società ha calcolato che la mancata produttività di questi dipendenti costa alle imprese del Regno Unito qualcosa come 2,25 miliardi di dollari all’anno.

Fonte: ComputerWorld

Da una parte ci sono i dipendenti, che reclamano il loro diritto ad informarsi, dall’altra i datori di lavoro che vorrebbero dipendenti concentrati più sul lavoro che sulle chiacchere. Penso che tutti e due abbiano ragione: se da un lato è giusto dedicarsi al lavoro, dall’altro è anche vero che una pausa caffè (magari su Facebook) non ha mai ucciso nessuno !

Come si può, però, limitare l’uso dei Social networks (ma anche il porno, ad esempio, o la lettura quotidiani on-line…) ad una pausa caffè che non si trasformi nell’intera mattinata ?

La risposta è un proxy con SquidTL:

SquidTL is a software created for administrators that want to limit usage of particular web sites. Because HTTP is a stateless protocol, it’s very difficulty to calculate the right amount of visits by an user, so SquidTL check the amount of connections originated by each proxy user.

SquidTL è un software opensource, sviluppato dal sottoscritto, che si preoccupa di limitare -o impedire- l’uso di specifici siti web. Consultando il workflow si capisce come il prodotto sia estremamente flessibile e potente:

Ogni regola creata (che può essere un limite od un blocco) viene assegnata ad uno o più gruppi di utenti. Ogni regola afferisce anche ad un periodo di tempo specifico (può essere 24/7 oppure solo ore di lavoro, solo in pausa pranzo, etc etc) permettendo una maggiore flessibilità nel definire i momenti di validità (su base settimanale) delle regole.

Gli utenti sono riconosciuti secondo IP o login (SquidTL non si occupa di autenticare l’utente ma si può configurare Squid perchè esegua l’autenticazione) e vengono assegnati a gruppi, per facilitarne la gestione.

Il tutto viene gestito attraverso una comoda e pratica interfaccia web sviluppata in PHP e la quasi totalità delle impostazioni viene applicata in tempo reale: tutto il sistema è fortemente basato su MySQL.

I requisiti di sistema necessari sono veramente esigui: è sufficente un PC di media potenza (Pentium III 800Mhz) con almeno 1GByte di spazio libero (tra DB MySQL, Log, liste…) e 256MByte di RAM, dove installare una distribuzione GNU/Linux (SquidTL è stato testato con successo su Slackware, Debian ed Ubuntu) con i seguenti pacchetti software: Apache HTTP Server, MySQL, PHP, Squid.

Sei un’azienda interessata ad una prova del prodotto ? Contattami senza impegno per maggiori informazioni !

About Michele Pinassi

Nato a Siena nel 1978, dopo aver conseguito il diploma in "Elettronica e Telecomunicazioni" e la laurea in "Storia, Tradizione e Innovazione", attualmente è Responsabile del Sistema telefonico di Ateneo presso l'Università degli Studi di Siena. Utilizza quasi esclusivamente software libero. Dal 2006 si occupa di politica locale come attivista nel Movimento Siena 5 Stelle.

Non risolvo i problemi di Facebook !!!

11

Già da qualche tempo mi scrivono un sacco di utenti di Facebook convinti che possa risolvere i loro problemi. Dicono di aver visto da qualche parte che io risolvo i problemi inerenti a Facebook…ma non è vero !!!

Curioso comunque vedere i problemi degli utenti:

Antonella 19 ottobre alle ore 11.56
scusami, nn so se sto sbagliando a chiederti un aiuto segnalandoti un’anomalia tramite messaggio anziché nel sito e nn so neanche se il problema riscontrato sia inerente la tua sfera di conoscenze, quindi mi scuso per l’intrusione ma nn so cm fare…eventualmente se mi puoi dire a chi mi posso rivolgere.
Dal 28/09 nn riesco più a vedere un amico esattamente cm ci fosse stato un blocco, in relatà il blcco nn c’è stato, ne sn certa e cmq cn lui ci sentiamo via mail e mi dice che lo stesso problema l’hanno riscontrato dei suoi amici per i quali appunto lui risulta sparito. Da quello che gli è stato riferito pare si tratti da un aggiornamento della rete che richiede parecchi giorni. Ne sai qualcosa? Ma perché crea un blocco sl per qualcuno? E perché tanto tempo per gli aggiornamenti? Grazie e scusa ancora
Regina 18 ottobre alle ore 13.03
ciaoo scusa se arrivo kosi all’improvviso ma navigando su internet ho letto ke sei in grado di risolvere alkuni problemi inerenti a facebook…è da giorni ke provo a chattare vedo i nomi di amici online ma appena ci clikko su e si apre la finestra di chat mi appaie Ke la persona è offline quando invece non lo è…nn mi kapita soltanto con una sola ma con tutti gli amici….e nonostante io sono online loro nn riescono a vedermi in linea!nn so più come fare…potresti darmi un aiuto?sekonosci la soluzione…spero in una riposta al più presto…grazie mille,,,,regina!
Luisa 03 ottobre alle ore 19.44
sn giorni ke ormai i miei amici nn riescono a vedere il mio profilo/bacheca. Mi sai dire cosa è successo???
Io nn ho cambiato nulla, nè tanto meno ho toccato le cose che riguardano la Privacy…anzi risulta sempre che i miei amici posono leggere e scrivere.Grazie tante e…buona giornata! : )
Federica 16 ottobre alle ore 22.15
Ciao Michele, scusami se ti disturbno, ma tramite un motore di ricerca ho visto che tu ti occupi anche di risolvere i problemi su facebook.
Non perchè mi dà errore i continuo, per qualunque cosa, se provo ad aggiungere qualcuno agli amici, se vado in home, se provo a cambiare foto, spesso non mi si aggiorna, insomma tremila cose e non so come mai, no so più che fare :( (.
Mi puoi aiutare??Pleaseeeee
Te ne sarei veramente troppo grata.
Federica
Ps:Ovviamente ho provato ad aggiungerti agli amici, ma mi dà errore di connessione…booooh
Marco 01 ottobre alle ore 20.59
Salve Michele, è da ieri sera che non riesco a chattare con i miei contatti, mi dice ke non sono autorizzato, Ii piu se vado nella lista dei miei amici non vedo nessun nome scritto.. Non posso neanche postare sullla nelle bacheche. Mi potresti aiutare???

Ringrazio anticipatamente
Marco

Pasquale 03 ottobre alle ore 19.09
ciao scusa se ti disturbo, ma una mia cara amica non riesce ad entrare nel suo profilo, puoi dirmi come fare x risolvere il problema grazie
Loris 28 settembre alle ore 20.25
se ho capito lei dovrebbe mettermi a posto una cosa su facebook .il mio problema è questo:quando i miei amici mi cercano scrivendo in ricerca loris petronella nn esce la mia immagine; vorrei per tanto chiedergli se potrebbe mettermi in quella lista quando al gente mi cerca grz
Giovanni 17 settembre alle ore 22.30
ciao scusami ma ho un paio di problemi e spero ke tu possa darmi una mano a risolverli…è da un pò di tempo ke non riesco + a fare i test ed inoltre da poco non riesco + a condividere i video presi per esempio da youtube…puoi darmi una mano??grazie ed arrivederci…
Giancarlo 13 settembre alle ore 13.54
ciao ho un problema: appena passo dal mio profilo verso la home di facebook non mi compare mai niente!! se torno sul mio profilo tutto ok poi rifaccio home e niente!! cosa posso fare?? grazie mille
Barbara 10 settembre alle ore 21.26
Ciao non so se puoi aiutarmi ma da oggi non riesco più ad entrare nel mio profilo, cosa devo fare? Grazie!
Melina 07 settembre alle ore 13.00
scusami ho visto che sei esperto di fb, ho gli amici online ma appena clicco per aprire la finestra risultano ofline..lo fa con tutti e io risulto ofline anche se nn lo sono..mi sai dire qualcosa gentilmente? in ogni caso grazie e scusa per il disturbo.
p.s per favore rispondi direttamente a me sul mio accaunt grazie
Dario 06 settembre alle ore 15.15
ciao mikele!ho un grosso problema!mi hanno detto di kiedere a te xke sei il nmr 1 in questo campo!il mio problema è ke nn riesco a chattare più sulla chat di facebook…quando contatto qlcuno mi dice ke il contatto è offline ma in realtà nn è vero…mi potresti aiutare?
Elena 27 agosto alle ore 13.46
Ciao Michele, spero di non disturbare contattandoti direttamente qui.Volevo dirti che da ieri pomeriggio il mio profilo è scomparso, nel senso che i miei amici non possono entrare, ne vedere quello che io posto in bacheca n’è il mio nome o foto. Io invece entro tranquillamente e sembra tutto ok. Mi sai dire cosa può essere successo?
Non ho fatto nulla di strano e non credo mi abbiano bannato cosi per niente…help help!!
Rita 25 agosto alle ore 19.04
non riesco ad utilizzare la mia pagina di facebook da giorni..
dopo aver digitato la password si apre la pagina insieme a segnalazione errori .
Ho tentato tutto …che fare? Aiutoooooo
dimmi qualcosa
Alessandro 06 agosto alle ore 19.22
caro michele se visualizzi l’area discussioni dei problemi con facebook noterai che ultimamente io e altri nn riusciamo a connetterci con i nostri computer a facebook,o meglio riusciamo ad entrare,almeno per quanto mi riguarda,tramite un messaggio di posta,però se voglio visualizzare un altra pagina o visitare la home o andare semplicemente sul mio profilo nn posso…cosa dovrei fare…attendo una tua risposta,ti ringrazio
Fabio 04 agosto alle ore 17.48
non riesco più ad accedere a facebook.Quando faccio il login il computer mi dice errore in internet explorer,ma lo fa solo con facebook.Puoi aiutarmi?
Francesco 25 luglio alle ore 20.52
ciao , ho un problema con facebook , quando pubblico una foto o un video preso da youtube , questi sono visibili solo sul mio profilo e non sulla home , come mai? invece delle volte me li pubblica, ho provato ad entrare con l’account di mia sorella per vedere se le foto che pubblicavo me le inseriva , ma niente , sai come risolvere questo problema ? grazie ciao
Daniela 23 luglio alle ore 12.09
ciao michele, ho visto che risolvi i problemi…. o ci provi.

ciò che condivido…. lo vedo solo nel mio profilo e non sulla Home, perciò i miei amici non vedono nulla!
aiuto!!!!
grazie 1000

Giovanna 19 giugno alle ore 9.43
Ciao Michele,
ho cercato su google “problemi con fb” la prima cosa che appare sei tu.. spero non sia un problema scriverti.
Il mio problema è:
a fine maggio fb mi ha scritto dicendo che il mio account è stato disabilitato, perchè qualcun altro è riuscito ad entrarci confermando la password.
Io ho scritto diverse email a fb perchè continuavano ad arrivarmi email dal mio profilo…
Siccome non mi hanno mai risposto, e nel frattempo mi hanno aggiunto un paio di amici che non sento da una vita, ho pensato di iscrivermi di nuovo, usando la stessa email di prima, pensando che non avrei potuto… invece sono riuscita a creare un altro account!
Ora non so più come accedere all’altro account ma è ancora “esistente” e mi scrivono ancora li…
Mi sapresti aiutare?
Grazie mille!Giovanna
…ma ne ho tantissimi altri !!!

About Michele Pinassi

Nato a Siena nel 1978, dopo aver conseguito il diploma in "Elettronica e Telecomunicazioni" e la laurea in "Storia, Tradizione e Innovazione", attualmente è Responsabile del Sistema telefonico di Ateneo presso l'Università degli Studi di Siena. Utilizza quasi esclusivamente software libero. Dal 2006 si occupa di politica locale come attivista nel Movimento Siena 5 Stelle.

Go to Top