Re: [GNAP] Consensus Call on Continuation Request

Fabien Imbault <fabien.imbault@gmail.com> Fri, 11 December 2020 18:24 UTC

Return-Path: <fabien.imbault@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 A33CB3A0DCD for <txauth@ietfa.amsl.com>; Fri, 11 Dec 2020 10:24:53 -0800 (PST)
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 p2sW_mOOMenN for <txauth@ietfa.amsl.com>; Fri, 11 Dec 2020 10:24:51 -0800 (PST)
Received: from mail-io1-xd36.google.com (mail-io1-xd36.google.com [IPv6:2607:f8b0:4864:20::d36]) (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 5C7833A0CF4 for <txauth@ietf.org>; Fri, 11 Dec 2020 10:24:51 -0800 (PST)
Received: by mail-io1-xd36.google.com with SMTP id q137so10408027iod.9 for <txauth@ietf.org>; Fri, 11 Dec 2020 10:24:51 -0800 (PST)
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=tlWio9eipQo9PPkRjDyn88BEFNBLCdmgT0H26vxBvFw=; b=rO+ZU4a9dRdj+fOQomx/x7BTqqjPvpzxAFeIMqideAyU0UNWiFzItKaGT0x8PsjLNM kmyI8WZ0scFGyTmwXi9UEZNY9ufLcdZAJFW/Dl6kZ3Kte7MkVBpEZtir8aM324Zw4IAH dHNzf0eR4vz0I2p4Yzyr4W1sFd46LmyNE75MEYhVQOXLTDCbmN7KPpQtR9CuoRC2dEwC iHQnuVOaxEUdoCYGPXsZ1XKLtY5YDFcXiMzYGA55z+62bzIMNxbhec9/TUUS4d0I3pxR ul956gIYXbltKc8Sc/hPaX4ZSotQtzw1PpQ68uns3jwPj/gw5OYOPZpWr2ZcOokXsXG9 ImuQ==
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=tlWio9eipQo9PPkRjDyn88BEFNBLCdmgT0H26vxBvFw=; b=tgJffkB9oUsgBlXB6miR68yFt10YKdRnRmN8kyzvgkxdPtPXDTnM2MK/X6K8A6u3X+ Wk2s1EO84PoB/1s908s+LV6p9UZ1KSwQTHS439YOnFu7RWu4WvopW2JGJF5R3iCmmzDm yFymc/u+AKKrRoAdh2i9d4pmoriOBsPdwU7EKJiEs4YO90gg2zx1yI6oxtsa1X8N/cUc YHfAl/lSeohmx3jOcxCopFRmSJ2hnswKl9Fx4sbH0weFn7whO6pHO4CVpKGzrwfyQU6T jdklf55Xa+6+JxDHiHiH6fxVGva5viSsrEln6dlSov2nYg5ZTz5FboQtSh2GEq226n6m 0wGg==
X-Gm-Message-State: AOAM5304D1wyTmgObeUYozQ2Xvp1QD9wsSTO/yxTP+Q+S/4DwhPjeB7g bhLpS+Bd4SGXoXaQQgCHT+/ICcMQ8fJy2hNFmSc=
X-Google-Smtp-Source: ABdhPJwFcUYx0x7pKHnlwlXxztwwrzj28g1D+siPI5YbynVlfZzXO9/h1fmf5DqgEuYidxm72m1AH6N9wqOe7Rp3MV4=
X-Received: by 2002:a5e:a815:: with SMTP id c21mr15874113ioa.141.1607711090531; Fri, 11 Dec 2020 10:24:50 -0800 (PST)
MIME-Version: 1.0
References: <94973397-0354-4B02-9EC8-EF972A7F1867@mit.edu> <CAD9ie-v-j=PBGjLmiWT+z1Whimfmqo=+Pqw1DVFmXZO-bm7=4w@mail.gmail.com> <8E2FF25A-4BE1-4EA1-A0FE-CB5194DEAC52@mit.edu> <9fce631f-e4fb-2f10-a504-139fe5936a9d@free.fr>
In-Reply-To: <9fce631f-e4fb-2f10-a504-139fe5936a9d@free.fr>
From: Fabien Imbault <fabien.imbault@gmail.com>
Date: Fri, 11 Dec 2020 19:24:39 +0100
Message-ID: <CAM8feuR1qxvkXBCJ9fVnLMPegWzuUfBXGdkmHrtunKE_3eW6SQ@mail.gmail.com>
To: Denis <denis.ietf@free.fr>
Cc: GNAP Mailing List <txauth@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000073df3505b63468a6"
Archived-At: <https://mailarchive.ietf.org/arch/msg/txauth/Is6vfHGSF4PRtK1kxgSjZcIXXQE>
Subject: Re: [GNAP] Consensus Call on Continuation Request
X-BeenThere: txauth@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: GNAP <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: Fri, 11 Dec 2020 18:24:54 -0000

Hi Denis,

Well we're not doing exactly the same as OAuth.
I don't think this would create confusion in the context of GNAP, we would
adapt the vocabulary to what the protocol specifies.

Fabien

On Fri, Dec 11, 2020 at 7:13 PM Denis <denis.ietf@free.fr> wrote:

> Hi,
>
> My two cents.
>
> I fear we might have a vocabulary problem. At the moment an access token
> is issued by an Authorization Server (AS) and consumed by a Resource Server
> (RS).
> Changing this would create confusion.
>
>    - If a similar data structure as the one currently used in an access
>    token would be exchanged between the RC and the AS,
>    let us call it differently: xxxxxx token.
>
>
>    - If a similar data structure as the one currently used in an access
>    token is not exchanged between the RC and the AS, then
>    there is no terminology problem.
>
> Denis
>
>
> Others had already responded to this previous thread, but I wanted to add
> a couple points to clarify some things.
>
> 3) What the client has to do with the "access token" is not the same as
> access tokens for an RS. The client gets a new "access token" for each
> grant request, and for each API call to the AS, and the client learns it
> can not make any more API calls for that specific request when it does not
> get an "access token" back. This is a completely different design pattern
> than calling an RS API with an access token, and is a new design pattern
> for calling APIs. This adds complexity to the client that it would not
> normally have, and I don't think GNAP is the right place to start a new
> design pattern.
>
>
> I’m not sure what you mean by these being different — the whole point of
> the design is that the client would be doing the same thing with the access
> token at the AS that it does with the RS by re-using the access token
> structure. Can you please describe what the differences are, apart from the
> rotation? Presentation of the token and signing of the message are
> identical.
>
> Rotation of the access token and artifacts for ongoing continuation
> responses is a separate issue to be discussed:
> https://github.com/ietf-wg-gnap/gnap-core-protocol/issues/87
>
> And for what it’s worth, GNAP is absolutely the right place to have new
> designs — not that this is one.
>
> 4) Clients that only want claims from the AS and no access tokens will be
> required to support an API calling mechanism they would not have to support
> otherwise.
>
>
> Correct, but the delta between the calls a client would make with and
> without an access token is vanishingly small. The client has to sign the
> initial request in some fashion, and it will sign the continuation request
> in the same exact fashion, but now include an access token in that request.
>
> Clients making a request to an AS and not getting an access token is a new
> design pattern. I think it has value and should be included, but OAuth
> today shows us the immense value of getting access tokens for calling APIs,
> and so we shouldn’t optimize away from that pattern.
>
>
> 5) If the AS does not provide an "access token", there is no mechanism for
> a client to delete the request, as the client is not allowed to make a call
> without an "access token".
>
>
> More properly, if the AS does not provide a “continue” field then the
> client can’t delete the request — and yes, that’s intentional. The AS is
> telling this client instance that it can’t do anything else with this
> ongoing request. If the AS wants to allow the client to manage it, it will
> include the mechanisms to do so in the “continue” field.
>
>
> 6) There is no standard identifier for the request. Debugging and auditing
> are hampered by the client and AS having no standard way to identifying a
> request. While one AS may provide a unique URL for each grant request,
> another AS may use a persistent "access token" to identify the grant
> request, and other ASs may issue a new "access token" on each API call,
> providing no persistent identifier for the request.
>
>
> Debugging and auditing this kind of thing are functions of the AS. How is
> interoperability harmed by different ASs having different methods to
> identify their internal data elements? The client doesn’t need any
> knowledge of the AS’s identifiers, it just needs to know the next steps for
> continuing the negotiation.
>
> I do agree that there’s a potential use for a consistent identifier, for
> things like “extending a grant request”, and we need to look at that
> separately as it doesn’t need to be exposed to the core protocol for most
> use cases.
>
>  — Justin
>
>
> On Dec 10, 2020, at 3:05 PM, Dick Hardt <dick.hardt@gmail.com> wrote:
>
> -1 per all the reasons I laid out in
> https://mailarchive.ietf.org/arch/msg/txauth/hBMexdKrh7RuR--Dq6UEVJN8hkY/
> ᐧ
>
> On Thu, Dec 10, 2020 at 7:52 AM Justin Richer <jricher@mit.edu> wrote:
>
>> The editors and chairs would like to confirm consensus on a current pull
>> request:
>>
>> https://github.com/ietf-wg-gnap/gnap-core-protocol/pull/129
>>
>> This pull request simplifies the continuation response and request by
>> making the access token mandatory, and it clarifies the responsibilities of
>> the AS in enforcing the security of the continuation request. Several WG
>> members expressed specific support for keeping the access token to enable
>> specific use cases, and there was general support for simplifying the
>> process from what it currently is in the draft. The editors believe the
>> pull request represents a solution that meets these goals.
>>
>> This call is open until Monday December 14. At that point, the PR will be
>> merged unless the chairs determine there is not rough consensus for its
>> inclusion.
>>
>> Thank you,
>>
>>  - Justin, Aaron, and Fabien
>> --
>> 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
>