Re: [OAUTH-WG] RFC 7009

Justin Richer <jricher@mit.edu> Wed, 07 June 2017 15:09 UTC

Return-Path: <jricher@mit.edu>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 89AD4129471 for <oauth@ietfa.amsl.com>; Wed, 7 Jun 2017 08:09:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.695
X-Spam-Level:
X-Spam-Status: No, score=-0.695 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=1.989, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, SUBJ_ALL_CAPS=1.506, T_KAM_HTML_FONT_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Tx3HcvaBr4Y7 for <oauth@ietfa.amsl.com>; Wed, 7 Jun 2017 08:09:53 -0700 (PDT)
Received: from dmz-mailsec-scanner-1.mit.edu (dmz-mailsec-scanner-1.mit.edu [18.9.25.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E07A1128BA2 for <oauth@ietf.org>; Wed, 7 Jun 2017 08:09:52 -0700 (PDT)
X-AuditID: 1209190c-699ff70000004228-da-5938173fc0cc
Received: from mailhub-auth-4.mit.edu ( [18.7.62.39]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by dmz-mailsec-scanner-1.mit.edu (Symantec Messaging Gateway) with SMTP id D9.23.16936.F3718395; Wed, 7 Jun 2017 11:09:51 -0400 (EDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) by mailhub-auth-4.mit.edu (8.13.8/8.9.2) with ESMTP id v57F9oXZ020546; Wed, 7 Jun 2017 11:09:51 -0400
Received: from artemisia.richer.local (static-96-237-195-53.bstnma.fios.verizon.net [96.237.195.53]) (authenticated bits=0) (User authenticated as jricher@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id v57F9mck020896 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 7 Jun 2017 11:09:49 -0400
From: Justin Richer <jricher@mit.edu>
Message-Id: <AC8468DB-189E-4EDA-B297-6E921B07AF22@mit.edu>
Content-Type: multipart/alternative; boundary="Apple-Mail=_61CEEF52-222B-4300-B99A-630FC7B77C6E"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Date: Wed, 07 Jun 2017 11:09:47 -0400
In-Reply-To: <B3FB2C2F-8227-4E10-B8D8-74563F6547D7@oracle.com>
Cc: Brig Lamoreaux <Brig.Lamoreaux@microsoft.com>, "<oauth@ietf.org>" <oauth@ietf.org>
To: Phil Hunt <phil.hunt@oracle.com>
References: <CY4PR03MB2920241827103D122E9EC82085FF0@CY4PR03MB2920.namprd03.prod.outlook.com> <FAF2C6DD-0A7A-4BE1-BDD3-E54B822CCD4D@mit.edu> <DM5PR03MB292263A0429C2BEE01E95BB085CB0@DM5PR03MB2922.namprd03.prod.outlook.com> <cc72fa5b-cd75-e6d6-7b80-af5e009c5cb2@mit.edu> <DM5PR03MB292236BB93A86422285D63DA85CB0@DM5PR03MB2922.namprd03.prod.outlook.com> <D9196138-6F17-4382-A14A-FECAD0A70357@mit.edu> <B3FB2C2F-8227-4E10-B8D8-74563F6547D7@oracle.com>
X-Mailer: Apple Mail (2.3273)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFuplleLIzCtJLcpLzFFi42IRYrdT17UXt4g0uDdR3eLMs9/MFiffvmKz WDC/kd2B2WPJkp9MHq07/rJ7fHx6iyWAOYrLJiU1J7MstUjfLoEr4+TRi4wFky8zVmz6u4Gp gXHeLsYuRk4OCQETiZ2zN7F2MXJxCAksZpK4fO8fO0hCSGADo0TnjACIxAMmiUltvawgCTYB VYnpa1qYQGxeASuJ7zN2AdkcHMwCSRLnj/KBmLwC+hK9z8HmCwsoSBxecpQZxGYRUJE40nsP LM4pYCdxbeZqsDizQLzEha/TwGwRoJpvV68zQqw9ySzx7+02NohDZSVuzb7EPIGRfxbCtlkI 22aBTdKWWLbwNTOErSmxv3s5C6a4hkTnt4msCxjZVjHKpuRW6eYmZuYUpybrFicn5uWlFuka 6uVmluilppRuYgSFOqckzw7GM2+8DjEKcDAq8fBm7DGLFGJNLCuuzD3EKMnBpCTKW3DTPFKI Lyk/pTIjsTgjvqg0J7X4EKMEB7OSCK8fn0WkEG9KYmVValE+TEqag0VJnFdCozFCSCA9sSQ1 OzW1ILUIJivDwaEkwRsrBtQoWJSanlqRlplTgpBm4uAEGc4DNLwIpIa3uCAxtzgzHSJ/ilFR Spz3iyhQQgAkkVGaB9cLSkUJbw+bvmIUB3pFmDcHpJ0HmMbgul8BDWYCGsx3yQRkcEkiQkqq gTGWZ83rU1z/dl7pOj1FZq1Fvv3HtNtMabYtJqqsN9dMC91wb86+AycExcp3pDnyaNbd+fOm +fvO8+oeLK5REvyJesJ9O15O6vSTWd+pfkQz5UXGvqzzyo3VqmK3dFnXT2CVYEj7OpfX2vX9 koXtQTPVUtUPtk7mazva4bkqs6TA7FZN/lu/t0osxRmJhlrMRcWJAGFDLnkgAwAA
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/QXjxcs08HPbeLTQUw-viEuwL8qA>
Subject: Re: [OAUTH-WG] RFC 7009
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/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, 07 Jun 2017 15:09:56 -0000

Agree, and this was discussed at the time of 7662’s ratification but there was no agreement on a delivery mechanism. I’d like to see a SECEVENT with a 7662 payload, which would take care of a large number of use cases, including “token revoked” and “new token issued” being delivered downstream to RS’s. It’s a good compliment to the callback-based mechanism in 7662.

 — Justin

> On Jun 6, 2017, at 6:31 PM, Phil Hunt (IDM) <phil.hunt@oracle.com> wrote:
> 
> This is why i expect a secevent token revocation event to be defined to complement 7009 once secevents moves further along. 
> 
> We want to be able to know in near real time when a token is revoked to avoid constant checks to see if a token is still good. 
> 
> Phil
> 
> On Jun 6, 2017, at 3:18 PM, Justin Richer <jricher@mit.edu <mailto:jricher@mit.edu>> wrote:
> 
>> That really depends on the nature of your tokens and how you manage their internal validity. It’s really as soon as possible, isn’t it? If you can invalidate it immediately, do that. In our implementation, we delete it from the data store as soon as the revocation request comes in, which invalidates it. Downstream RS’s might have cached introspection (RFC7662) results so they’ll find out once their caches expire. If you’ve got some other synchronization method that takes some time to propagate, then that’s going to be the answer. All of this is dependent on your implementation and not on the revocation protocol, but in all cases I see no reason to *wait* any amount of time to revoke a token that’s been requested for revocation by a client, for any reason. The client is effectively saying “if you see this token again it isn’t from me”, which should be a good enough indication to throw it out as soon as possible.
>> 
>> This all falls apart if you’re using self-contained tokens — there’s not a good way to invalidate a self-contained token without using some kind of lookup service. RFC7662 defines such a service for OAuth, but then your tokens aren’t really fully self-contained anymore and you’re simply stuck waiting for the compromised token to expire.
>> 
>>  — Justin
>> 
>>> On Jun 6, 2017, at 6:11 PM, Brig Lamoreaux <Brig.Lamoreaux@microsoft.com <mailto:Brig.Lamoreaux@microsoft.com>> wrote:
>>> 
>>> This is where we have the question around timeouts. If the client thinks its token is compromised, how long should 7009 take to invalidate.
>>>  
>>>  
>>>   <>
>>> From: Justin Richer [mailto:jricher@mit.edu <mailto:jricher@mit.edu>] 
>>> Sent: Tuesday, June 6, 2017 2:46 PM
>>> To: Brig Lamoreaux <Brig.Lamoreaux@microsoft.com <mailto:Brig.Lamoreaux@microsoft.com>>
>>> Cc: <oauth@ietf.org <mailto:oauth@ietf.org>> <oauth@ietf.org <mailto:oauth@ietf.org>>
>>> Subject: Re: [OAUTH-WG] RFC 7009
>>>  
>>> 7009 doesn't, really. If the client thinks its token is compromised, it can revoke it using 7009. If the server decides the token is compromised, it invalidates it on its own, not involving 7009. The client finds out the token isn't good anymore the next time it tries to use the token -- OAuth clients always need to be prepared for their token not working at some point. Good news is that the remedy for having a token that doesn't work is to just do OAuth again.
>>> 
>>>  -- Justin
>>> 
>>>  
>>> On 6/6/2017 5:43 PM, Brig Lamoreaux wrote:
>>> Thanks for the reply. How do the RFC address a token that has been compromised?
>>>  
>>> From: Justin Richer [mailto:jricher@mit.edu <mailto:jricher@mit.edu>] 
>>> Sent: Tuesday, June 6, 2017 9:12 AM
>>> To: Brig Lamoreaux <Brig.Lamoreaux@microsoft.com> <mailto:Brig.Lamoreaux@microsoft.com>
>>> Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> <oauth@ietf.org> <mailto:oauth@ietf.org>
>>> Subject: Re: [OAUTH-WG] RFC 7009
>>>  
>>> OAuth doesn’t specify and specific timeout period, it’s up to the AS that issues the token to determine how long the token is good for. RFC7009 isn’t about timeout periods, it’s about the client proactively telling the AS that it doesn’t need a token anymore and the AS should throw it out, likely prior to any timeouts.
>>>  
>>>  — Justin
>>>  
>>> On May 25, 2017, at 12:23 PM, Brig Lamoreaux <Brig.Lamoreaux@microsoft.com <mailto:Brig.Lamoreaux@microsoft.com>> wrote:
>>>  
>>> Hi,
>>> 
>>> What is the specified timeout period to invalidate the token?
>>>  
>>> Brig Lamoreaux
>>> Data Solution Architect
>>> brig.lamoreaux@microsoft.com <mailto:brig.lamoreaux@microsoft.com>
>>> 480-828-8707
>>> US Desert/Mountain Tempe
>>>  
>>>  
>>> <image001.jpg>
>>>  
>>>  
>>>  
>>> _______________________________________________
>>> OAuth mailing list
>>> OAuth@ietf.org <mailto:OAuth@ietf.org>
>>> https://www.ietf.org/mailman/listinfo/oauth <https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253A-252F-252Fwww.ietf.org-252Fmailman-252Flistinfo-252Foauth-26data-3D02-257C01-257CBrig.Lamoreaux-2540microsoft.com-257C538020425e8a411a106408d4acf6ca32-257C72f988bf86f141af91ab2d7cd011db47-257C1-257C0-257C636323623328232170-26sdata-3DUHQOwegm2k8MbWPCYHR3a4ted39xMFlfjil4FdJqyA8-253D-26reserved-3D0&d=DwMFaQ&c=RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057SbK10&r=JBm5biRrKugCH0FkITSeGJxPEivzjWwlNKe4C_lLIGk&m=7yMIczBrZnmQ14Nkf4MBGaIHnxRyiLGXB1Xhuxp1Ur0&s=mGIUcqB4BzW6-s_7X9QmZ5qldZNN__gUjCG209QWW4c&e=>
>>>  
>>>  
>> 
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org <mailto:OAuth@ietf.org>
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_oauth&d=DwICAg&c=RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057SbK10&r=JBm5biRrKugCH0FkITSeGJxPEivzjWwlNKe4C_lLIGk&m=7yMIczBrZnmQ14Nkf4MBGaIHnxRyiLGXB1Xhuxp1Ur0&s=TaKHdPgtEPkCV_YuOHlkoXRZJjf0k8Y4-yowD3YbhPw&e= <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_oauth&d=DwICAg&c=RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057SbK10&r=JBm5biRrKugCH0FkITSeGJxPEivzjWwlNKe4C_lLIGk&m=7yMIczBrZnmQ14Nkf4MBGaIHnxRyiLGXB1Xhuxp1Ur0&s=TaKHdPgtEPkCV_YuOHlkoXRZJjf0k8Y4-yowD3YbhPw&e=>