Re: [OAUTH-WG] Understanding how OpenSocial uses OAuth 1.0a
Eric Sachs <esachs@google.com> Tue, 16 March 2010 18:37 UTC
Return-Path: <esachs@google.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 6022C3A69F1 for <oauth@core3.amsl.com>; Tue, 16 Mar 2010 11:37:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.976
X-Spam-Level:
X-Spam-Status: No, score=-105.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
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 vLlmUTz8J7i1 for <oauth@core3.amsl.com>; Tue, 16 Mar 2010 11:37:40 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [216.239.44.51]) by core3.amsl.com (Postfix) with ESMTP id 94B373A69CD for <oauth@ietf.org>; Tue, 16 Mar 2010 11:37:31 -0700 (PDT)
Received: from hpaq6.eem.corp.google.com (hpaq6.eem.corp.google.com [10.3.21.6]) by smtp-out.google.com with ESMTP id o2GIbV8c004115 for <oauth@ietf.org>; Tue, 16 Mar 2010 11:37:32 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1268764652; bh=/ffCscyXTqXdBPWLRtljDSBsCyk=; h=MIME-Version:In-Reply-To:References:Date:Message-ID:Subject:From: To:Cc:Content-Type; b=Qc7phZ/l1v0qDgmZ2zKUUwZFj7rASjmZFVwF1R1k4SVVVV0wfZKH9x6+zjXx0MN/M IGcCsAuBvWlEyK3ogjBQQ==
DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=mime-version:in-reply-to:references:date:message-id:subject:from:to: cc:content-type:x-system-of-record; b=bI9Ve8RfyaeQMfdWZTV22sD98uvweUKoE7K7z1TOT8aBsYw+KpVo345xwNsg8m5Xc iCQ4OcxGXCErnVknhcuSQ==
Received: from vws6 (vws6.prod.google.com [10.241.21.134]) by hpaq6.eem.corp.google.com with ESMTP id o2GIbU8f007160 for <oauth@ietf.org>; Tue, 16 Mar 2010 19:37:30 +0100
Received: by vws6 with SMTP id 6so97695vws.22 for <oauth@ietf.org>; Tue, 16 Mar 2010 11:37:30 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.220.127.81 with SMTP id f17mr32889vcs.201.1268764647319; Tue, 16 Mar 2010 11:37:27 -0700 (PDT)
In-Reply-To: <fd6741651003161112y2eceb494ue28db2644ba1d32a@mail.gmail.com>
References: <fd6741651003161112y2eceb494ue28db2644ba1d32a@mail.gmail.com>
Date: Tue, 16 Mar 2010 11:37:27 -0700
Message-ID: <c4161f511003161137l49dd2786yba85661f1729c954@mail.gmail.com>
From: Eric Sachs <esachs@google.com>
To: David Recordon <recordond@gmail.com>
Content-Type: multipart/alternative; boundary="0016e68e8ba51b6b810481ef4a7e"
X-System-Of-Record: true
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Understanding how OpenSocial uses OAuth 1.0a
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: Tue, 16 Mar 2010 18:37:42 -0000
Here is one of the original writeups of OpenSocial + 2LO with a scanned napkin drawing :-) http://sites.google.com/site/oauthgoog/2leggedoauth/2opensocialrestapi On Tue, Mar 16, 2010 at 11:12 AM, David Recordon <recordond@gmail.com>wrote: > Kevin Marks has been bugging me for awhile to understand how > OpenSocial makes use of two-legged OAuth. I reached out to the team > and here's their description (via Evan Gilbert). In general it seems > like they're more making use of OAuth's RSA signature mechanism rather > than the user authorization and access token flows. > > 1. Developer (let's say iLike) creates a gadget that runs in multiple > containers. > 2. User Bob is views iLike gadget on MySpace and the iLike gadget > needs to make a request back to iLike's home server to get private > data (let's say the user's favorite bands) > 3. iLike gadget makes a JavaScript call to get this data from iLike > servers. This call uses a gadgets API (gadgets.io.makeRequest) that > proxies the request through MySpace servers. > 4. MySpace adds validated URL parameters to the request - most > importantly opensocial_viewer_id and opensocial_app_url. MySpace then > signs the request and then forwards on the request to iLike's servers. > 4.5 iLike can choose to sign request with MySpace's private key or > with a shared secret between iLike & MySpace. > 6. iLike verifies the signed request, using MySpace's public key or > the shared secret. > 7. iLike checks verifies opensocial_app_url to make sure this isn't a > different gadget asking for data. > 8. Lastly iLike looks up user data based on opensocial_viewer_id and > returns it back to the gadget. > > Intro to signed requests: > http://wiki.opensocial.org/index.php?title=Introduction_To_Signed_Requests > Validation of signed requests: > http://wiki.opensocial.org/index.php?title=Validating_Signed_Requests > _______________________________________________ > OAuth mailing list > OAuth@ietf.org > https://www.ietf.org/mailman/listinfo/oauth >
- [OAUTH-WG] Understanding how OpenSocial uses OAut… David Recordon
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Brian Eaton
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Eric Sachs
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Ethan Jewett
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Ethan Jewett
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Brian Eaton
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Brian Eaton
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Ethan Jewett
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Brian Eaton
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Brian Eaton
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Ethan Jewett
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Brian Eaton
- Re: [OAUTH-WG] Understanding how OpenSocial uses … Kevin Marks