Re: [OAUTH-WG] Facebook, OAuth, and WRAP

Leah Culver <leah.culver@gmail.com> Wed, 25 November 2009 16:15 UTC

Return-Path: <leah.culver@gmail.com>
X-Original-To: oauth@core3.amsl.com
Delivered-To: oauth@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 849AC3A6AAA for <oauth@core3.amsl.com>; Wed, 25 Nov 2009 08:15:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.598
X-Spam-Level:
X-Spam-Status: No, score=-2.598 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id th4bk0pir2yt for <oauth@core3.amsl.com>; Wed, 25 Nov 2009 08:15:55 -0800 (PST)
Received: from mail-pw0-f50.google.com (mail-pw0-f50.google.com [209.85.160.50]) by core3.amsl.com (Postfix) with ESMTP id 5C05B3A6AA0 for <oauth@ietf.org>; Wed, 25 Nov 2009 08:15:55 -0800 (PST)
Received: by pwi6 with SMTP id 6so5400319pwi.29 for <oauth@ietf.org>; Wed, 25 Nov 2009 08:15:48 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :from:date:message-id:subject:to:cc:content-type; bh=1vEx5VpA+TOWnocqtN6DIfuKL06I6RA5pn8ABbKs9Eo=; b=otXzUyIBb20tdnAL5yvaZRh12Ma/aMF5gkUgLAwmVTmlg2RRUddTumu2w5WK9yE8Ih 90nxMjHmwaSjWZGvjPiuHHNTp6Fn8JdOuzUJ0aPnXIxGKLB8G51AoztCTnZkgh69H1fL eAhjaDh3P7WV2zsDwCRMvD+hW4MnyBFyn18rc=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=uruIY3uROZj3gGWF3EPaBAn2bkDimnRJk7a5Rdx6tAHgZx5IYGBApIpq6Q4XXqPMvx +El7W963mT8FwC/roa3K+kZyehCgS6hvvrMymdWO02F4y2XIaems6jFDJpHqpU5yHL3l Wqk0DcQHGHIQHVbuTXceVx7ltTwmUW4trKZUo=
MIME-Version: 1.0
Received: by 10.140.136.19 with SMTP id j19mr427652rvd.187.1259165748095; Wed, 25 Nov 2009 08:15:48 -0800 (PST)
In-Reply-To: <D37F2DDE-CF75-487D-A978-6330BD694803@facebook.com>
References: <148C596691F29F4EA6968577BE2CDFAE06A1B9FE@SC-MBXC1.TheFacebook.com> <a9d9121c0911241635p4f2cc394vefe350b2ce3daa22@mail.gmail.com> <cb5f7a380911242215x5d364b2fmc56a4aea19141dec@mail.gmail.com> <a9d9121c0911242240i4bab482ep4faca88ae27af2e5@mail.gmail.com> <D37F2DDE-CF75-487D-A978-6330BD694803@facebook.com>
From: Leah Culver <leah.culver@gmail.com>
Date: Wed, 25 Nov 2009 08:15:28 -0800
Message-ID: <9184e2a80911250815i411a0780kf5a51399cc3b64d7@mail.gmail.com>
To: Brent Goldman <brent@facebook.com>
Content-Type: multipart/alternative; boundary="000e0cd2531a20eccc0479345f3e"
Cc: Naitik Shah <naitik@facebook.com>, "oauth@ietf.org" <oauth@ietf.org>, Luke Shepard <lshepard@facebook.com>
Subject: Re: [OAUTH-WG] Facebook, OAuth, and WRAP
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/oauth>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 25 Nov 2009 16:15:56 -0000

On Wed, Nov 25, 2009 at 6:10 AM, Brent Goldman <brent@facebook.com> wrote:

>
> On Nov 24, 2009, at 10:40 PM, Mike Malone wrote:
>
> > On Tue, Nov 24, 2009 at 10:15 PM, John Panzer <jpanzer@google.com>
> > wrote:
> >> On Tue, Nov 24, 2009 at 4:35 PM, Mike Malone <mjmalone@gmail.com>
> >> wrote:
> >>>
> >>> On Tue, Nov 24, 2009 at 10:57 AM, David Recordon
> >>> <davidrecordon@facebook.com> wrote:
> >>>>
> >>>> The largest issue in Facebook moving to OAuth 1.0 (and yes,
> >>>> Eran's new
> >>>> RFC is awesome) is the increase in the number of HTTP requests that
> >>>> developers will need to make in comparison to our current
> >>>> authentication
> >>>> mechanism.
> >>>
> >>> The OAuth _flow_ (in a browser) requires a couple additional
> >>> requests
> >>> compared to Facebook Connect (in a browser). But Facebook Connect is
> >>> really a different beast since it relies on the Browser and
> >>> Javascript
> >>> to magically set cookies cross domain and whatnot. I agree that it's
> >>> non-trivial to extend OAuth to cover this use case (we've sort of
> >>> done
> >>> it at Six Apart and the flow is clunky and complicated). And even if
> >>> you figure out how to make the flow work you can't really make
> >>> requests purely on the client side without compromising your
> >>> consumer
> >>> secret.
> >>>
> >>> That said, as far as I can tell, using OAuth for delegated
> >>> communication via an intermediary (a web app or iPhone app, for
> >>> example) should be doable for Facebook. The only real differences I
> >>> see between OAuth and WRAP for this use case are:
> >>>  * WRAP requires SSL instead of signing URLs
> >>
> >> Aside: If an SP specified OAuth PLAINTEXT signature mode, and used
> >> https:
> >> URLs for its API, would there be any effective difference between
> >> OAuth and
> >> WRAP for that SP?  (Best as I can tell the only difference would be a
> >> mandated %26 character in the OAuth blob you pass in to get access,
> >> but I
> >> may be missing something.)
> >
> > Yea, they're more or less the same. That's one use case for PLAINTEXT
> > OAuth. You still have a "signature" though, it's just the base64'd
> > signature base string.
>
> If they're more or less the same (besides the difference you
> mentioned), then why not also create an SSL signature mode which
> leaves out the oauth_signature param? If SSL mode is this essentially
> the same as WRAP, why not actually make this the bridge between the
> two specs?
>
>
+1 since this is easy enough to add to most OAuth libraries. I know (at
least) the PHP and Python ones break out the signature step into separate
methods so we could just add another one for SSL with no oauth_signature.
Hmm... the only thing that might have to change is some of the error
messages.

Leah