Date de publication du RFC : Mai 2015
Auteur(s) du RFC : P. Saint-Andre (Cisco System)
Chemin des normes
Réalisé dans le cadre du groupe de travail IETF appsawg
Première rédaction de cet article le 23 mai 2015
Hop, encore un nouveau plan
d'URI, le plan acct:
(pour
account) qui permet de désigner les informations
qu'on peut récupérer sur un compte
utilisateur. Désormais,
acct:stephane@seenthis.net
désignera donc mon
compte à SeenThis.
Ne vous fiez pas à la ressemblance syntaxique avec les adresses de
courrier : la
syntaxe est la même (nom-du-compte@nom-du-service) mais les
URI acct:
sont
indépendants du protocole d'accès. Dans l'exemple plus haut, SeenThis ne fournit pas de service de
courrier, mais
cela ne change rien à l'URI.
Le premier (et pour l'instant quasi-unique) demandeur de ces URI
est le protocole WebFinger (RFC 7033). WebFinger
permet d'accéder à des informations, via un protocole
REST, en utilisant comme identificateur un URI
qui, en pratique, est souvent un URI acct:
. La
version initiale de WebFinger utilisait uniquement des adresses de
courrier électronique. Avant le plan acct:
, les
plans les plus proches identifiaient toujours un protocole
particulier : le courrier pour les URI mailto:
(RFC 6068) ou
XMPP pour les xmpp:...
du
RFC 5122. Après moultes discussions au sein du
groupe de travail sur WebFinger entre les partisans de l'ancien
système (adresses de courrier seulement) et ceux d'un nouveau, fondé
sur les URI (eux-même divisés entre amateurs de
mailto:
et fanas de http:
),
le choix a été fait de créer ce nouveau plan. Comme indiqué, il a
l'avantage de ne pas supposer l'existence d'un protocole
particulier. Ainsi, mon compte Twitter est désormais
acct:bortzmeyer@twitter.com
et il n'implique pas
que Twitter fournisse du courrier ou de la messagerie
instantanée ou quoi que ce soit d'autre.
À noter qu'un URI acct:
identifie un compte,
que son titulaire soit un humain ou une organisation ou un
bot.
La section 4 fournit la définition rigoureuse de ces nouveaux
URI (la syntaxe formelle étant repoussée en section 7). Elle rappelle qu'ils servent à
l'identification et pas à
l'interaction (RFC 3986,
section 1.2.2). La partie gauche (à gauche du
@) est le nom du compte auprès d'un fournisseur
quelconque et la partie droite est un nom de
domaine de ce fournisseur. Donc,
acct:foobar@status.example.net
,
acct:user@example.com
ou
acct:hamlet@dk
sont tous des URI valides. Si un client WebFinger cherche de
l'information sur le premier de ces URI, il fera une requête
HTTP à status.example.net
:
GET /.well-known/webfinger?resource=acct%3Afoobar%40status.example.net HTTP/1.1
Si le nom du compte est une adresse de courrier (ce qui est
fréquent sur le Web d'aujourd'hui), il faudra convertir le @ en
caractères pour-cent. Par exemple, si le compte
juliet@capulet.example
existe chez le fournisseur
shoppingsite.example
, l'URI sera
acct:juliet%40capulet.example@shoppingsite.example
. Et
si on prend mon compte au RIPE-NCC,
bortzmeyer+ripe@nic.fr
, l'URI sera
acct:bortzmeyer%2Bripe%40nic.fr@ripe.net
.
C'est cet URI qui sera mis, par exemple, dans les requêtes
WebFinger.
La section 5 du RFC traite des problèmes de sécurité. On ne met
évidemment dans une réponse WebFinger que ce qu'on veut bien indiquer,
surtout si le client HTTP n'est pas authentifié. Mais il existe un
risque plus subtil : même si le client n'arrive pas à accéder aux
informations derrière l'URI acct:
, la seule
existence de cet URI peut indiquer que le compte existe et cela peut
donc être utile aux spammeurs et
autres nuisibles. Bref, même si les acct:
ne sont
que des URI, que des identificateurs, ils peuvent en dire trop.
La section 6, elle, se penche sur
l'internationalisation. Les URI
acct:
sont des URI comme les autres (RFC 3986) et peuvent donc contenir n'importe quel
caractère Unicode. Il faut simplement qu'ils
soient encodés en UTF-8 puis surencodés en
pour-cent. Ainsi, un compte stéphane
sur le
service example.com
pourra être représenté par
acct:st%C3%A9phane@example.com
. Quelques
restrictions toutefois :
IdentifierClass
.stéphane
sur le service
académie-française.fr
sera acct:st%C3%A9phane@xn--acadmie-franaise-npb1a.fr
.La section 7 de notre RFC contient le formulaire d'enregistrement
du nouveau plan (selon la procédure du RFC 4395), qui inclut la syntaxe formelle de ces URI, en
ABNF. acct:
est donc
désormais dans le registre officiel des URI.
Si vous voulez voir des exemples réels, le mieux est de regarder le monde WebFinger, par exemple les exemples dans mon article sur le RFC 7033.
L'importance de ce plan d'URL acct:
avait été
décrite dans un
article d'Eran Hammer de 2009 (c'est long, la
normalisation).
Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)
Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)