Re: [apps-discuss] Webfinger

"Paul E. Jones" <paulej@packetizer.com> Tue, 22 November 2011 18:54 UTC

Return-Path: <paulej@packetizer.com>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E564111E80A6 for <apps-discuss@ietfa.amsl.com>; Tue, 22 Nov 2011 10:54:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.815
X-Spam-Level:
X-Spam-Status: No, score=-1.815 tagged_above=-999 required=5 tests=[AWL=-0.637, BAYES_00=-2.599, HTML_MESSAGE=0.001, SARE_GIF_ATTACH=1.42]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id uJ0ScQLPDoDe for <apps-discuss@ietfa.amsl.com>; Tue, 22 Nov 2011 10:54:44 -0800 (PST)
Received: from dublin.packetizer.com (dublin.packetizer.com [75.101.130.125]) by ietfa.amsl.com (Postfix) with ESMTP id A5A6511E8090 for <apps-discuss@ietf.org>; Tue, 22 Nov 2011 10:54:43 -0800 (PST)
Received: from sydney (rrcs-98-101-148-48.midsouth.biz.rr.com [98.101.148.48]) (authenticated bits=0) by dublin.packetizer.com (8.14.5/8.14.5) with ESMTP id pAMIse8C013856 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 22 Nov 2011 13:54:41 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=packetizer.com; s=dublin; t=1321988081; bh=DxSQtjZzvC12DpMCTbCfAjLnBlwUlICnJn9pOpb57o8=; h=From:To:Cc:References:In-Reply-To:Subject:Date:Message-ID: MIME-Version:Content-Type; b=FrtNYx87JbVEPslOdy8xlLA7sLnVU+XAMYlM/LukCN65DrNsReMeaeKHh9ReLDfgr /4dHcUNE2YewmQMn51d8FQ9hKwC+xy2xCniGgrDufFMmsn92/M1I7xpKYNZk8VKuHz 4zbzMzUQZOJcl8yLB+YF6eqlxhyd7M+JK+nhL0Z0=
From: "Paul E. Jones" <paulej@packetizer.com>
To: "'Goix Laurent Walter'" <laurentwalter.goix@telecomitalia.it>, "'Eran Hammer-Lahav'" <eran@hueniverse.com>, <apps-discuss@ietf.org>
References: <032101cc9288$e3a06910$aae13b30$@packetizer.com> <90C41DD21FB7C64BB94121FBBC2E7234526735EDED@P3PW5EX1MB01.EX1.SECURESERVER.NET> <06b001cca865$1d9ccb80$58d66280$@packetizer.com> <90C41DD21FB7C64BB94121FBBC2E7234526735F00B@P3PW5EX1MB01.EX1.SECURESERVER.NET> <086001cca93b$f455cc90$dd0165b0$@packetizer.com> <90C41DD21FB7C64BB94121FBBC2E7234526735F0DD@P3PW5EX1MB01.EX1.SECURESERVER.NET> <A09A9E0A4B9C654E8672D1DC003633AE4057006772@GRFMBX704BA020.griffon.local>
In-Reply-To: <A09A9E0A4B9C654E8672D1DC003633AE4057006772@GRFMBX704BA020.griffon.local>
Date: Tue, 22 Nov 2011 13:54:35 -0500
Message-ID: <08dc01cca948$2e569f30$8b03dd90$@packetizer.com>
MIME-Version: 1.0
Content-Type: multipart/related; boundary="----=_NextPart_000_08DD_01CCA91E.45879C10"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQI/v0XgjFwdy9sXrXmTVWBMa/eIuQJBqnysAgBEW78CHWIk+QIu/EtFAjl3mf8CNMDi15RrLE+w
Content-Language: en-us
Cc: 'Joseph Smarr' <jsmarr@google.com>
Subject: Re: [apps-discuss] Webfinger
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Nov 2011 18:54:49 -0000

Walter,

 

Including the ‘resource’ parameter could remove the need to further process
the templates on the client side and to perform a second query for the
“lrdd” XRD/JRD document.  If the server implementation does not support the
“resource” parameter, then the client would have to go about it as it would
today.

 

I like the idea of reducing complexity on the client, but if resource is
optional, then we do not actually reduce the complexity at all.  It does
potentially reduce the time required to fetch the information by one
round-trip to the server.  Is that worth it?  Perhaps.  For most data, there
are three queries:

1)      host-meta

2)      LRDD

3)      Actual data sought (e.g., an avatar file)

 

Introducing “resource” means we do to queries:

1)      host-mesa?resource

2)      Actual data sought (e.g., an avatar file)

 

That sounds good for a single piece of information.  However, if the client
needs to perform 10 queries for 10 links found, then that one additional
step is little savings.  I’m on the fence over it.

 

Paul

 

From: Goix Laurent Walter [mailto:laurentwalter.goix@telecomitalia.it] 
Sent: Tuesday, November 22, 2011 1:42 PM
To: Eran Hammer-Lahav; Paul E. Jones; apps-discuss@ietf.org
Cc: 'Joseph Smarr'
Subject: R: [apps-discuss] Webfinger

 

I guess the discussion is moving from a pure descriptor (which may be static
in most cases) to a sort of API, which could have endless parameters.

 

>From the current/original webfinger description, the host-meta would mostly
be static, which implies no API-like, and no parameter, but the lrdd link
can typically be dynamic/API-like (to support the template mechanism). As
such it could easily accommodate some more parameters as well (in a similar
flavor than opensearch), e.g. to request specific link rels if we want.

 

What would be the scope of supporting uri parameters when accessing
host-meta? Does this intend to save an interaction step?

 

walter

 

Da: apps-discuss-bounces@ietf.org [mailto:apps-discuss-bounces@ietf.org] Per
conto di Eran Hammer-Lahav
Inviato: martedì 22 novembre 2011 19.33
A: Paul E. Jones; apps-discuss@ietf.org
Cc: 'Joseph Smarr'
Oggetto: Re: [apps-discuss] Webfinger

 

Yes, it is no longer a template and must be converted to href.

 

As for testing support, just check for Subject. Pretty simple to do.

 

EHL

 

From: Paul E. Jones [mailto:paulej@packetizer.com] 
Sent: Tuesday, November 22, 2011 9:27 AM
To: Eran Hammer-Lahav; apps-discuss@ietf.org
Cc: 'Joseph Smarr'; 'Gonzalo Salgueiro'; 'Blaine Cook'
Subject: RE: [apps-discuss] Webfinger

 

A couple more questions on (3):

 

Why expand templates like this:

        {

          "rel":"author",

 
"template":"http://example.com/author?q=http%3A%2F%2Fexample.com%2Fxy"

        }

 

The requesting entity could expand the templates.  I can appreciate the
reasoning for having “?resource” query the LRDD URL and return back the
ordered list of links, but why have the server modify the discovered
templates like the one above?  It’s no longer a template, really.  Should we
change “template” to be “href”?

 

If a server does not understand “?resource”, it’s likely to simply ignore
it.  But, if a client expects it to be processed, it will cause confusion.
Would it be better to introduce /.well-known/host-meta-resource?  If a 404
is returned, then that is a clear indicator to the client.  Other
suggestions?

 

Paul

 

From: Eran Hammer-Lahav [mailto:eran@hueniverse.com] 
Sent: Monday, November 21, 2011 9:52 PM
To: Paul E. Jones; apps-discuss@ietf.org
Cc: 'Joseph Smarr'; 'Gonzalo Salgueiro'; 'Blaine Cook'
Subject: RE: [apps-discuss] Webfinger

 

1.       Require the server to offer JRD, leave it to the client to pick one
flavor.

2.       Host-meta dumps the decision on the applications. You need to
decide if WebFinger is an application or just syntactic sugar on top of
host-meta.

3.       Expand every template in host-meta + level one LRDD links
(excluding templates in LRDD).

 

EHL

 

From: Paul E. Jones [mailto:paulej@packetizer.com] 
Sent: Monday, November 21, 2011 7:49 AM
To: Eran Hammer-Lahav; apps-discuss@ietf.org
Cc: 'Joseph Smarr'; 'Gonzalo Salgueiro'; 'Blaine Cook'
Subject: RE: [apps-discuss] Webfinger

 

Eran,

 

Thanks for your feedback.  The editorial, structural, and behavioral items
we’ll addressed (including adhering to host-meta section 4.2).

 

Let me ask about specific comments:

 

1)      You want to mandate use of JSON, which we also indicated in the
draft.  However, I would personally prefer to give both XML and JSON equal
weight and require both.

2)      You wanted to mandate HTTPS. I’m not opposed, but host-meta does not
mandate it.  Shouldn’t we Webfinger requirements on what is there?

3)      Regarding “resource” extension: if I query host-meta, there may be
any number of templates.  Would we want the server to automatically expand
every template it finds?  Or would we only expand the ‘lrdd’ template?  (And
how many levels of recursion might be possible?)

 

Paul

 

From: Eran Hammer-Lahav [mailto:eran@hueniverse.com] 
Sent: Saturday, November 19, 2011 10:03 AM
To: Paul E. Jones; apps-discuss@ietf.org
Cc: Joseph Smarr; Gonzalo Salgueiro; Blaine Cook
Subject: RE: [apps-discuss] Webfinger

 

This is a good start. Some feedback and nits:

 

1.       The protocol flow is incorrect and needs to be adjusted based on
the final host-meta specification (RFC 6415). Namely, WebFinger must follow
section 4.2 exactly as specified.

2.       WebFinger should focus exclusively on JSON and mandate WebFinger
providers to support the JRD format. This does not preclude using XRD (XML)
but it will ensure that every compliant WebFinger implementation provides
full JSON support which is much more likely to be adopted. This is something
we could not do in host-meta due to the late stage it was in, but this is
the right time to make the switch (without taking away any existing
functionality).

3.       Are there reasons not to mandate HTTPS?

4.       Section 3 should be a sub-section of the introduction and each
example needs actual JRD code.

 

In addition, I would very much like to see WebFinger extend the host-meta
endpoint by defining a ‘resource’ query parameter. Using the example in RFC
6415 section 1.1.1 (example not properly encoded to make it easier to read):

 

> GET /.well-known/host-meta?resource=http://example.com/xy HTTP/1.1

 

   {

      "subject":"http://example.com/xy",

 

      "properties":{

        "http://spec.example.net/color":"red"

      },

 

      "links":[

        {

          "rel":"hub",

          "href":"http://example.com/hub",

        },

        {

          "rel":"hub",

          "href":"http://example.com/another/hub",

        },

        {

          "rel":"author",

          "href":"http://example.com/john",

        },

        {

          "rel":"author",

 
"template":"http://example.com/author?q=http%3A%2F%2Fexample.com%2Fxy"

        }

      ]

    }

 

The rules for this extension parameter are pretty simple:

 

1.       JSON is implied. If the server understands ‘?resource’ it MUST
return a JRD document.

2.       The subject must be set to the value of the ‘resource’ parameter.

3.       If the server does not support that resource (wrong domain, etc.)
it must return an empty JRD with the right subject.

4.       The client MUST verify the server supports ‘?resource’ by making
sure the response is both JRD and has the requested subject (this will
ensure full compatibility with any other host-meta endpoint).

 

I would like to see such endpoint extension required for WebFinger so that
clients can make a single call and get the full WebFinger result in JSON.
This would significantly improve adoption and usability, and adds very
little work to providers.

 

EHL

 

 

From: apps-discuss-bounces@ietf.org [mailto:apps-discuss-bounces@ietf.org]
On Behalf Of Paul E. Jones
Sent: Monday, October 24, 2011 1:10 PM
To: apps-discuss@ietf.org
Cc: Joseph Smarr; Gonzalo Salgueiro
Subject: [apps-discuss] Webfinger

 

Folks,

 

We just submitted this:

http://www.ietf.org/internet-drafts/draft-jones-appsawg-webfinger-00.txt

 

The tools for Webfinger are now defined, but the procedures need to be
clearer with respect to what most of us understand as “webfinger”.  This is
just a first stab at making that happen and we hope to progress this to
publish an RFC in the application area.

 

We welcome any comments you have on the topic, either privately or publicly.

 

Paul

 


Questo messaggio e i suoi allegati sono indirizzati esclusivamente alle
persone indicate. La diffusione, copia o qualsiasi altra azione derivante
dalla conoscenza di queste informazioni sono rigorosamente vietate. Qualora
abbiate ricevuto questo documento per errore siete cortesemente pregati di
darne immediata comunicazione al mittente e di provvedere alla sua
distruzione, Grazie. 

This e-mail and any attachments is confidential and may contain privileged
information intended for the addressee(s) only. Dissemination, copying,
printing or use by anybody else is unauthorised. If you are not the intended
recipient, please delete this message and any attachments and advise the
sender by return e-mail, Thanks. 

rispetta l'ambienteRispetta l'ambiente. Non stampare questa mail se non è
necessario.