OpenID Connect Complex

openid-complex

Hat der erste Entwurf von OpenID Connect noch auf eine (übersichtliche) Seite gepasst, braucht der Draft der OpenID Foundation schon 7 unterschiedliche Spezifikationen.

Wieso müssen “Standard”-Organisationen wie das W3C (z.B. RDFa) oder der OpenID Foundation denn alles so unnötig kompliziert machen? Immerhin schafft es ja sogar Facebook seinen Authentifizierungsprozess auf einer Seite zu erklären. …und noch besser! Er lässt in drei Sätzen zusammenfassen:

  1. Hol dir über folgende URL einen Access-Token:
    https://www.facebook.com/dialog/oauth?
    client_id=YOUR_APP_ID&redirect_uri=YOUR_URL
  2. Häng ihn an folgende URL, auf den du den User weiterleitest:
    https://www.facebook.com/dialog/oauth?
    client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&
    scope=email,read_stream
  3. Fertsch!

…dazu kommen eine weitere Discovery-Variante die Webfinger, host-meta, XRD, XRDS oder YADIS komplett ignoriert und eine Identity-API die SREG oder AX noch nicht einmal ähnelt!

Mike Jones, einer der Hauptentwickler der Spezifikation, schreibt zwar:

The design philosophy behind OpenID Connect is “make simple things simple and make complex things possible”.

Das ist aber nur die halbe Wahrheit. Webseitenbetreiber, die zukünftig einen OpenID Connect Login anbieten wollen, haben es in der Tat etwas einfacher, da sie sich auf die “Minimalanforderungen” konzentrieren können. Seiten die einen OpenID Connect Provider stellen wollen haben aber folgendes Problem:

Authorization Requests can follow one of two paths; the Implicit Flow or the Authorization Code Flow. [...]
The OpenID Connect Basic Client profile only documents Clients using the Implicit Flow. OpenID Providers MUST support both flows. [...]

Damit begeht die OpenID Foundation wieder den gleichen Fehler wie bei OpenID 2.0. Am Schluss gibt es so viele unterschiedliche und halbfertige Implemenrierungen, dass man wieder auf SaaS-Dienste wie Janrain oder Gigaya zurückgreifen muss. Wozu braucht es dann noch einen “Standard”?

Warum denn immer 1000 Alternativen anbieten? Bei Facebook klappts ja auch ohne…

W3C Workshop on Identity in the Browser

Das W3C startet einen Identity in the Browser Workshop:

As the Web becomes increasingly a focal point for economic and social activity, there is an urgent need for trustworthy, widely-applicable digital identity management. This includes the need for authentication and authorization to work across multiple web-sites, enterprises, devices, and browsers in a uniform and easy-to-use manner.

Leider scheint Chris Messina nicht dabei zu sein… mir hat seine damalige Konzeptstudie sehr gut gefallen!

OpenWeb-Notizen: Own Your Data, HTML5, DataPortability

Own Your Data

Am Tag als delicious starb machten sich alle (zu recht) sorgen um ihre Bookmarks und es entfachte eine kleine Diskussion unter Geeks, wo denn die eigenen Daten am sichersten wären: Jeremy Keith verwaltet seine Bookmarks nun selbst und schickt nur Kopien an delicious & Co., Tantek Celik tweetet auf seinem eigenen Webspace und sendet nur eine Kopie an Twitter, …
Früher hatte man seine Daten in Sozialen Netzen und benutzte APIs um sie in die Sidebar des eigenen Blogs zu bekommen und jetzt läuft alles andersrum?

» Own Your Data

HTML5 und so

HTML5 heißt jetzt nur noch HTML und zur Feier der Umbenennung spendiert das W3C ein neues HTML5 Logo :) Großartig!

» HTML is the new HTML5
» W3C Introduces an HTML5 Logo

…außerdem wurden die Working Drafts von RDFa 1.1 und Microdata angepasst:

» Eight HTML5 Drafts Updated

Steering Committee

Die DataPortability Org. hat die neuen Chefs gewählt und bekannt gegeben… Mr. Topf is leider raus :(

» 2011 Steering Committee Election Results

OpenWeb-Notizen: Contacts in the Browser, Open Web Apps, PubSubJubhub, FederatedSocialWebCharter

Neue Version von “Contacts in the Browser”
Contacts in the Browser kann jetzt auch OAuth:

Where possible, Contacts now uses the industry-standard OAuth login mechanism to access websites. You will need to re-connect your browser to your services once to set it up.

» Contacts in the Browser 0.4 released

Mozillas “Prototype of an Open Web App Ecosystem”
Und nochmal Firefox: Mozilla arbeitet an der Verschmelzung von Webservices und dem Browser:

Apps built using HTML/CSS/JavaScript that work both on computers and mobile phones, have many of the characteristics that users find compelling about native apps and provide developers with open and flexible distribution options.

» Prototype of an Open Web App Ecosystem

PubSubJubhub
PubSubHubBub mit JavaScript abonnieren:

A little web service that allows you to subscribe to PubSubHubbub feeds from Javascript!

» PubSubJubhub

W3Cs FederatedSocialWebCharter
Das W3C will jetzt auch im OpenWeb mit mischen und ruft das (oder den) FederatedSocialWebCharter ins leben:

The mission of the Federated Social Web Incubator Group is to provide a set of community-driven specifications and a test-case suite for a federated social web.

» FederatedSocialWebCharter

OpenWeb-Notizen: PseudoID, Contacts API, Microformats

Google PseudoID
Google arbeitet an einem Projekt namens “PseudoID”, einer Art Privacy Enhancement für OpenID & Co.

» PseudoID: Enhancing Privacy for Federated Login

Contacts API Draft
Das W3C arbeitet gerade an einem “unified address book” welches alle Adressbücher eines Users vereint und dieses über eine API auch wieder für dritte zugänglich macht.

Every operating system and a large number of web-based service providers have different ways of representing address book information. [...] This specification defines the concept of a user’s unified address book – where address book data may be sourced from a plurality of sources – both online and locally. This specification then defines the interfaces on which 3rd party applications can access a user’s unified address book; with explicit user permission and filtering.

Hört sich ein wenig nach Synaptic bzw. Fedarated bzw. Distributed bzw. Decentralized Web an…

» Contacts API

CORS, Scraping, and Microformats
Michaels Mahemoff beschreibt wie man mit Hilfe von Cross-Origin Resource Sharing und Microformats das Web zu einer einzigen API machen könnte.

Cross-Origin Resource Sharing makes it possible to do arbitrary calls from a web page to any server, if the server consents. It’s a typical HTML5 play: We could do similar things before, but they were with hacks like JSONP. Cross-Origin Resource Sharing lets us can achieve more and do it cleanly.

Nicht ganz unbedenklich… aber definitiv ein interessanter Gedankengang!

via snirgel

» CORS, Scraping, and Microformats
» Cross-Origin Resource Sharing

OpenWeb-Notizen: W3C, UfXtract, WebID, OExchange

Das W3C und das Open Web
Das World Wide Web Consortium will sich in Zukunft nicht mehr ausschließlich auf Webstandards konzentrieren, sondern einen “attraktiven Platz” für offene Standards aller Art schaffen. Beispielhaft erwähnte Formate sind z.B. OStatus (Salmon Protocol, ActivityStreams, Pubsubhubub, …), OneSocialWeb, OExchange, WebFinger uvm.

» Making W3C the Place for New Web Standards
» Wiki-Seite

UfXtract jetzt Open Source
Glenn Jones hat den Quellcode seines Microformats-Parsers UfXtract veröffentlicht.

UfXtract is a fast and easy to use .Net microformats parser. With a few lines of code you can load and parse microformats from Urls or HTML strings. You can then extract the data directly in .Net or convert it into JSON, JSON-P or XML.

» GitHub Repository
» ufXtract Webservice

Aus foaf+ssl wird WebID
Die OpenID Community hat ja bereits erkannt dass der Otto-Normal-User einige Probleme mit URLs als Identifier hat. Das scheint das W3C aber nicht weiter zu stören.

A Web ID is an “Identifier” (an “HTTP URI” in fact), for Entity “You” [...] It looks like a URL and feels like a URL, but isn’t solely a URL, due to the inherent Identity/Access duality of HTTP scheme URIs.

Hört sich simpel an ;)

» A Web ID
» OpenWeb-Podcast: Episode 25 – FoaF+SSL

AddThis baut ausschließlich auf OExchange
AddThis integriert in Zukunft nur noch Dienste die das OExchange-Protokoll unterstützen. Mal schau’n wie konsequent sie sind ;)

Today, we’ve released a new workflow for submitting new services (i.e. social networks, online communities, etc) to the AddThis Service Directory that requires all new services support the sharing protocol OExchange.

» OExchange Support Now Required for New Service Submission
» OExchange Submission Flow

Firefox HTML Validator mit RDFa – Support

Nachdem sich Benjamin Nowack gestern (via twitter) noch gefragt hat ob es möglich ist, einem Firefox-HTML-Validator RDFa beizubringen…

wondering if the FF HTML Validator extension could be hacked to support RDFa. Basic QA is a bit too complicated with only the w3.org checker

…hat er ihn heute auf seiner Webseite veröffentlicht :)

Benjamin Nowacks angepasster Validator basiert auf der HTML Validator Extension for Firefox von Marc Gueury und funktioniert leider vorerst nur Windows.

Zum Download

Weitere sehr interessante Projekte von Herrn Nowack die man sich auch unbedingt anschauen sollte:

  • ARC – Easy RDF and SPARQL for LAMP systems
  • SPARQLBot – Your Semantic Web Command Line

Microformats Profile URIs

Um auf die im HTML-Quellcode verwendeten Microformats hinweisen zu können, wurden vom Microformats-Team jetzt einheitliche Profile URIs veröffentlicht. Berücksichtigt wurden alle non-draft Microformats (Stand: März 2008) ausgenommen XOXO und XMDP:

Specification Profile(s)
geo http://purl.org/uF/geo/0.9/
hAtom http://purl.org/uF/hAtom/0.1/
hCalendar http://purl.org/uF/hCalendar/1.0/
hCard http://www.w3.org/2006/03/hcard or http://purl.org/uF/hCard/1.0/
hResume http://microformats.org/wiki/hresume-profile
rel-license http://purl.org/uF/rel-license/1.0/
rel-nofollow http://purl.org/uF/rel-nofollow/1.0/
rel-tag http://purl.org/uF/rel-tag/1.0/
VoteLinks http://purl.org/uF/VoteLinks/1.0/
XFN http://gmpg.org/xfn/11

Eine komplette Übersicht findet man auch über purl.org/uF/2008/03/ oder im Microformats Wiki.

Diese URIs können, gemäß der W3C namespace policy <head /> der HTML Datei angegeben werden. Beispiel:

<head profile="http://www.ietf.org/rfc/rfc2731.txt http://www.w3.org/2006/03/hcard http://purl.org/uF/hAtom/0.1/">

Quelle: ‘This Week in Microformats’ für März.