<HTML>
<HEAD>
<TITLE>Re: [OpenID] Facebook support for OpenID. Where?</TITLE>
</HEAD>
<BODY>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>Thanks for the feedback. Responses inline.<BR>
<BR>
On 5/20/09 7:35 PM, &quot;Shane B Weeden&quot; &lt;<a href="sweeden@au1.ibm.com">sweeden@au1.ibm.com</a>&gt; wrote:<BR>
<BR>
</SPAN></FONT><BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>The difference between those examples and the facebook OpenID linkage is quite notable and very important. <BR>
<BR>
1. You can link multiple OpenID's to your facebook account (nice). The other relationships you mentioned are 1:1 B2B and not a user-centric choice, therefore it is more normal to expect them to do automatic signon. <BR>
<BR>
2. If I move to another browser (eg kiosk) or perform a cookie cleanup on my regular browser and don't have the openid_p cookie, there is absolutely no way for me to login with my openid, which means I must remember and use my facebook password. This is IMO the biggest problem with the current approach from a usability perspective. <BR>
<BR>
<B>[Luke] I agree with you, and I would like to get there. If you have an openid_p cookie, then certainly we should be able to show a button, but we need to work on the user experience before launching anything.<BR>
<BR>
Even with that, there are other legit reasons why we require a password &#8211; I&#8217;m working on a more detailed blog post, but in short, they are: <BR>
&nbsp;- mobile experience: </B>mobile is a major use case for facebook, and there isn&#8217;t a great story yet for openid<BR>
<B> - account recovery: </B>if a user forgets their password (or their OP), they need a way to get back into their account<BR>
<B> - high security transactions: </B>when a user changes their email address or other core info, we require a password again<BR>
<B><BR>
These are solvable (through things like PAPE, etc) and we are working on them. But I decided that it was better to push an RP that required a password, and illustrate those issues, rather than just wait for them to get solved on their own.<BR>
<BR>
But it&#8217;ll be awhile.<BR>
</B><BR>
Luke - I do have my own OP, and have successfully interop tested it with facebook. <BR>
<BR>
<B>[Luke] Awesome!<BR>
</B><BR>
What you've done is a great start, however I believe it's vitally important to offer &quot;Login with my linked OpenID&quot; from the main facebook.com login page, along with the ability to prompt for that OpenID - just like is done when linking an OpenID in the first place. Without that the ability to let my unique facebook password fade away is impossible. <BR>
<BR>
<B>[Luke] Yeah, as I said earlier that will just take design, testing, and work, and we need to prioritize it among our other engineering tasks. We&#8217;re working on it &#8211; right now I&#8217;m most interested in making sure that it&#8217;s stable.<BR>
</B><BR>
Another comment on the implementation - It seems that regardless of whether or not I enter an OP-identifier or a user-unique claimed identifier, the facebook RP always does an OP-identifier style login with identifier_select to to the discovered openid server. I am not sure that's a good thing as it leads to other problems such as not being able to support delegation properly. <BR>
<BR>
<B>[Luke] That&#8217;s good feedback. I&#8217;ve added it to the Known Issues wiki: <a href="http://wiki.developers.facebook.com/index.php/OpenID_Known_Issues">http://wiki.developers.facebook.com/index.php/OpenID_Known_Issues</a><BR>
</B><BR>
Cheers, <BR>
Shane. <BR>
<BR>
<BR>
<BR>
<BR>
</SPAN><FONT SIZE="2"><SPAN STYLE='font-size:10pt'><B>Luke Shepard &lt;<a href="lshepard@facebook.com">lshepard@facebook.com</a>&gt;</B></SPAN></FONT><SPAN STYLE='font-size:11pt'> <BR>
</SPAN><FONT SIZE="2"><SPAN STYLE='font-size:10pt'>Sent by: <a href="general-bounces@openid.net">general-bounces@openid.net</a></SPAN></FONT><SPAN STYLE='font-size:11pt'> </SPAN><FONT SIZE="2"><SPAN STYLE='font-size:10pt'>21/05/2009 09:37 AM</SPAN></FONT><SPAN STYLE='font-size:11pt'> 
</SPAN></FONT>
<P ALIGN=RIGHT>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><FONT SIZE="2"><SPAN STYLE='font-size:10pt'>To
</SPAN></FONT></FONT>
<P>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><FONT SIZE="2"><SPAN STYLE='font-size:10pt'>Andr&eacute; Lu&iacute;s &lt;<a href="andreluis.pt@gmail.com">andreluis.pt@gmail.com</a>&gt;, &quot;<a href="general@openid.net">general@openid.net</a>&quot; &lt;<a href="general@openid.net">general@openid.net</a>&gt;</SPAN></FONT><SPAN STYLE='font-size:11pt'> 
</SPAN></FONT>
<P ALIGN=RIGHT>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><FONT SIZE="2"><SPAN STYLE='font-size:10pt'>cc<BR>
Subject
</SPAN></FONT></FONT>
<P>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><FONT SIZE="2"><SPAN STYLE='font-size:10pt'>Re: [OpenID] Facebook support for OpenID. Where?</SPAN></FONT><SPAN STYLE='font-size:11pt'> <BR>
<BR>
<BR>
<BR>
<BR>
Right, I understand your concerns. The current behavior is equivalent to how most single signon works that I&#8217;ve seen &#8211; not just with OpenID. For other examples, look at how Google/Blogger, Google/Plaxo, and Facebook/Citysearch behave.<BR>
<BR>
That said, I agree that it can be surprising for some users, and we can do more to improve messaging, as well as provide a good experience if you are NOT currently logged into your provider. Any changes like that require design work and user testing, and thus take time. Right now, my priority is to solve the bugs in the current flow, and iterate on features in order of business priority. I will definitely take your feedback into account when prioritizing the work. <BR>
<BR>
In the meantime, if you&#8217;re uncomfortable with the behavior, it&#8217;s fully opt-in feature.<BR>
<BR>
On 5/20/09 4:19 PM, &quot;Andr&eacute; Lu&iacute;s&quot; &lt;<FONT COLOR="#0000FF"><U><a href="andreluis.pt@gmail.com">andreluis.pt@gmail.com</a></U></FONT> &lt;<a href="andreluis.pt@gmail.com">andreluis.pt@gmail.com</a>&gt; &gt; wrote:<BR>
<BR>
Hello Luke,<BR>
<BR>
comments inline.<BR>
<BR>
On Wed, May 20, 2009 at 4:46 PM, Luke Shepard &lt;<FONT COLOR="#0000FF"><U><a href="lshepard@facebook.com">lshepard@facebook.com</a></U></FONT> &lt;<a href="lshepard@facebook.com">lshepard@facebook.com</a>&gt; &gt; wrote:<BR>
&gt; Thanks for the constructive feedback, Andre.<BR>
&gt;<BR>
&gt; This is the first iteration of our OpenID relying party. I agree that some of the interface has rough edges, but imho it works. We are working on testing different approaches to help set expectations and make an even smoother flow.<BR>
&gt;<BR>
&gt; I would consider most of the implementation to be &quot;work in progress&quot;. At Facebook, we work very iteratively- push something out, see how it's used, tweak, push, etc. Changes to the main home page are especially important to test extensively.<BR>
&gt;<BR>
<BR>
Good to know. I hope our comments can help.<BR>
<BR>
&gt; Some earlier posters asked about why we only use GMail for registration so far. We chose to start with GMail bc Google has made available both contacts and a verified email, both of which help improve conversion. We will work on testing other providers, and if we see a positive impact on growth, then we will launch them as well. It's very much a data-driven business decision.<BR>
<BR>
Alright, that was not my concern when I shared my comments but I get<BR>
it. I just hope you guys don't restrict this to 3 or 4 major global<BR>
players. There are &quot;local&quot; country-level providers that do things by<BR>
the book and are spreading the word. It would be too bad if users were<BR>
forced to neglect their openid providers at signup on facebook because<BR>
you only accept google and yahoo. ;) Just saying...<BR>
<BR>
&gt; Ultimately I would love to get OpenID to the point where it makes business sense to accept signups from all providers on the front page, but frankly, for our business, we're not quite there yet.<BR>
&gt;<BR>
<BR>
Sure.<BR>
<BR>
&gt; We're keeping track of open issues in the forums and on the developer wiki. I'm open to any constructive feedback and ideas.<BR>
&gt;<BR>
<BR>
Awesome, I'll have a look.<BR>
<BR>
But from your reply, I don't think I explained myself very clearly.<BR>
What I was complaining about was not the signup part. It's when the<BR>
user has already linked his/her openids in the account settings screen<BR>
and later comes to the homepage of Facebook. After a couple of<BR>
seconds, the page just changes and *bam*, I'm logged in. No warnings,<BR>
no countdowns to allow cancellation... nothing.<BR>
<BR>
One of the golden rules of usability states very clearly that any<BR>
action should always be initiated by the user. You can show prompts,<BR>
but something as *big* as logging in, shouldn't come to the user as a<BR>
surprise. :) Imagine I come to facebook, start typing my email and<BR>
when I look up... I'm logged in. &quot;what?!&quot;<BR>
<BR>
<BR>
IMHO, I believe you should, at most, prompt the user.. &quot;We detected<BR>
you have logged into ____(provider)____. [Come on in, ___(name)___]&quot;<BR>
with a checkbox &quot; [ ] Next time, log me in automatically&quot;. And even<BR>
then, you should warn the user which account you logged him in with,<BR>
with a reverse checkbox &quot;[ ] Next time, ask me first.&quot;<BR>
<BR>
Or maybe show a countdown saying &quot;You'll be logged into your account<BR>
___(name)____ in 9 seconds. [Login right away] [Cancel]&quot;<BR>
<BR>
I just don't like the *empty* feeling of being dragged into facebook<BR>
without so much as a word explaining what happened. I had to rely on<BR>
Firebug to figure it out. ;)<BR>
<BR>
Anyways, I'm rambling. Sorry for the long email, but I got carried away. :)<BR>
<BR>
--<BR>
Andr&eacute; Lu&iacute;s<BR>
<BR>
<BR>
&gt;<BR>
&gt; ----- Original Message -----<BR>
&gt; From: <FONT COLOR="#0000FF"><U><a href="general-bounces@openid.net">general-bounces@openid.net</a></U></FONT> &lt;<a href="general-bounces@openid.net">general-bounces@openid.net</a>&gt; &lt;<FONT COLOR="#0000FF"><U><a href="general-bounces@openid.net">general-bounces@openid.net</a></U></FONT> &lt;<a href="general-bounces@openid.net">general-bounces@openid.net</a>&gt; &gt;<BR>
&gt; To: <FONT COLOR="#0000FF"><U><a href="general@openid.net">general@openid.net</a></U></FONT> &lt;<a href="general@openid.net">general@openid.net</a>&gt; &lt;<FONT COLOR="#0000FF"><U><a href="general@openid.net">general@openid.net</a></U></FONT> &lt;<a href="general@openid.net">general@openid.net</a>&gt; &gt;<BR>
&gt; Sent: Wed May 20 08:29:58 2009<BR>
&gt; Subject: Re: [OpenID] Facebook support for OpenID. Where?<BR>
&gt;<BR>
&gt; Just want to throw these 2 cents into the discussion..<BR>
&gt;<BR>
&gt; The fact that, if I'm logged into my provider, I'm simply swept off my<BR>
&gt; feet and dragged into my facebook account feels very unnatural. In an<BR>
&gt; exclusively usability perspective, the action should *always* start by<BR>
&gt; user initiative. At least there should be a prompt suggesting &quot;We've<BR>
&gt; detected you're logged into ___insert__provider___. &lt;button&gt;Come on<BR>
&gt; in&lt;/button&gt;&quot;.<BR>
&gt;<BR>
&gt; Have they addressed this? Is this behavior only temporary?<BR>
&gt;<BR>
&gt; Thanks,<BR>
&gt; --<BR>
&gt; Andr&eacute; Lu&iacute;s<BR>
&gt;<BR>
&gt; On Wed, May 20, 2009 at 4:10 PM, Peter Williams &lt;<FONT COLOR="#0000FF"><U><a href="pwilliams@rapattoni.com">pwilliams@rapattoni.com</a></U></FONT> &lt;<a href="pwilliams@rapattoni.com">pwilliams@rapattoni.com</a>&gt; &gt; wrote:<BR>
&gt;&gt; &quot;Most notably, you can now register for a Facebook account with your Gmail account, or can link an existing Facebook account with Gmail or other OpenID-participating services if they support automatic log-in.&quot;[<FONT COLOR="#0000FF"><U><a href="http://www.silicon.com/retailandleisure/0,3800011842,39432536,00.htm">http://www.silicon.com/retailandleisure/0,3800011842,39432536,00.htm</a></U></FONT> &lt;<a href="http://www.silicon.com/retailandleisure/0,3800011842,39432536,00.htm">http://www.silicon.com/retailandleisure/0,3800011842,39432536,00.htm</a>&gt; ]<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; Im hearing that the RP performed a profiling act (the selection of those features of the protocol that suits the RP). That is ... the protocol can only now be used according to the trust/business/value/legal principles that drive the adopting party.<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; We might ask, politically: is the implementation consistent with UCI - where users are in control?<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; now since SSO tends to be all about the politics of cooperation, one might analyze what is it in the interworking environment that induced Facebook to make the choice they did, in profiling the standard?<BR>
&gt;&gt;<BR>
&gt;&gt; We COULD assume malice or greed, but that's really last year's (US) political scene. We might speculate that its something about what Facebook considers itself to be doing in the world that has driven the choice.<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; Only if they preserve X, when putting profiling limits on openid choices, can they adopt the protocol. Now what is X?<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; My guess is the X is openid was adoptable only when its deployed with &quot;rp-centric&quot; trust models.<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; It seemed critical to Facebook that user was not being spoofed/phished (for presevation of the FaceBook brand). It seemed critical that a FaceBook introduction to a (user's choice of) OP also not be facilitating spoofing/phishing on those OPs (for the protection of FaceBook's indirect reputation = brand). Hence, impose rp-centric trust models in which any reliance on an OP is contingent on the user having PREVIOUSLY logged into the OP (and therefore having already taken decision prior to a Facebook introduction on whether one has or has not been phished etc).<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; I find this quite UCI, is a perverse sort of way. It would be also a legally-driven, reputation-driven profiling choice - in the absence of a trust model. It could even be seen as quite clever. Rather than extending openid with extensions (e.g the PKI-style extensions of some proposal), they went the other direction, and imposed profiling limits.<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt; ________________________________________<BR>
&gt;&gt; From: <FONT COLOR="#0000FF"><U><a href="general-bounces@openid.net">general-bounces@openid.net</a></U></FONT> &lt;<a href="general-bounces@openid.net">general-bounces@openid.net</a>&gt; [<FONT COLOR="#0000FF"><U><a href="general-bounces@openid.net">general-bounces@openid.net</a></U></FONT> &lt;<a href="general-bounces@openid.net">general-bounces@openid.net</a>&gt; ] On Behalf Of SitG Admin [<FONT COLOR="#0000FF"><U><a href="sysadmin@shadowsinthegarden.com">sysadmin@shadowsinthegarden.com</a></U></FONT> &lt;<a href="sysadmin@shadowsinthegarden.com">sysadmin@shadowsinthegarden.com</a>&gt; ]<BR>
&gt;&gt; Sent: Wednesday, May 20, 2009 12:21 AM<BR>
&gt;&gt; To: Santosh Rajan<BR>
&gt;&gt; Cc: <FONT COLOR="#0000FF"><U><a href="general@openid.net">general@openid.net</a></U></FONT> &lt;<a href="general@openid.net">general@openid.net</a>&gt; <BR>
&gt;&gt; Subject: Re: [OpenID] Facebook support for OpenID. Where?<BR>
&gt;&gt;<BR>
&gt;&gt;&gt;You may not agree with my views, or I may not succeed to<BR>
&gt;&gt;&gt;convince you, but I thing it is unfair for you to suggest that I should not<BR>
&gt;&gt;&gt;express my views here.<BR>
&gt;&gt;<BR>
&gt;&gt; That wasn't his suggestion. What grows tiresome about your expression<BR>
&gt;&gt; of those views is how you try to establish links between your beliefs<BR>
&gt;&gt; and whatever may be happening at the moment, apparently without<BR>
&gt;&gt; regard for showing any actual connection. Over time, this creates the<BR>
&gt;&gt; appearance that you are either so frantic to make us listen, you care<BR>
&gt;&gt; less about being relevant or valid than repeating the same points<BR>
&gt;&gt; over and over, or so fanatical about your beliefs that you can't<BR>
&gt;&gt; understand the different perspectives people here might have - much<BR>
&gt;&gt; less, adapt your approach to fit into what *they* want, instead of<BR>
&gt;&gt; just what *you* want (and think others, if intelligent, *should*<BR>
&gt;&gt; want).<BR>
&gt;&gt;<BR>
&gt;&gt; In your original post on this thread you suggested that because this<BR>
&gt;&gt; is &quot;Facebook&quot;, we say good things no matter what they do. If the<BR>
&gt;&gt; implementation Facebook had taken to OpenID followed your advice,<BR>
&gt;&gt; would you still be criticizing them? Still be placing (some of) the<BR>
&gt;&gt; blame for their (alleged) Fail on not doing so? If they had, would<BR>
&gt;&gt; you be praising them, instead as an example of what everyone else<BR>
&gt;&gt; *ought* to do?<BR>
&gt;&gt;<BR>
&gt;&gt;&gt;Also sites that use user names as logins can easily integrate OpenID.<BR>
&gt;&gt;<BR>
&gt;&gt; Usernames usually have a character limit (say, 16 or so), but most<BR>
&gt;&gt; OpenID's are (much) longer than that; already, this makes OpenID<BR>
&gt;&gt; integration *very* difficult. How much room will you allocate for<BR>
&gt;&gt; primary fields in your backend database? If that room has already<BR>
&gt;&gt; been allocated, and the structure decided on, how drastically will<BR>
&gt;&gt; the entire datacenter have to be overhauled?<BR>
&gt;&gt;<BR>
&gt;&gt; I spent a while worrying over maximum length of URI's (theoretical<BR>
&gt;&gt; maximum limit of URL's, and this is limited by a combination of<BR>
&gt;&gt; server at OP, server at RP, and user's browser; probably 4,000+<BR>
&gt;&gt; characters!), but eventually decided to store primary keys of a<BR>
&gt;&gt; hash's length at most; now, hashes *can* collide, but if you get more<BR>
&gt;&gt; than one result you just retrieve them all and do more exact<BR>
&gt;&gt; comparisons on the fuller string!<BR>
&gt;&gt;<BR>
&gt;&gt;&gt;The problem is for sites that &quot;use&quot; email addresses as Identities, or<BR>
&gt;&gt;&gt;require verified email addresses. Here implementing OpenID in the current<BR>
&gt;&gt;&gt;form is not practical without including email addresses as identifiers.<BR>
&gt;&gt;<BR>
&gt;&gt; Poorly-hidden secret of database efficiency: you get *lots faster*<BR>
&gt;&gt; lookups if you organize by numeric primary keys. Sure, the topology<BR>
&gt;&gt; on paper will have username or some other field shown as the main<BR>
&gt;&gt; index, but your *actual* topology doesn't have to match that<BR>
&gt;&gt; perfectly.<BR>
&gt;&gt;<BR>
&gt;&gt;&gt;And to make OpenID truly &quot;universal&quot;, we need to somehow include email<BR>
&gt;&gt;&gt;addresses into the scheme of things.<BR>
&gt;&gt;<BR>
&gt;&gt; To make OpenID *truly* universal, it would have to be compatible with<BR>
&gt;&gt; irc:// and all the rest. That might be a good place to focus your<BR>
&gt;&gt; efforts (and, of course, I have to mention XRI).<BR>
&gt;&gt;<BR>
&gt;&gt; -Shade has been advocating for privacy in OpenID for over a year, but<BR>
&gt;&gt; was never told to get off the privacy soapbox<BR>
&gt;&gt; _______________________________________________<BR>
&gt;&gt; general mailing list<BR>
&gt;&gt; <FONT COLOR="#0000FF"><U><a href="general@openid.net">general@openid.net</a></U></FONT> &lt;<a href="general@openid.net">general@openid.net</a>&gt; <BR>
&gt;&gt; <FONT COLOR="#0000FF"><U><a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a></U></FONT> &lt;<a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a>&gt; <BR>
&gt;&gt; _______________________________________________<BR>
&gt;&gt; general mailing list<BR>
&gt;&gt; <FONT COLOR="#0000FF"><U><a href="general@openid.net">general@openid.net</a></U></FONT> &lt;<a href="general@openid.net">general@openid.net</a>&gt; <BR>
&gt;&gt; <FONT COLOR="#0000FF"><U><a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a></U></FONT> &lt;<a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a>&gt; <BR>
&gt;&gt;<BR>
&gt; _______________________________________________<BR>
&gt; general mailing list<BR>
&gt; <FONT COLOR="#0000FF"><U><a href="general@openid.net">general@openid.net</a></U></FONT> &lt;<a href="general@openid.net">general@openid.net</a>&gt; <BR>
&gt; <FONT COLOR="#0000FF"><U><a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a></U></FONT> &lt;<a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a>&gt; <BR>
&gt;<BR>
</SPAN></FONT><SPAN STYLE='font-size:11pt'><FONT FACE="Consolas, Courier New, Courier">_______________________________________________<BR>
general mailing list<BR>
<a href="general@openid.net">general@openid.net</a><BR>
<a href="http://openid.net/mailman/listinfo/general">http://openid.net/mailman/listinfo/general</a><BR>
</FONT><FONT FACE="Calibri, Verdana, Helvetica, Arial"><BR>
<BR>
</FONT></SPAN></BLOCKQUOTE>
</BODY>
</HTML>