Introduzione a OpenID

Post on 01-Nov-2014

3,011 views 1 download

Tags:

description

 

transcript

Better Software - © 2009 Claudio Cicali

Claudio Cicali <claudio@cicali.org>

http://openideurope.eu

http://openid.it

http://claudio.cicali.name

Una introduzione a OpenID

Better Software - © 2009 Claudio Cicali

I l problema

✔ Molti siti

✔ Molte registrazioni

✔ Troppi account

Better Software - © 2009 Claudio Cicali

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

Better Software - © 2009 Claudio Cicali

La soluzione?

Un'unica registrazione

per

accedere a qualsiasi sito

(OK, non proprio qualsiasi)

Better Software - © 2009 Claudio Cicali

OpenID

Nasce con l'intento di fornire

la base per la realizzazione di un sistema

Single Sign On

orientato ai servizi web based

Better Software - © 2009 Claudio Cicali

Obiett ivi✔ 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

Better Software - © 2009 Claudio Cicali

Data

servers

Single Sign On central izzato

Digital Identity Provider

Servizio A

Servizio B

Servizio C

Better Software - © 2009 Claudio Cicali

Identity

provider

Identity

provider

Identity

provider

Single Sign On decentral izzato

Servizio A

Servizio B

Better Software - © 2009 Claudio Cicali

Soluzioni central izzate

✔ Microsoft PASSPORT

✔ Yahoo! BBAUTH

✔ Google Account

✔ Facebook Connect

Better Software - © 2009 Claudio Cicali

OpenID

The OpenID system was originally developed in May 2005 by

Brad Fitzpatr ick of L iveJournal, 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 specs@openid.net.

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

Better Software - © 2009 Claudio Cicali

OK, proviamolo!

Ma cosa mi serve?

✔ Un OpenID provider

✔ Un identificativo personale

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

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)

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à!

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

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

Better Software - © 2009 Claudio Cicali

Un esempio: step 1

Better Software - © 2009 Claudio Cicali

Un esempio: step 2

Better Software - © 2009 Claudio Cicali

Un esempio: step 3

Better Software - © 2009 Claudio Cicali

Un esempio: step 4

Better Software - © 2009 Claudio Cicali

Step 1

Step 2

Step 3

Step 4

Better Software - © 2009 Claudio Cicali

Step 1

Step 2

(Magic happens...)

Better Software - © 2009 Claudio Cicali

Responsabil i tà

del Provider

* Detiene i tuoi dati

* Protegge i tuoi dati

* Fornisce i tuoi dati

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!)

Better Software - © 2009 Claudio Cicali

Good news

Probabilmente sei già in possesso di un OpenID!

Better Software - © 2009 Claudio Cicali

http://me.yahoo.com/username

http://fl ickr.com/photos/username

http://username.wordpress.com

http://username.l ivejournal.com

http://username.myvirgi l io. i t

http://username.blogspot.com

http://id.bloglines.com

Per caso uti l izzi . . . ?

Better Software - © 2009 Claudio Cicali

Provider ad hoc

http://myopenid.com

http://claimid.com

http://myid.net

http://certifi.ca

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.cical i .myopenid.com/">

</head>

<body>

...

Meccanismo di delega

http://claudio.cicali.name

http://claudio.cicali.myopenid.com

Better Software - © 2009 Claudio Cicali

Profi lazione

SREG, Simple Registration

oppure

Attribute Exchange

È possibile attraverso l'uso di un'estensione

Better Software - © 2009 Claudio Cicali

openid.sreg.nickname

openid.sreg.email

openid.sreg.fullname

openid.sreg.dob

openid.sreg.gender

openid.sreg.postcode

openid.sreg.country

openid.sreg.language

openid.sreg.t imezone

openid.sreg.required

openid.sreg.optional

Simple Registrat ion

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

Better Software - © 2009 Claudio Cicali

OpenID

What is not

✔ Non è un trusting system

✔ Non è un sistema federato

✔ Non è un sistema di autorizzazione