Re: [OAUTH-WG] [UNVERIFIED SENDER] RE: Cryptographic hygiene and the limits of jwks_uri

Neil Madden <neil.madden@forgerock.com> Fri, 10 January 2020 18:27 UTC

Return-Path: <neil.madden@forgerock.com>
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 A728A120B13 for <oauth@ietfa.amsl.com>; Fri, 10 Jan 2020 10:27:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.996
X-Spam-Level:
X-Spam-Status: No, score=-1.996 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=forgerock.com
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 Xpc63XMYzWPY for <oauth@ietfa.amsl.com>; Fri, 10 Jan 2020 10:27:27 -0800 (PST)
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 987FC120B62 for <oauth@ietf.org>; Fri, 10 Jan 2020 10:27:04 -0800 (PST)
Received: by mail-wm1-x335.google.com with SMTP id p17so2988446wmb.0 for <oauth@ietf.org>; Fri, 10 Jan 2020 10:27:04 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=forgerock.com; s=google; h=content-transfer-encoding:from:mime-version:subject:date:message-id :references:cc:in-reply-to:to; bh=1QuCZEqiA9+8uhRWnvtl8xj/voePE8gQze+E0XhsWPE=; b=AGEZM7zHcHzDeosKVtP920mnFbCEuOc0fuVFBDeX/THhzXHGySlHY0AVgVPcAflIBG ZrCfX4MBdIZ8YiFB+1JtED0Z5p9EZsBEFPCNN4L9iazN522iw/WX2fHr7Te/U3/2sND2 IW32DkCZ+RJ7mbzHrDzc+Wi84Vz8AV0RaC55Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:from:mime-version :subject:date:message-id:references:cc:in-reply-to:to; bh=1QuCZEqiA9+8uhRWnvtl8xj/voePE8gQze+E0XhsWPE=; b=GlCUipzfQEFeZetQyGz5CYmIILgG2YKXE5BA4v2832Vq/tKEw358YrQYXqpGpmVAyA J0znrXGo67WLyTIVvJ0/PGixL4o2TkhPgy1kJoIFDUQwUgitTrGU+TlDpOXevrOTAIa9 zAHkEGsVKAqKTSP/1xvGFekW2mBBRAlbaPmmLE529mdBEbAgbwPu52Ccu/DKTKkItE5Q w+RMFFjvfN7w+eGzNnJrw8C7OO8iljrgbpaGLksdsAJLInWfirl9HCzjYoC5ddf/f0a2 6t/e+JNJbRUQzopx0SQ4/ZIGIU7wX5JQkimjLk1j4hOPYB+35jrLsXShnrZ+X8Uj/6DX avVg==
X-Gm-Message-State: APjAAAWv6Ehesux3iEwAn5GoCV3MLJb4aCdhV2aDwjLzYncwka2dU9V9 JsnNN1va9WkA9+jmWUWgHhYBEw==
X-Google-Smtp-Source: APXvYqzvNlTBU+9WjOpYD4K9ZS0bS+smesyPpxmD7zC99JjeUR1zNJb6URlqncdpr40OtpREhrR6PQ==
X-Received: by 2002:a05:600c:246:: with SMTP id 6mr5953199wmj.122.1578680819893; Fri, 10 Jan 2020 10:26:59 -0800 (PST)
Received: from ?IPv6:2a01:4c8:3e:f3a1:2c7f:8e44:d8c9:8ce1? ([2a01:4c8:3e:f3a1:2c7f:8e44:d8c9:8ce1]) by smtp.gmail.com with ESMTPSA id e12sm3168069wrn.56.2020.01.10.10.26.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 10 Jan 2020 10:26:59 -0800 (PST)
Content-Type: multipart/alternative; boundary="Apple-Mail-0F06A7BC-6AE7-402A-B5EB-09DDF4F3B734"
Content-Transfer-Encoding: 7bit
From: Neil Madden <neil.madden@forgerock.com>
Mime-Version: 1.0 (1.0)
Date: Fri, 10 Jan 2020 18:26:58 +0000
Message-Id: <23D54EBE-359C-40FF-8204-9F03E45D09E9@forgerock.com>
References: <CAGBSGjpFMKTCNYgeh4p7Nyh6urTbmQ0qYFHPUa+OX51Hj88UVg@mail.gmail.com>
Cc: Dick Hardt <dick.hardt@gmail.com>, oauth <oauth@ietf.org>, Mike Jones <Michael.Jones=40microsoft.com@dmarc.ietf.org>, "Richard Backman, Annabelle" <richanna=40amazon.com@dmarc.ietf.org>
In-Reply-To: <CAGBSGjpFMKTCNYgeh4p7Nyh6urTbmQ0qYFHPUa+OX51Hj88UVg@mail.gmail.com>
To: Aaron Parecki <aaron@parecki.com>
X-Mailer: iPhone Mail (17C54)
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/1xrGlZ_XodLiigI2E1qDgXawTPI>
Subject: Re: [OAUTH-WG] [UNVERIFIED SENDER] RE: Cryptographic hygiene and the limits of jwks_uri
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 10 Jan 2020 18:27:39 -0000

The problem with specifying a property on the key itself is that a microservice might lie about what it’s keys are for. I think you either need separate documents or some separate metadata mapping uses to key ids. 

— Neil

> On 10 Jan 2020, at 18:19, Aaron Parecki <aaron@parecki.com> wrote:
> 
> !
> Can the keys in the document at the jwks_uri indicate what they are for? Either by adding other top-level properties next to "keys" or by specifying a property on a key itself? At least that way implementations that expect just one value of jwks_uri wouldn't have to change.
> 
> Aaron
> 
> 
> 
>> On Fri, Jan 10, 2020 at 12:16 PM Dick Hardt <dick.hardt@gmail.com> wrote:
>> Yes. Thanks for clarifying.
>> ᐧ
>> 
>>> On Fri, Jan 10, 2020 at 10:14 AM Torsten Lodderstedt <torsten@lodderstedt.net> wrote:
>>> You mean additional JWKS URIs, for example?
>>> 
>>>>> Am 10.01.2020 um 19:09 schrieb Dick Hardt <dick.hardt@gmail..com>:
>>>>> 
>>>> 
>>>> Perhaps I am misunderstanding what Annabelle was getting at, but having more than one key in the metadata document would solve the the issue. IE, extensions would define their own key instead of using the same one.
>>>> 
>>>> The metadata document itself was an extension. 
>>>> 
>>>> 
>>>>> On Fri, Jan 10, 2020 at 9:58 AM Torsten Lodderstedt <torsten@lodderstedt.net> wrote:
>>>>> 
>>>>> 
>>>>> > Am 10.01.2020 um 18:23 schrieb Dick Hardt <dick.hardt@gmail.com>:
>>>>> > 
>>>>> > As OAuth 2.0 has been extended, the AS is now also an OpenID Connect Provider, and the access token is being defined. These extensions have assumed all of this functionality is a monolith. 
>>>>> > 
>>>>> > I'm not suggesting that we MUST make changes to existing extensions, but design future extensions so that an implementation can separate duties if desired.
>>>>> 
>>>>> How do you envision this to work? As you said, OAuth 2.0 is built on the assumption the AS is (at least logically) a monolith. All extension were built on that underlying assumption. I don’t see how an arbitrary extension can relax that assumption and still be compatible with the rest (just revisit the discussion re PAR and keys).
>>>>> 
>>>>> I think we should accept this design assumption, in the same way we should accept form encoding as request format instead of JSON, for OAuth 2.0 extensions. 
>>>>> 
>>>>> OAuth 3.0 could explicitely be developed with different architectures in mind.
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
> -- 
> ----
> Aaron Parecki
> aaronparecki.com
> @aaronpk
> 
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth