[Hackmeeting] UAI protocol

Delete this message

Reply to this message
Author: Andrea Marchesini
Date:  
To: hackmeeting
Subject: [Hackmeeting] UAI protocol
Ciao a tutti,

Innanzitutto grazie a a tutti quelli hanno partecipato al dibattito su
UAI protocol e a tutti quelli che prima e dopo mi hanno fatto
osservazioni e dato suggerimenti.

_Per chi non fosse stato presente al seminario, al fondo di questa email
c'e' una micro descrizione del progetto_

UAI protocol e' sicuramente un progetto impegnativo. Non si tratta di un
progetto software ma di scrivere una specifica/raccomandazione, di
promuoverla infine di implementarla/farla implementare.

Un minimo di roadmap me la sono fatta e sarei molto contento di
condividerla con chi e' interessato. Ho gia' iniziato a spammare negli
ambienti che conosco: per lo + mozilla, ma presto altro.

Sto tirando su il sito e gli strumenti rudimentali per comunicare in
maniera adeguata. Il sito e' su ma c'e' molta documentazione da
scrivere, scenari da tracciare.

E c'e' anche una lista. Qui c'e' l'URI per iscriversi:

https://ssl.uaiprotocol.org/cgi-bin/mailman/listinfo/general

Alcune proposte uscite all'hackit erano di scrivere plugin per alcuni
progetti opensource web come wordpress, drupal e altro. Si puo' usare
quella lista per coordinarsi.

Per quanto, come dicevo, la roadmap un minimo ce l'ho in testa, ci sono
molti tasselli da discutere. Quindi figo se qualcuno si vuole tirare in
mezzo :)

_Cos'e' UAI_

UAI nasce da una necessita'. Sul web la maggior parte dei servizi/siti
ha un funzionamento simile:

1. l'utente si deve registrare inventandosi un username e una password e
consegnando informazioni "personali"
2. il servizio memorizza le informazioni sull'utente, i suoi giusti, le
sue preferenze
3. il servizio offre una funzionalita' che difficilmente si puo'
esportare al di fuori del servizio stesso.

Esempi: flickr sa le foto che faccio, le lega al mio username. Posso
portarmi le mie foto in un servizio qualsiasi? Ad esempio dentro al mio
blog? No. Posso portarmele in giro quando mi iscrivo ad un servizio? No.
A meno che non installato plugin, uso API, etc.
Diciamo: ogni servizio progetta i propri dati e non li condivide con
altri, manco con l'utente stesso.

In piu': e' possibile poter accedere ai servizi senza bisogno di
credenziali? Senza inventarsi un username? Senza una password? No.
Pure i sistemi + innovativi (webId, openId, etc) richiedono tutti un
ente di garanzia, quindi si sposta solo il problema altrove.

Questo problema e' noto, e la soluzione e' progettare qualcosa che
permetta la data portability.

UAI e' quindi un protocollo (a dire il vero probabilmente 2) che cerca
di dare una possibile soluzione a questo problema.
Semplificando molto: con UAI l'utente gestisce una o piu' identita' da
solo, e le affida ad un'applicazione (il browser) la quale si occupa di
gestirle e di condividerle ogni volta che l'utente vuole accedere a servizi.

Gestire da solo vuol dire che il browser permette la creazione di
identita' come se fosse una feature nativa del browser, e queste
identita' sono parte del processo di navigazione.

In base al browser scelto sara' questo a dirci quando questa identita'
potrebbe essere usata, lasciando totale controllo all'utente sempre.

Con UAI non esiste + il concetto di username/password. Il browser
comunica con i servizi, si scambiano le credenziali, seguendo cio' che
l'utente vuole.

Lato utente e' una semplificazione incredibile.
Lato servizi e' una cosa molto potente perche' si tratta di avere sempre
dati aggiornati. Ogni volta infatti che c'e' una modifica all'identita'
dell'utente sara' il browser a comunicarla al servizio senza che
l'utente debba fare niente.

Questi passaggi sommariamente descritti sono parte della specifica UAI
DRAFT che nel giro di alcuni giorni sara' uplodata sul sito tradotta.

Esiste poi un'altra bozza di specifica che e' quella riguardante la
condivisione di informazioni. E' un filo + complessa e non ne parlo in
questa email (anche perche' ancora molto soggetta a cambiamenti).

Questa email e' un papiro, quindi taglio corto. Presto ci saranno anche
alcune pagine di documentazione + ben scritte, in inglese sul sito. Il
resto, sta a chi ci sta dentro a imbarcarsi in questa cosa.

_UAI in pratica_

Aggiungo che, se qualcuno volesse anche solo provare questo protocollo,
ho implementato una demo sul sito www.uaiprotocol.org non c'e' un add-on
per firefox per la gestione di identita'.

Scaricatevi l'estensione sempre dal sito, createvi una o piu' identita',
loggatevi sul sito e vedrete che tutto il passaggio. L'estesnione e'
fatta per scopi anche di debug quindi puo' fornire molte molte
informazioni su tutti gli step che sono effettuati dal browser e dal
servizio.

C'e' anche una libreria php per l'implementazione di UAI lato servizio.
E' quella usata per la demo, e nel tarball trovate anche la demo stessa.

Un saluto,
b