Re: [OAUTH-WG] Assertion flow: please add optional refresh_token in response
Andrew Arnott <andrewarnott@gmail.com> Tue, 15 June 2010 14:03 UTC
Return-Path: <andrewarnott@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 51F0C3A6A6D for <oauth@core3.amsl.com>; Tue, 15 Jun 2010 07:03:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.632
X-Spam-Level:
X-Spam-Status: No, score=-1.632 tagged_above=-999 required=5 tests=[AWL=0.966, 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 UcDpYpCZ8h1Y for <oauth@core3.amsl.com>; Tue, 15 Jun 2010 07:03:21 -0700 (PDT)
Received: from mail-yw0-f193.google.com (mail-yw0-f193.google.com [209.85.211.193]) by core3.amsl.com (Postfix) with ESMTP id 998083A6801 for <oauth@ietf.org>; Tue, 15 Jun 2010 07:03:21 -0700 (PDT)
Received: by ywh31 with SMTP id 31so3784107ywh.20 for <oauth@ietf.org>; Tue, 15 Jun 2010 07:03:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=zn1CaDW8TNCzuszQ1qAdaHzhdZbxNPrx1E9W1naASyQ=; b=FJbuCwBxYXvZ7ogMtF3p+dvFTNzp9rNSF8zVB8VGYhst0W86GwUMMjI9j7Xx/5j4uu WBgRCKlLAi+we0X77fEkM868LzGAOvakRRLHPjzMsnMbZFsaN7FHYZiyhxN4d8w/joNs KSnz26hkJWzz8HARP7De0d4imwcj/WYBnXFoY=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=XfNY1RGK2z9gmenahgpZfdJaLEGly2zQyJ4rpfF4J4IYfCfHmuzRSTVlPlyQEF9VI9 kx1hfC1gQlYZYlHynTdScgOj1d3X04SY4eumDlKVKQ8sQBhlPN213y/GhjiHQZJ98R23 uP1w567a79LD3nITFluCzI1D2My6WAkv8EmNs=
MIME-Version: 1.0
Received: by 10.151.59.13 with SMTP id m13mr8178853ybk.250.1276610599784; Tue, 15 Jun 2010 07:03:19 -0700 (PDT)
Received: by 10.151.26.19 with HTTP; Tue, 15 Jun 2010 07:03:19 -0700 (PDT)
In-Reply-To: <90C41DD21FB7C64BB94121FBBC2E72343B3EBB68C9@P3PW5EX1MB01.EX1.SECURESERVER.NET>
References: <AANLkTil1viRqVgwJzmq7N1W21TPeT5RuclBF5DmPvVVM@mail.gmail.com> <90C41DD21FB7C64BB94121FBBC2E72343B3EBB68C9@P3PW5EX1MB01.EX1.SECURESERVER.NET>
Date: Tue, 15 Jun 2010 07:03:19 -0700
Message-ID: <AANLkTilRNaMzu9018HcZLb_j-vKbh4Mtl1LR_BYtnro-@mail.gmail.com>
From: Andrew Arnott <andrewarnott@gmail.com>
To: Eran Hammer-Lahav <eran@hueniverse.com>
Content-Type: multipart/alternative; boundary="00151750e27e5110e40489121146"
Cc: "OAuth WG (oauth@ietf.org)" <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Assertion flow: please add optional refresh_token in response
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, 15 Jun 2010 14:03:23 -0000
In this case, the assertion the client starts with is from Windows authentication, and the assertion is obtained from an Active Directory server that is inaccessible unless the client app is running on a computer currently connected to the corporate network. I imagine that assertion has a limited lifetime, and the client doesn't have access to it anyway since it is added to the HTTP request by the platform, and is a challenge-response based protocol and therefore cannot be replayed later. So sure, I can read "SHOULD NOT" as a recommendation and do it anyway (using the standard parameter name refresh_token). The assertion itself being a challenge-response type thing in the transport itself, this profile seems to apply even less unless it can be worded to say the assertion can be found elsewhere. (there's precedence for this in the spec that talks about how client credentials can be found in any of multiple places but must only be found in ONE of them). Let me know what you think. If I need to invent my own profile I guess I can do that. -- Andrew Arnott "I [may] not agree with what you have to say, but I'll defend to the death your right to say it." - S. G. Tallentyre On Mon, Jun 14, 2010 at 8:50 PM, Eran Hammer-Lahav <eran@hueniverse.com>wrote: > First, the spec says “SHOULD NOT issue a refresh token” which means, don’t > do it unless you have to. But what stops the client from keeping the same > assertion and reusing it later? > > > > As for using other methods for providing an assertion, you need to be more > specific about what you have in mind. But either way, you can extend the > token endpoint to support other ways of providing assertions. > > > > EHL > > > > *From:* oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] *On Behalf > Of *Andrew Arnott > *Sent:* Monday, June 14, 2010 8:32 PM > *To:* OAuth WG (oauth@ietf.org) > *Subject:* [OAUTH-WG] Assertion flow: please add optional refresh_token in > response > > > > For an application I'm building, the installed client app will have > intermittent windows of time where it can obtain a (non-OAuth) assertion for > user identity. During this time, it seems appropriate for it to use the > assertion flow to obtain an OAuth authorization so that it can impersonate > the user. So far this is just standard Assertion Flow stuff. But without a > refresh_token, the app will break when the access token expires if the app > doesn't have the ability at the moment (due to not being on the corporate > network at the moment for example) to obtain a new assertion. Since the > security model for this app would certainly allow for a refresh_token to be > issued from the original OAuth authorization server exchange, this would > solve it, if the spec didn't specifically ban such a parameter. > > Also, the user identity is asserted to the authorization server *not*through an > *assertion* parameter but using Kerberos (I assume) as part of the HTTP > protocol, so perhaps the spec for the assertion flow can specifically allow > for assertions to be carried as part of the transport? > > -- > Andrew Arnott > "I [may] not agree with what you have to say, but I'll defend to the death > your right to say it." - S. G. Tallentyre >
- Re: [OAUTH-WG] Assertion flow: please add optiona… Brian Eaton
- [OAUTH-WG] Assertion flow: please add optional re… Andrew Arnott
- Re: [OAUTH-WG] Assertion flow: please add optiona… Eran Hammer-Lahav
- Re: [OAUTH-WG] Assertion flow: please add optiona… Dick Hardt
- Re: [OAUTH-WG] Assertion flow: please add optiona… Andrew Arnott
- Re: [OAUTH-WG] Assertion flow: please add optiona… Andrew Arnott
- Re: [OAUTH-WG] Assertion flow: please add optiona… Dick Hardt
- Re: [OAUTH-WG] Assertion flow: please add optiona… Dick Hardt
- Re: [OAUTH-WG] Assertion flow: please add optiona… Andrew Arnott
- Re: [OAUTH-WG] Assertion flow: please add optiona… George Fletcher
- Re: [OAUTH-WG] Assertion flow: please add optiona… Torsten Lodderstedt
- Re: [OAUTH-WG] Assertion flow: please add optiona… Brian Eaton
- Re: [OAUTH-WG] Assertion flow: please add optiona… Torsten Lodderstedt