Re: [Txauth] WG Review: Grant Negotiation and Authorization Protocol (gnap)
Tom Jones <thomasclinganjones@gmail.com> Sat, 27 June 2020 20:45 UTC
Return-Path: <thomasclinganjones@gmail.com>
X-Original-To: txauth@ietfa.amsl.com
Delivered-To: txauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2AAD83A0795 for <txauth@ietfa.amsl.com>; Sat, 27 Jun 2020 13:45:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Level:
X-Spam-Status: No, score=-2.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 ndc3ini-ZqHX for <txauth@ietfa.amsl.com>; Sat, 27 Jun 2020 13:45:15 -0700 (PDT)
Received: from mail-ot1-x333.google.com (mail-ot1-x333.google.com [IPv6:2607:f8b0:4864:20::333]) (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 A902C3A0778 for <txauth@ietf.org>; Sat, 27 Jun 2020 13:45:15 -0700 (PDT)
Received: by mail-ot1-x333.google.com with SMTP id 18so11899574otv.6 for <txauth@ietf.org>; Sat, 27 Jun 2020 13:45:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=UcJQvoMr9muj3LyO9viNQSUrEs0M58hclN/TLYj1ZwI=; b=VXQQCePReMgR+vGoeK6skE/1+I7kdyDsrYU53DFaYwq4WdQFYQizIGUmMzh2UPEVDu sIele0uaLBnqWzZbddtCddR9hUruWt/w9Ef+CUoXwOA7F5MoONYSc1D+f4VJ93Ci58QU 5Eg1U8UJuj96JF13EO4ArwmLLWrAT0vjMH4Q7c+Ei2xye0jsongcb4w016sT5rFTPi6c 0NY9qoH+aqKwEiDocCG0e4+PkyOFccwE4/xFar35ZnXctITDt6naMeAmFKgFvtua3zUc gHM44jHN2NnzRcv4l3VoRwsrWtgYtoxTggzzXM6aIBQWQesvEw5crjc6K1rktrq+JwMe F/GQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=UcJQvoMr9muj3LyO9viNQSUrEs0M58hclN/TLYj1ZwI=; b=DaH4rnV4VAllKsykXSQXE3TbqjK0N5g7JJaVJMYswR2TtLSAVkQCaocnJoYgRK4PMv QmP9YRIZj1ghxZhMpnWZOT3BajlGARQu6p5RCiMYU117NWymANr9+3dk+bEAWjmYx+By NoeKsE6uoyMcXwGAuRwTGim0961GL8QPD9pu5uEAzE1ZSxtA7kB+fneFQEQ/PEixEsQg wqC09knioiJZDSU1QiMHpacwhkslxNJzVdJuBtVPzBH5Aokrl/3BKkfZpwpFoTlb1Qc6 M6NuZSoDaM1pCGgjLJKWptKtWMalhZW2YJzgWXHtDvy7XE1xMjG4zsJtbb19srS2kvxE 7btQ==
X-Gm-Message-State: AOAM531RlL95Xma8N1dlByYYEyYCTt1Obv8aSstOczvPYRID+KAXXPLk 5uEH2J0CZ4aYKiLEV26JA+OiPFmvsKeZLnRIwH4=
X-Google-Smtp-Source: ABdhPJxtKVGVUL7YIOuSwOpOmFGoMF0m3kq4uWM9Z0pV/pu/p6LPlo+x4SKkvp2pZjwLGZYfTlw9PwQrTWJ7DO39W7I=
X-Received: by 2002:a05:6830:4cd:: with SMTP id s13mr1922690otd.358.1593290714936; Sat, 27 Jun 2020 13:45:14 -0700 (PDT)
MIME-Version: 1.0
References: <159318778098.29096.6482921706088845432@ietfa.amsl.com> <cdbb228a-1412-e2e2-fe15-852fdd4649ac@free.fr> <CAD9ie-vrMk_D8WSz7h5aAw_FmnBJDkRJyWQeXTTsAP3ofH0iNg@mail.gmail.com> <353AF4E4-4939-4994-960E-54B0AADC6253@mit.edu> <CAD9ie-ssrJSRgUjAzKRSV4Hzd30ge8Ovw4u14km1HidhQWAFMg@mail.gmail.com>
In-Reply-To: <CAD9ie-ssrJSRgUjAzKRSV4Hzd30ge8Ovw4u14km1HidhQWAFMg@mail.gmail.com>
From: Tom Jones <thomasclinganjones@gmail.com>
Date: Sat, 27 Jun 2020 13:45:03 -0700
Message-ID: <CAK2Cwb7LimwyWE6iGdq-zBGZXakSZyjExtUGO_ot1eVXTU=-+A@mail.gmail.com>
To: Dick Hardt <dick.hardt@gmail.com>
Cc: Justin Richer <jricher@mit.edu>, Denis <denis.ietf@free.fr>, txauth@ietf.org
Content-Type: multipart/alternative; boundary="00000000000016790a05a916e76b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/txauth/uoLROsVR3QkKZWXmxNEE-66tBzI>
Subject: Re: [Txauth] WG Review: Grant Negotiation and Authorization Protocol (gnap)
X-BeenThere: txauth@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <txauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/txauth>, <mailto:txauth-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/txauth/>
List-Post: <mailto:txauth@ietf.org>
List-Help: <mailto:txauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/txauth>, <mailto:txauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 27 Jun 2020 20:45:18 -0000
+1 - Right on Justin. Peace ..tom On Sat, Jun 27, 2020 at 1:15 PM Dick Hardt <dick.hardt@gmail.com> wrote: > +1 to 'We shouldn’t let “OAuth 2 doesn’t do it that way” be the limiting > factor here.' > > Conversely, I worry about scope creep if we are forced to complicate the > protocol to cover use cases that are only theoretical. (I'm not implying > that any of the use cases discussed in this thread are in that category). > > /Dick > > On Sat, Jun 27, 2020 at 12:56 PM Justin Richer <jricher@mit.edu> wrote: > >> Removing the IESG as this is really a more internal-to-the-group >> discussion, as it comes down to the scope of use cases that we want to >> address here in GNAP. >> >> While it is definitely important to understand how and why OAuth 2 does >> things, we do need to keep use cases like Denis’s in mind. It’s not unheard >> of today for a single OAuth 2 RS to accept tokens from multiple AS’s. In >> fact, we’ve even got cases with things like the Solid project where the RS >> will take a token from :any: AS so long as it can verify that it’s approved >> by the resource owner. While the Solid platform has its own special >> layering in place to allow this, our model should not assume a closely-tied >> connection between an RS and any single AS. The question of :how: we solve >> that is, of course, up to the WG to figure out over time. >> >> Taking that even further, I think the idea of an AS that’s personal to >> the user, to promote privacy and control, is a very good one. In fact, this >> is one of the main selling points of UMA2 and its federated authorization >> mechanisms. With GNAP, we might be able to deliver on this promise even >> more than UMA has been able to, and it’s my hope that we can have a >> cohesive protocol that allows both user-to-self and user-to-another >> delegation sharing without needing to use different mechanisms. >> >> Additionally, the RS-first method is also something from the UMA2 work >> that we should be working on, as it touches on AS discovery, AS/RS >> communication, and a few other aspects of the protocol design. It’s not a >> trivial problem by any stretch, and there are huge privacy and security >> implications, but there’s both need for it and some good prior art to pull >> from. In fact, XYZ’s whole notion of a “transaction handle” is an >> adaptation of UMA2’s “permission ticket”. In UMA, this ticket is first >> issued to the RS by the AS, and the RS then hands it to the client, which >> starts the negotiation for access. I envision something very similar >> happening here with GNAP, where a client can get something to bootstrap the >> process at the AS. The important thing, to me, is that we don’t have to >> jump through a bunch of weird hoops such that the AS-first and RS-first >> cases look completely different, as they do in UMA2 and OAuth 2 >> respectively today. We’ve got the chance to have a clean and cohesive >> protocol here, let’s not miss that opportunity. >> >> So in sum, the trust model of OAuth 2 is not sufficient to cover >> everything, and the model that Denis is proposing is something we should at >> least look at as a use case. Where Denis and I seem to disagree is whether >> this trust model should be the :only: one that we address with the >> protocol. I strongly believe, as I believe much of this group does, that we >> can’t discount or ignore (or make things overly difficult for) the tightly >> bound AS/RS combos, or any type of static setup where the RS offloads its >> trust fully to the AS. But it’s my belief that we should be able to do so >> without needlessly throwing out all of the OAuth 2 use cases. >> >> We shouldn’t let “OAuth 2 doesn’t do it that way” be the limiting factor >> here. We need to understand the what and wherefore of things that OAuth 2 >> is bad at, otherwise we’re just going to re-invent OAuth 2 and inherit its >> problems. >> >> — Justin >> >> On Jun 26, 2020, at 1:39 PM, Dick Hardt <dick.hardt@gmail.com> wrote: >> >> Denis, thanks for sharing your thoughts, some clarifications on your >> statements inserted: >> >> On Fri, Jun 26, 2020 at 9:42 AM Denis <denis.ietf@free.fr> wrote: >> <snip> >> >>> *New proposed charter* >>> >>> <snip> >> >>> >>> Resource servers inform their clients about which access token formats >>> are acceptable and depending upon the king of operation >>> that is requested, which kind of attributes are needed and from which >>> ASs that my be obtained. >>> >>> While at times this may be appropriate, at other times disclosing the >> attributes the RS requires is not needed by the client. For example, an >> enterprise client accessing a resource does not need to know which groups a >> user belongs to, but the RS may require that to determine if the user >> running the client has access... >> >>> >>> A major difference with OAuth 2.0 is that there is no bilateral trust >>> relationship between an authorization server and a resource server: >>> for a given category of attributes, a resource server may trust one or >>> more authorization servers. Another major difference with OAuth 2.0. >>> is that the content of an attributes token is meant to be accessible to >>> the client. >>> >>> This is not how OAuth 2.0 works. See slides 7 and 8 from my original >> IETF presentation on what became OAuth 2.0 >> >> https://www.slideshare.net/gueste648b/ietf-77-oauth-wrap-presentation >> >> The AS may not even know who the RS (or PR in the slides) is. >> >> <snip> >> >>> >>> I got rid of the word "delegation": the client does not delegate >>> anything to an authorization server. If it would, this would mean that the >>> authorization server >>> would be able to act as the client and could know everything that the >>> client will do, which comes into contradiction with the user's privacy. >>> >> >> The above is not true. >> >> The Resource Owner is delegating access control to the AS in >> authorization use cases. >> >> The client is may be delegating user authentication to the AS in identity >> claim use cases. >> >> The AS can act as the client in many OAuth deployments, as the access >> token is a bearer token. That does not mean the AS knows what the client is >> doing. >> >> /Dick >> >> ᐧ >> -- >> Txauth mailing list >> Txauth@ietf.org >> https://www.ietf.org/mailman/listinfo/txauth >> >> >> -- >> Txauth mailing list >> Txauth@ietf.org >> https://www.ietf.org/mailman/listinfo/txauth >> > -- > Txauth mailing list > Txauth@ietf.org > https://www.ietf.org/mailman/listinfo/txauth >
- [Txauth] WG Review: Grant Negotiation and Authori… The IESG
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Justin Richer
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Tom Jones
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Justin Richer
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Tom Jones
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Justin Richer
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Justin Richer
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Mike Varley
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Tom Jones
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Roman Danyliw
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Roman Danyliw
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Dick Hardt
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Roman Danyliw
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Tom Jones
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Tom Jones
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Justin Richer
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Denis
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Tom Jones
- Re: [Txauth] WG Review: Grant Negotiation and Aut… Justin Richer