On Mon, Mar 22, 2010 at 5:56 PM, Chris Messina <span dir="ltr">&lt;<a href="mailto:chris.messina@gmail.com">chris.messina@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im">On Mon, Mar 22, 2010 at 5:01 PM, Paul E. Jones <span dir="ltr">&lt;<a href="mailto:paulej@packetizer.com" target="_blank">paulej@packetizer.com</a>&gt;</span> wrote:<br></div><div class="gmail_quote"><div class="im">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">









<div lang="EN-US" link="blue" vlink="purple">

<div>

<p class="MsoNormal"><span style="font-size:15px;color:rgb(31, 73, 125)">I would vote for the proposed rel value.  One could use “me”,
but the whole webfinger acct: XRD document is about “me”.  So,
I think we need something specific for OpenID.</span></p></div></div></blockquote></div><div>I can go either way here, like I said. Inventing &quot;<a href="http://openid.net/identity" target="_blank">http://openid.net/identity</a>&quot; seems arbitrary, and not tied to existing practice. That&#39;s my biggest concern about it; but it&#39;s just a URI which has no semantic meaning... so it&#39;s not a deal breaker for me. I just think it&#39;ll be harder to get people to take it seriously if it doesn&#39;t look like anything else.</div>

<div class="im">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">You and Chris Messina both raised concerns about the e-mail
style: should RPs remember the email ID or the OpenID value?  </span></p></div></div></blockquote></div><div>RPs can of course remember what the user first entered into the box, but unless the OP returns the same identifier as an email address of the user, it shouldn&#39;t be trusted. </div>

</div></blockquote><div><br></div><div>I think that would be OK, as long as RPs that start with an acct: URI will also accept an acct: URI returned from the OP (probably the same one).</div><div><br></div><div>It does raise the question of whether, if the user starts with an HTTP: URI, RPs can be expected to support a claimed ID with scheme acct:.  Side issue.</div>

<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div>After all, that&#39;s the whole thrust of the relationship that&#39;s being created: the *relying party* relies on the *identity provider* for some user — it doesn&#39;t matter what gets entered into the RP&#39;s site (they could just as easily offer a NASCAR array of buttons) — what SHOULD matter to the RP is what the OP returns after the user has presumably authenticated.</div>

</div></blockquote><div><br></div><div>Historically, the problem is that the simple OpenID 1.0 lightweight delegation model (put a link on your webpage) got effectively broken in 2.0 because 2.0 OPs started reporting the IDs that they knew about rather than the one the user was actually claiming.  The spec did not help with this.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div class="im">
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Can we get
all OpenID RPs to accept an email form?</span></p></div></div></blockquote><div><br></div></div><div>Yes. However, we need to specify exactly how this should work and then go about building support into the OpenID libraries. As it is, you can use an email-style identifier in OpenID flows (<a href="http://chris" target="_blank">http://chris</a>@<a href="http://yahoo.com" target="_blank">yahoo.com</a> is a valid URL) — but it doesn&#39;t work reliably or consistently.</div>

</div></blockquote><div><br></div><div>It&#39;d going to be horribly inconsistent as many OPs don&#39;t even see the &quot;chris&quot; part of that identifier or pay any attention if they do (today).  Changing to (implicit) acct: solves this.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="gmail_quote"><div class="im">
<div> <span style="font-size:15px;color:rgb(31, 73, 125)"> </span></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple">
<div>

<p class="MsoNormal"><span style="font-size:15px;color:rgb(31, 73, 125)">What concerns me, though, is maintaining one value vs. the
other.  We <i>should expect</i> the RPs to remember only the OpenID
identifier, since that is the identifier used by OpenID.  The email form
is merely used to map to the OpenID identifier.  What happens when a user
changes his OP?  If the email form is maintained, then the user could still
be able to log in.  However, if only the OpenID ID is stored, the user would
need to update that somehow.  But, this is not really a webfinger issue,
but a “managing OpenID identities” problem.  Still, if users
get used to entering email IDs, then it might become an issue for Webfinger.</span></p></div></div></blockquote></div><div>Changing OPs is essentially out of scope. It&#39;s no different than if a user changes her email address today.</div>


<div><br></div><div>Sites should build in appropriate account recovery mechanisms as needed, which may include linking more than one OpenID or email address to a given account.</div><div><br></div><div>We can&#39;t force people to manage their online accounts more sensibly, or build in that level of policy into the protocol (for example, someone&#39;s account might be shut down for abuse — but we can&#39;t specify what abuse is, or what to do about it).</div>

<div class="im">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Do we allow more than one OpenID for a user acct:?  I
prefer to have a 1:1 mapping, otherwise it only delays logging in.  It
would force OPs to ask which of several identities a user would like to use.  Perhaps
there are arguments for allowing more than one?  Would we use a &lt;properties&gt;
element to indicate a priority or indicate which ID is active or inactive?</span></p></div></div></blockquote><div><br></div></div><div>RPs should allow users to associate multiple identifiers to their account, especially to aid in account recovery; this practice is up to the RPs to implement, however.</div>


<div><br></div><div>And, to illustrate this problem more acutely, here is what my WebFinger address returns:</div><div><br></div><div><a href="http://webfinger.org/lookup/chris.messina@gmail.com" target="_blank">http://webfinger.org/lookup/chris.messina@gmail.com</a></div>


<div><br></div><div>I can&#39;t imagine an RP asking me which of these accounts I want to use for signing in...</div><div><br></div><font color="#888888"><div>Chris</div></font><div><div></div><div class="h5"><div> </div>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-US" link="blue" vlink="purple"><div>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Paul</span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>

<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">

<div>

<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">

<p class="MsoNormal"><b><span style="font-size:10.0pt">From:</span></b><span style="font-size:10.0pt"> John Panzer
[mailto:<a href="mailto:jpanzer@google.com" target="_blank">jpanzer@google.com</a>] <br>
<b>Sent:</b> Monday, March 22, 2010 4:58 PM<br>
<b>To:</b> Dirk Balfanz<br>
<b>Cc:</b> Paul E. Jones; <a href="mailto:openid-specs@lists.openid.net" target="_blank">openid-specs@lists.openid.net</a>;
<a href="mailto:webfinger@googlegroups.com" target="_blank">webfinger@googlegroups.com</a></span></p><div><br>
<b>Subject:</b> Re: WebFinger at Google</div><p></p>

</div>

</div>

<p class="MsoNormal"> </p>

<p class="MsoNormal">So the distinction appears to be in the (conceptual)
relations between:</p><div><div></div><div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">TODAY:</p>

</div>

<div>

<p class="MsoNormal"><a href="mailto:acct%3Abob@gmail.com" target="_blank">acct:bob@gmail.com</a>
maps with rel=<a href="http://specs.openid.net/auth/2.0/provider" target="_blank">http://specs.openid.net/auth/2.0/provider</a>
to <a href="http://www.google.com/profiles/3922823829347234234" target="_blank">http://www.google.com/profiles/3922823829347234234</a></p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">==&quot;My OpenID provider is this OpenID over there&quot;
-- this does read weirdly.</p>

</div>

<div>

<p class="MsoNormal"><br>
PROPOSED:</p>

</div>

<div>

<p class="MsoNormal"><a href="mailto:acct%3Abob@gmail.com" target="_blank">acct:bob@gmail.com</a>
maps with rel=<a href="http://openid.net/identity" target="_blank">http://openid.net/identity</a>
to <a href="http://www.google.com/profiles/3922823829347234234" target="_blank">http://www.google.com/profiles/3922823829347234234</a></p>

</div>

<div>

<p class="MsoNormal"><br>
==&quot;My OpenID identity is this OpenID over there&quot; -- reads okay, but
wouldn&#39;t rel=&quot;me&quot; be the same?</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">REJECTED:</p>

</div>

<div>

<div>

<p class="MsoNormal"><a href="mailto:acct%3Abob@gmail.com" target="_blank">acct:bob@gmail.com</a>
maps with rel=<a href="http://specs.openid.auth/2.0/server" target="_blank">http://specs.openid.auth/2.0/server</a> </p>

</div>

<div>

<p class="MsoNormal">to <a href="http://www.google.com/profiles/3922823829347234234" target="_blank">http://www.google.com/profiles/3922823829347234234</a></p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">==&quot;My OpenID provider server is this URL over
there&quot; -- would make sense if you say that an acct: URI _is_ an OpenID.</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">Seems to me that the last one would make sense iff an acct:
URI could be considered an OpenID in and of itself, and not otherwise.
 And the middle one could make sense in that scenario, but would be a bit
indirect and unnecessary.  </p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">Thus, my questions :)</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">I&#39;m purposely using the ugly default Google profile URLs to
make a point, of course.</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal"> </p>

<div>

<p class="MsoNormal">On Mon, Mar 22, 2010 at 9:01 AM, Dirk Balfanz &lt;<a href="mailto:balfanz@google.com" target="_blank">balfanz@google.com</a>&gt; wrote:</p>

<p class="MsoNormal" style="margin-bottom:12.0pt"> </p>

<div>

<div>

<div>

<p class="MsoNormal">On Fri, Mar 19, 2010 at 10:17 AM, Paul E. Jones &lt;<a href="mailto:paulej@packetizer.com" target="_blank">paulej@packetizer.com</a>&gt;
wrote:</p>

<div>

<div>

<p class="MsoNormal">Folks,</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Google
appears to have Webfinger enabled on some accounts, at least.  You can see
it with this:</p>

<p class="MsoNormal">curl
<a href="http://gmail.com/.well-known/host-meta" target="_blank">http://gmail.com/.well-known/host-meta</a></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">That
returns this:</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">&lt;?xml version=&#39;1.0&#39;
encoding=&#39;UTF-8&#39;?&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">&lt;!-- NOTE: this host-meta
end-point is a pre-alpha work in progress.   Don&#39;t rely on it. --&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">&lt;!-- Please follow the
list at <a href="http://groups.google.com/group/webfinger" target="_blank">http://groups.google.com/group/webfinger</a>
--&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">&lt;XRD xmlns=&#39;<a href="http://docs.oasis-open.org/ns/xri/xrd-1.0" target="_blank">http://docs.oasis-open.org/ns/xri/xrd-1.0</a>&#39;
</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">    
xmlns:hm=&#39;<a href="http://host-meta.net/xrd/1.0" target="_blank">http://host-meta.net/xrd/1.0</a>&#39;&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">  &lt;hm:Host xmlns=&#39;<a href="http://host-meta.net/xrd/1.0" target="_blank">http://host-meta.net/xrd/1.0</a>&#39;&gt;<a href="http://gmail.com" target="_blank">gmail.com</a>&lt;/hm:Host&gt;</span></p>




<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">  &lt;Link rel=&#39;lrdd&#39; </span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">       
template=&#39;http<span style="color:#00B050">://<a href="http://www.google.com/s2/webfinger/?q=%7Buri%7D" target="_blank">www.google.com/s2/webfinger/?q={uri}</a></span>&#39;&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">   
&lt;Title&gt;Resource Descriptor&lt;/Title&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">  &lt;/Link&gt;</span></p>

<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Courier New&quot;">&lt;/XRD&gt;</span></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Now,
querying the LRDD URL like this:</p>

<p class="MsoNormal">curl
<a href="http://www.google.com/s2/webfinger/?q=acct" target="_blank">http://www.google.com/s2/webfinger/?q=acct</a>:&lt;user&gt;@<a href="http://gmail.com" target="_blank">gmail.com</a></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">will
return an XRD document, one of whose members is this:</p>

<p class="MsoNormal">&lt;Link
rel=&#39;<a href="http://specs.openid.net/auth/2.0/provider" target="_blank">http://specs.openid.net/auth/2.0/provider</a>&#39;
href=&#39;<a href="http://www.google.com/profiles/" target="_blank">http://www.google.com/profiles/</a>&lt;user&gt;&#39;/&gt;</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">The
href value might vary, but that’s what it returned for my account. 
What concerns me is the link relation value: <a href="http://specs.openid.net/auth/2.0/provider" target="_blank">http://specs.openid.net/auth/2.0/provider</a></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Where
did that come from?  The 2.0 spec defined two possible values:</p>

<p class="MsoNormal"><a href="http://specs.openid.net/auth/2.0/server" target="_blank">http://specs.openid.net/auth/2.0/server</a></p>

<p class="MsoNormal"><a href="http://specs.openid.net/auth/2.0/signon" target="_blank">http://specs.openid.net/auth/2.0/signon</a></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">However,
I cannot find the one Google is using defined anywhere, though I did see it
referenced here:</p>

<p class="MsoNormal"><a href="http://code.google.com/p/webfinger/source/browse/wiki/CommonLinkRelations.wiki?spec=svn22&amp;r=22" target="_blank">http://code.google.com/p/webfinger/source/browse/wiki/CommonLinkRelations.wiki?spec=svn22&amp;r=22</a></p>




<p class="MsoNormal"> </p>

<p class="MsoNormal">Is
this an error?  If not, can somebody point me to the correct
documentation?</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">If
it is an error, what should the value be?</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">I
had assumed that the most logical choice was <a href="http://specs.openid.net/auth/2.0/signon" target="_blank">http://specs.openid.net/auth/2.0/signon</a>,
which is what I configured my server to return. </p>

</div>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

</div>

</div>

<div>

<p class="MsoNormal">&quot;signon&quot; points to the actual OpenID endpoint (the
URL that RPs send their association requests to, that they redirect the users
to, etc.) The claimed id for which signon identifies the OpenID endpoint is the
URI on which discovery is performed. So &quot;signon&quot; wouldn&#39;t work for
two reasons:</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">(1) <a href="http://www.google.com/profiles/" target="_blank">http://www.google.com/profiles/</a>&lt;user&gt; is not Google&#39;s
OpenID endpoint</p>

</div>

<div>

<p class="MsoNormal">(2) acct:&lt;user&gt;@<a href="http://gmail.com" target="_blank">gmail.com</a> (which is what you&#39;re performing discovery on) is
not a valid OpenID</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal"><a href="http://www.google.com/profiles/" target="_blank">http://www.google.com/profiles/</a>&lt;user&gt;
is, in fact, the user&#39;s OpenID (aka &quot;claimed id&quot;, but as I mentioned,
_not_ Google&#39;s OpenID endpoint). The OpenID 2.0 spec doesn&#39;t specify a link
relation that means &quot;this is my OpenID&quot;, so that&#39;s what the
&quot;provider&quot; link relation is supposed to convey. It&#39;s not part of any
standard (since webfinger itself hasn&#39;t been formalized yet). </p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">Does this make sense? </p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">In a related note, I _would_ like to be able to put
&quot;signon&quot; links in webfinger XRDs, and make OpenID handle acct:URI
(which it necessarily would have to, at that point), but that won&#39;t happen
until we have a new version of OpenID.</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal">Dirk.</p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<div>

<p class="MsoNormal"> </p>

</div>

<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">

<div>

<div>

<div>

<p class="MsoNormal">I
made that assumption based on looking at all of the XRDS examples in the OpenID
2.0 spec.</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Paul</p>

<p class="MsoNormal"> </p>

</div>

</div>

<p class="MsoNormal"> </p>

</div>

<p class="MsoNormal" style="margin-bottom:12.0pt">_______________________________________________<br>
specs mailing list<br>
<a href="mailto:specs@lists.openid.net" target="_blank">specs@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs</a></p>

</blockquote>

</div>

<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
<br>
_______________________________________________<br>
specs mailing list<br>
<a href="mailto:specs@lists.openid.net" target="_blank">specs@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs</a></p>

</div>

<p class="MsoNormal"> </p>

</div>

</div></div></div>

</div>

</div>


<br>_______________________________________________<br>
specs mailing list<br>
<a href="mailto:specs@lists.openid.net" target="_blank">specs@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs</a><br>
<br></blockquote></div></div></div><br><br clear="all"><div><div></div><div class="h5"><br>-- <br>Chris Messina<br>Open Web Advocate, Google<br><br>Personal: <a href="http://factoryjoe.com" target="_blank">http://factoryjoe.com</a><br>

Follow me on Buzz: <a href="http://buzz.google.com/chrismessina" target="_blank">http://buzz.google.com/chrismessina</a> <br>
...or Twitter: <a href="http://twitter.com/chrismessina" target="_blank">http://twitter.com/chrismessina</a> <br><br>This email is:   [ ] shareable    [X] ask first   [ ] private<br>
</div></div></blockquote></div><br>