+1.
--
John Panzer / Google
jpan...@google.com / abstractioneer.org <http://www.abstractioneer.org/> /
@jpanzer



On Mon, Sep 27, 2010 at 11:25 PM, Eran Hammer-Lahav <e...@hueniverse.com>wrote:

> (Please take a break from the other threads and read this with an open
> mind. I have tried to make this both informative and balanced.)
>
>
>
> --- IETF Process
>
>
>
> For those unfamiliar with the IETF process, we operate using rough
> consensus. This means most people agree and no one strongly objects. If
> someone strongly objects, it takes a very unified group to ignore that
> person, with full documentation of why the group chose to do so. That person
> can raise the issue again during working group last call, area director
> review, and IETF last call - each has the potential to trigger another round
> of discussions with a wider audience. That person can also appeal the
> working group decision before it is approved as an RFC.
>
>
>
> The process is managed by the working group chairs. The chairs elect the
> editor and make consensus calls. So far this working group had only a few
> consensus calls (breaking the 1.0a RFC into two parts and dropping these in
> favor of a unified WRAP + 1.0a draft). From my experience and understanding
> of the process, this working group does not have rough consensus on any of
> the open items to make consensus calls and close the issues. Simply
> dismissing the few objections raised will not accomplish finishing the
> document sooner, but will only add more rounds of debates now and at a later
> time.
>
>
>
> One of the problems we have is that we work without a charter. Usually, the
> charter is the most useful tool chairs have when limiting scope and closing
> debates. For example, had we fixed the charter last year to explicitly say
> that we will publish one document with both bearer tokens and signatures,
> the chairs could have ended this argument by pointing to the charter. Since
> we have no charter, the chairs have little to offer in terms of ending these
> disagreements. We never officially agreed what we are here to solve.
>
>
>
> The reality of this working group is that we need to find a way to make
> everyone happy. That includes every one of those expressing strong opinions.
> Any attempt to push people around, dismiss their views, or reject reasonable
> compromises will just keep the issues open. If this small group cannot reach
> agreement, the specification will surely fall apart during working group
> last call, area director review, IETF last call, application area review,
> security area review, general area review, IANA review, and IESG review.
>
>
>
> It’s a long process, and at each step, anyone can raise their hand and
> object. A united working group is the most important tool to end discussions
> over objections and concerns raised at each step. It also give people the
> confidence to implement a working group final draft before it is published
> as an RFC (because it is much less likely to change).
>
>
>
> --- Open Issues
>
>
>
> This working group has failed to reach consensus on a long list of items,
> among them are the inclusion of signatures, signatures format, use of HTTP
> authentication headers, restrictions on bearer tokens, support for specific
> profiles, etc. While many of these items faded away, I would not be surprise
> to see them all come back.
>
>
>
> The current argument over signatures ignores compromises and agreements
> reached over the past two years. This working group explicitly rejected WRAP
> as the replacement for OAuth 1.0 and the whole point of combining 1.0a with
> WRAP was the inclusion of signatures. We reached another agreement to keep
> signatures at the Anaheim meeting. The current draft is a version of WRAP
> alone.
>
>
>
> There are currently three separate threads going on:
>
>
>
> 1. OAuth 1.0a style signatures vs. JSON proposals
>
> 2. Including a signature mechanism in core
>
> 3. Concerns about bearer tokens and HTTPS
>
>
>
> The first item will not be resolved because we are not going to reach
> industry consensus over a single signature algorithm (this is a general
> comment, not specific to these two proposals). The only thing we can do is
> let those who care about each solution publish their own specification and
> let the market decide.
>
> The second item, while it was part of the very first compromise this
> working group made (when we combined the two specifications), cannot be
> resolved because of #1. We can’t agree on which signature method to include,
> and including all is not practical. For these reasons, including a signature
> algorithm in core is not likely to happen. I have made some proposals but
> they received instant negative feedback which means we have no consensus.
>
>
>
> The third item has also been debated and blogged for a long time and is not
> going to be resolved in consensus. Instead, we will need to find the right
> language to balance security concerns with the reality that many providers
> are going to deploy bearer tokens no matter what the IETF says. The OAuth
> 1.0a RFC was blocked by the IESG until the PLAINTEXT method required HTTPS,
> and I would expect the same issue to come up with the current draft.
>
> --- Proposal
>
>
>
> 1. Add a parameter to the token response to include an extensible token
> scheme.
>
>
>
> The default (if omitted) will be whatever the bearer token scheme is
> called. This will allow the authorization server to return any token type it
> deems appropriate, and for other specifications to define additional
> parameters such as token_secret. Others can extend the token request
> endpoint by allow the client to request a specific token scheme.
>
>
>
> 2. Break the core specification into multiple parts.
>
>
>
> Go back to the original working group consensus to break the document into
> two parts: getting a token and using a token. Getting a token will include
> everything from core expect for section 5. Section 5 will become a new
> specification which will describe how to use a bearer token (replacing the
> generic ‘OAuth’ scheme with something more descriptive like).
>
>
>
> 3. Introduce two signature proposals in one or more documents, for the JSON
> token and 1.0a-like method.
>
>
>
> One, both, or none can become working group item.
>
>
>
> --- Benefits
>
>
>
> 1. Remove the HTTP binding from the core specification, leaving it
> transport agnostic for using access tokens.
>
>
>
> 2. Solve a few open issues:
>
>
>
> * Concerns over bearer tokens as the preferred/promoted/default token
> method.
>
> * The use of one or more HTTP authentication schemes, and the general
> architecture of using tokens.
>
> * Issues around scheme names.
>
> * Concerns over requiring HTTPS will be limited to only one part of the
> protocol.
>
> * The need to pick one signature format.
>
> * The need to finish signatures before the core (‘how to get an access
> token’).
>
> * The need to decide on discovery for the entire protocol (moves it to each
> scheme).
>
>
>
> 3. Allow moving the core specification to last call within a few weeks (and
> maybe also the bearer token part).
>
>
>
> --- Downside
>
>
>
> The only downside of this approach is that people will need to read at
> least two documents. It will not take any more effort or time, just some
> guidance.
>
>
>
> --- Request for feedback
>
>
>
> This proposal represents a purely editorial compromise. I believe it gives
> everyone enough to move forward. It has no impact on implementations. By
> breaking the problem into pieces, we allow those who strongly disagree to
> simply disengage that work and focus on the parts that matter to them.
>
>
>
> EHL
>
>
>
>
>
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth
>
>
_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to