Claudio Cicali - Openid

37
Better Software - © 2009 Claudio Cicali Claudio Cicali <[email protected]> http://openideurope.eu http://openid.it http://claudio.cicali.name Una introduzione a OpenID

description

Parte I: OpenID e tecnologie limitrofe: lo scenario presente e futuro Nella prima parte di questo intervento verrà presentata la tecnologia di autenticazione OpenID, per poi capire quali siano i suoi limiti e le sue potenzialità presenti e future in ambito personale e aziendale. Verranno anche presentate altre tecnologie del cosiddetto "open stack" e vedremo come queste siano usate da aziende come Google o Plaxo. Parte II: Le prime soluzioni OpenID italiane per il giornalismo e le telecomunicazioni - Overview delle soluzioni realizzate - OpenID Provider e OpenID Relying Party - Problematiche di integrazione tra sistemi precedenti di autenticazione - Soluzioni adottate da Asemantics per l'integrazione delle informazioni - Modelli di business relativi all'implemantazione e all'utilizzo di soluzioni OpenID - Esempi "creativi" di autenticazione: OpenID su Jabber, come sviluppare sistemi di autenticazione alternativi

Transcript of Claudio Cicali - Openid

Page 1: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Claudio Cicali <[email protected]>

http://openideurope.eu

http://openid.it

http://claudio.cicali.name

Una introduzione a OpenID

Page 2: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Il

problema Molti siti

Molte

registrazioni

Troppi account

Page 3: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Page 4: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Troppi account

Frustrante! (“bad user experience”)

Poca sicurezza (stessa password, poca igiene)

“Username non disponibile”

Ridondanza di informazioni di profilazione

Page 5: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

La

soluzione?Un'unica registrazione

per

accedere a qualsiasi sito

(OK, non proprio qualsiasi)

Page 6: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

OpenI

DNasce con l'intento di fornire

la base per la realizzazione di un sistema

Single Sign On

orientato ai servizi web based

Page 7: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Obietti

vi Non centralizzare dati e

servizi

Non reinventare la ruota

(build on ubiquitous

standards)

Estensibilità ed adattabilità

(il futuro è incerto)

Vendor neutral, no patent

Specifiche aperte

Filosofia UNIX

Page 8: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Data

servers

Single Sign On centralizzato

Digital Identity Provider

Servizio A

Servizio B

Servizio C

Page 9: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Identity

provider

Identity

provider

Identity

provider

Single Sign On decentralizzato

Servizio A

Servizio B

Page 10: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Soluzioni

centralizzate Microsoft

PASSPORT

Yahoo! BBAUTH

Google Account

Facebook Connect

Page 11: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

OpenID

The OpenID system was originally developed in May 2005 by

Brad Fitzpatrick of LiveJournal, though David Recordon

of VeriSign, Josh Hoyt of JanRain, and Dick Hardt of Sxip

are now co-authors.

Future OpenID specifications are being developed in a

meritocratic fashion on [email protected].

Page 12: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Relying partner (RP)

Il servizio web che voglio usare

OpenID Provider (OP)

L'ente che detiene la mia identità digitale

Terminologia

Page 13: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

OK, proviamolo!

Ma cosa mi serve?

Un OpenID provider

Un identificativo personale

OpenID

Page 14: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

La prima fase, una tantum

Scelgo un Provider

Mi registro presso di esso

Il provider mi fornisce un OpenID

OpenID

Page 15: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

OpenID

Un OpenID è un URI

http://claudio.cicali.myopenid.com

http://claudio.cicali.name

http://me.yahoo.com/claudio.cicali

(OpenID 2.0 prevede anche gli XRI, come =claudio)

Page 16: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Concetto di base

Autenticazione via OpenID

=

Dimostrare di possedere un URL

(claim & prove)

Corollario: non serve a dimostrare la propria identità!

Page 17: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Fasi successive, per ogni sito

Scelgo di usare OpenID per il login

Vengo portato dal mio provider

Mi “autentico” presso il provider

Vengo riportato sul sito originale

OpenID

Page 18: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

A proposito di standard:

L'identificativo OpenID è un

URL

Tutte le “fasi”sono

implementate usando

transazioni HTTP(S)

Il metodo di autenticazione

varia da provider a provider

OpenID

Page 19: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Un esempio: step 1

Page 20: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Un esempio: step 2

Page 21: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Un esempio: step 3

Page 22: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Un esempio: step 4

Page 23: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Step 1

Step 2

Step 3

Step 4

Page 24: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Step 1

Step 2

(Magic happens...)

Page 25: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Responsabilità

del Provider

* Detiene i tuoi dati

* Protegge i tuoi dati

* Fornisce i tuoi dati

Page 26: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Scegliere un Provider

Presenza di servizi accessori

(personas, site tracking...)

Affidabilità e sicurezza

Tipologia di autenticazione

(Puoi essere tu stesso il tuo provider!)

Page 27: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Good news

Probabilmente sei già in possesso di un OpenID!

Page 28: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

http://me.yahoo.com/username

http://flickr.com/photos/username

http://username.wordpress.com

http://username.livejournal.com

http://username.myvirgilio.it

http://username.blogspot.com

http://id.bloglines.com

Per caso utilizzi... ?

Page 29: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Provider ad hoc

http://myopenid.com

http://claimid.com

http://myid.net

http://certifi.ca

Page 30: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

<html>

<head>

<title>Claudio's personal hideout</title>

<link rel="openid2.provider openid.server" href="http://www.myopenid.com/server">

<link rel="openid2.local_id openid.delegate" href="http://claudio.cicali.myopenid.com/">

</head>

<body>

...

Meccanismo di delega

http://claudio.cicali.name

http://claudio.cicali.myopenid.com

Page 31: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Profilazione

SREG, Simple Registration

oppure

Attribute Exchange

È possibile attraverso l'uso di un'estensione

Page 32: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

openid.sreg.nickn

ame

openid.sreg.email

openid.sreg.fullna

me

openid.sreg.dob

openid.sreg.gend

er

openid.sreg.postc

ode

openid.sreg.count

ry

openid.sreg.langu

age

openid.sreg.timez

one

openid.sreg.required

openid.sreg.optional

Simple Registration

Page 33: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

Miti da sfatare

Ogni persona può avere un unico OpenID

Se il provider fallisce, la mia identità digitale è persa

OpenID è un sistema di trust

OpenID è debole perché mi possono rubare la password

Page 34: Claudio Cicali - Openid

Better Software - © 2009 Claudio Cicali

OpenID

What is not

Non è un trusting system

Non è un sistema federato

Non è un sistema di autorizzazione

Page 35: Claudio Cicali - Openid
Page 36: Claudio Cicali - Openid
Page 37: Claudio Cicali - Openid