Re: [Txauth] TxAuth Charter

Dick Hardt <dick.hardt@gmail.com> Thu, 26 March 2020 20:45 UTC

Return-Path: <dick.hardt@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 66FF53A0C96 for <txauth@ietfa.amsl.com>; Thu, 26 Mar 2020 13:45:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.087
X-Spam-Level:
X-Spam-Status: No, score=-2.087 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_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_FILL_THIS_FORM_SHORT=0.01, 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 NV6PP3CeL1e3 for <txauth@ietfa.amsl.com>; Thu, 26 Mar 2020 13:45:21 -0700 (PDT)
Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) (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 D87683A0C97 for <txauth@ietf.org>; Thu, 26 Mar 2020 13:45:20 -0700 (PDT)
Received: by mail-lf1-x143.google.com with SMTP id j17so6055529lfe.7 for <txauth@ietf.org>; Thu, 26 Mar 2020 13:45:20 -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=lbDSwNtO+7CxqdUhBx7UyXsOIDRt0PdLiYRzPQ/xb/Q=; b=pZsUhmYrz5pmj2IqtOFR4J/yXoRtqdVWzCag0u1O57iWLMP3PNWDLJM9mTIdSwb11T JqGZj6s+YBjpXzEIlMG3/lffkNhGgArAX83jLbnH37lQ1YAbZS8Q5gvJT4BNFD6zYtBu pkEL9RtNRzVI8cTMVLai/W3bx5Ik7WKNeFEieFAOuGsV/lCI3sUyiT30KsHxAjENWoo5 SUMbAAZ6uazsOU9lYDoOeybbmuzkQ1o/XlESkMaaD6uac9fmLu93pIpJFFOTf/n3Gxxk xuN+GGEpks/AxcUJFlYE/TtZ7bKjrjjtFJOoobyD/8Dhs/cfDK3VhD69h6Tia/7AZ9zg k3cA==
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=lbDSwNtO+7CxqdUhBx7UyXsOIDRt0PdLiYRzPQ/xb/Q=; b=qDdODZ9bCcWfK4lW0myo4v0UsBmg+ZdnkFdgqB2Q1bCCwGdUCKuW0VglgeGvV8fLhJ TL2zURWrpK4TeXfrY2akUduyR73X7yP08z68f8fVf/mwVRh77xtHEcQfnFMZuWPfs9km KJuZRtagA/KhXtPPmrLE0Dq/lbC7xgmi9IaPzYOcNguLShbY1FgnWEYRpD6dsYrwysdQ H95Lw/WleXMILjrSN8Z5AQihb1whN6KZx49YjRhDxAFLGPHSJqXO+tcqelJH617JR7fT ROkNkAR9rsX1T7PSs6vO8XTps37xdRvKqC6H9DSBJ538yY17Bq77UJE4mTOuubQEbx80 fMXw==
X-Gm-Message-State: ANhLgQ0+/Po6/IXparMLHipyBQQDZwyjak8yPQlZKbX5rewG2oNzlG+A i/jEZLc0aD6RGezaBWguzPaVmODeERI6ygmQISYJT+MI9uU=
X-Google-Smtp-Source: ADFU+vv6zfg9ovCmiB/809nzsl+w5YoUm4MTwYNeFqYtWuQqPOyhm+9jvvwmqbT/+Qe/1c2xg5YVdtNNtEz6IY54OJw=
X-Received: by 2002:ac2:44bb:: with SMTP id c27mr7099119lfm.91.1585255518348; Thu, 26 Mar 2020 13:45:18 -0700 (PDT)
MIME-Version: 1.0
References: <CAD9ie-v0xi6-jKMET5KFzLBj7J+ebZrkmnHQrTvmGRH8xEH=gA@mail.gmail.com>
In-Reply-To: <CAD9ie-v0xi6-jKMET5KFzLBj7J+ebZrkmnHQrTvmGRH8xEH=gA@mail.gmail.com>
From: Dick Hardt <dick.hardt@gmail.com>
Date: Thu, 26 Mar 2020 13:44:52 -0700
Message-ID: <CAD9ie-uFxoz59MRGnmDbQs8RB3VYtc7xfconOWWuCxMuuv9AcQ@mail.gmail.com>
To: txauth@ietf.org
Cc: Justin Richer <jricher@mit.edu>, Yaron Sheffer <yaronf.ietf@gmail.com>
Content-Type: multipart/alternative; boundary="0000000000000ca8b205a1c810e6"
Archived-At: <https://mailarchive.ietf.org/arch/msg/txauth/UgGztdOx0lR9NvzBgmp8OMelABw>
Subject: Re: [Txauth] TxAuth Charter
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: Thu, 26 Mar 2020 20:45:25 -0000

I had the correct merge link, but the wrong text (we made a change to the
first paragraph as well wrt. identity). Here is the correct text:

This group is chartered to develop a fine-grained delegation protocol for
authorization and API access, *as well as requesting and providing user
identifiers and claims*. This protocol will allow an authorizing party to
delegate access to client software through an authorization server. It will
expand upon the uses cases currently supported by OAuth 2.0 and OpenID
Connect (itself an extension of OAuth 2.0) to support authorizations scoped
as narrowly as a single transaction, provide a clear framework for
interaction among all parties involved in the protocol flow, and remove
unnecessary dependence on a browser or user-agent for coordinating
interactions.

The delegation process will be acted upon by multiple parties in the
protocol, each performing a specific role. The protocol will decouple the
interaction channels, such as the end user’s browser, from the delegation
channel, which happens directly between the client and the authorization
server (in contrast with OAuth 2.0 which is initiated by the client
redirecting the user’s browser). The client and AS will involve a user to
make an authorization decision as necessary through interaction mechanisms
indicated by the protocol. This decoupling avoids many of the security
concerns and technical challenges of OAuth 2.0 and provides a non-invasive
path for supporting future types of clients and interaction channels.

*The group will define interoperability for this protocol between different
parties, including*
* - client and authorization server;*
* - client and resource server; and*
* - authorization server and resource server.*

Additionally, the delegation process will allow for:

- Fine-grained specification of access
- Approval of AS attestation to *identifiers and other* identity claims
- Approval of access to multiple resources and APIs in a single interaction
- *Support for multiple access tokens in a single request and response*
*- Support for directed, audience-restricted access tokens*
- Separation between the party authorizing access and the party operating
the client requesting access
- A variety of client applications, including Web, mobile, single-page, and
interaction-constrained applications

The group will define extension points for this protocol to allow for
flexibility in areas including:

- Cryptographic agility for keys, message signatures, and proof of
possession
- User interaction mechanisms including web and non-web methods
- Mechanisms for conveying user, software, organization, and other pieces
of information used in authorization decisions
- Mechanisms for presenting tokens to resource servers and binding resource
requests to tokens and associated cryptographic keys
- Optimized inclusion of additional information through the delegation
process (*including identifiers and identity assertions*)

Additionally, the group will provide mechanisms for management of the
protocol lifecycle including:

- Discovery of the authorization server
- Revocation of active tokens
*- Mechanisms for the AS and RS to communicate the access granted by an
access token*

Although the artifacts for this work are not intended or expected to be
backwards-compatible with OAuth 2.0 or OpenID Connect, the group will
attempt to simplify migrating from OAuth 2.0 and OpenID Connect to the new
protocol where possible.

This group is not chartered to develop extensions to OAuth 2.0, and as such
will focus on new technological solutions not necessarily compatible with
OAuth 2.0. Functionality that builds directly on OAuth 2.0 will be
developed in the OAuth Working Group, including functionality back-ported
from the protocol developed here to OAuth 2.0.

The group is chartered to develop mechanisms for applying cryptographic
methods, such as JOSE and COSE, to the delegation process. This group is
not chartered to develop new cryptographic methods.

*The group is chartered to develop mechanisms for conveying identity
information within the protocol including identifiers (such as email
addresses, phone numbers, usernames, and subject identifiers) and
assertions (such as OpenID Connect ID Tokens, SAML Assertions, and
Verifiable Credentials). The group is not chartered to develop new formats
for identifiers or assertions, nor is the group chartered to develop
schemas for user information, profiles, or other identity attributes,
unless a viable existing format is not available. *

The initial work will focus on using HTTP for communication between the
client and the authorization server, taking advantage of optimization
features of HTTP2 and HTTP3 where possible, and will strive to enable
simple mapping to other protocols such as COAP when doing so does not
conflict with the primary focus.

Milestones to include:
- Core delegation protocol
- Key presentation mechanism bindings to the core protocol *including* TLS,
detached HTTP signature, and embedded HTTP signatures
*- Conveyance mechanisms for identifiers and assertions*
- Guidelines for use of protocol extension points




On Thu, Mar 26, 2020 at 1:11 PM Dick Hardt <dick.hardt@gmail.com> wrote:

> Thanks for all the great discussion in the virtual call Monday. Justin has
> made additional changes to the charter with input from myself and Yaron.
> Most of the changes are scoping "identity" in the charter.
>
> Actual text changes highlighted below, semantically it amounts to:
>
>  - inclusion of interop statement
>  - clarifying that “identity” is about identifier claims, assertions, and
> the carriers for those
>  - explicit call out of multi-access-token (and multi-RS) use cases
>  - explicit call out of token model/schema for as-rs agreement
>  - statement that we aren’t going to be creating assertion formats of user
> profile schemas or things like that (within this group)
>
> Diff available online at http://www.mergely.com/RehoJJvW/?wl=1 and in the
> attached file.
>
>
> This group is chartered to develop a fine-grained delegation protocol for
> authorization, identity, and API access. This protocol will allow an
> authorizing party to delegate access to client software through an
> authorization server. It will expand upon the uses cases currently
> supported by OAuth 2.0 and OpenID Connect (itself an extension of OAuth
> 2.0) to support authorizations scoped as narrowly as a single transaction,
> provide a clear framework for interaction among all parties involved in the
> protocol flow, and remove unnecessary dependence on a browser or user-agent
> for coordinating interactions.
>
> The delegation process will be acted upon by multiple parties in the
> protocol, each performing a specific role. The protocol will decouple the
> interaction channels, such as the end user’s browser, from the delegation
> channel, which happens directly between the client and the authorization
> server (in contrast with OAuth 2.0 which is initiated by the client
> redirecting the user’s browser). The client and AS will involve a user to
> make an authorization decision as necessary through interaction mechanisms
> indicated by the protocol. This decoupling avoids many of the security
> concerns and technical challenges of OAuth 2.0 and provides a non-invasive
> path for supporting future types of clients and interaction channels.
>
> *The group will define interoperability for this protocol between
> different parties, including*
> * - client and authorization server;*
> * - client and resource server; and*
> * - authorization server and resource server.*
>
> Additionally, the delegation process will allow for:
>
> - Fine-grained specification of access
> - Approval of AS attestation to *identifiers and other* identity claims
> - Approval of access to multiple resources and APIs in a single interaction
> - *Support for multiple access tokens in a single request and response*
> *- Support for directed, audience-restricted access tokens*
> - Separation between the party authorizing access and the party operating
> the client requesting access
> - A variety of client applications, including Web, mobile, single-page,
> and interaction-constrained applications
>
> The group will define extension points for this protocol to allow for
> flexibility in areas including:
>
> - Cryptographic agility for keys, message signatures, and proof of
> possession
> - User interaction mechanisms including web and non-web methods
> - Mechanisms for conveying user, software, organization, and other pieces
> of information used in authorization decisions
> - Mechanisms for presenting tokens to resource servers and binding
> resource requests to tokens and associated cryptographic keys
> - Optimized inclusion of additional information through the delegation
> process (*including identifiers and identity assertions*)
>
> Additionally, the group will provide mechanisms for management of the
> protocol lifecycle including:
>
> - Discovery of the authorization server
> - Revocation of active tokens
> *- Mechanisms for the AS and RS to communicate the access granted by an
> access token*
>
> Although the artifacts for this work are not intended or expected to be
> backwards-compatible with OAuth 2.0 or OpenID Connect, the group will
> attempt to simplify migrating from OAuth 2.0 and OpenID Connect to the new
> protocol where possible.
>
> This group is not chartered to develop extensions to OAuth 2.0, and as
> such will focus on new technological solutions not necessarily compatible
> with OAuth 2.0. Functionality that builds directly on OAuth 2.0 will be
> developed in the OAuth Working Group, including functionality back-ported
> from the protocol developed here to OAuth 2.0.
>
> The group is chartered to develop mechanisms for applying cryptographic
> methods, such as JOSE and COSE, to the delegation process. This group is
> not chartered to develop new cryptographic methods.
>
> *The group is chartered to develop mechanisms for conveying identity
> information within the protocol including identifiers (such as email
> addresses, phone numbers, usernames, and subject identifiers) and
> assertions (such as OpenID Connect ID Tokens, SAML Assertions, and
> Verifiable Credentials). The group is not chartered to develop new formats
> for identifiers or assertions, nor is the group chartered to develop
> schemas for user information, profiles, or other identity attributes,
> unless a viable existing format is not available. *
>
> The initial work will focus on using HTTP for communication between the
> client and the authorization server, taking advantage of optimization
> features of HTTP2 and HTTP3 where possible, and will strive to enable
> simple mapping to other protocols such as COAP when doing so does not
> conflict with the primary focus.
>
> Milestones to include:
> - Core delegation protocol
> - Key presentation mechanism bindings to the core protocol *including* TLS,
> detached HTTP signature, and embedded HTTP signatures
> *- Conveyance mechanisms for identifiers and assertions*
> - Guidelines for use of protocol extension points
>