Thanks Christer for your thorough review!
A new draft (
https://www.ietf.org/archive/id/draft-ietf-oauth-step-up-authn-challenge-12.html)
reflecting changes resulting from the feedback has been published.
Comments inline

On Thu, Feb 23, 2023 at 9:13 AM Christer Holmberg via Datatracker <
nore...@ietf.org> wrote:

>
>   This message originated outside your organization.
>
>
> Reviewer: Christer Holmberg
> Review result: Ready with Issues
>
> I am the assigned Gen-ART reviewer for this draft. The General Area
> Review Team (Gen-ART) reviews all IETF documents being processed
> by the IESG for the IETF Chair.  Please treat these comments just
> like any other last call comments.
>
> For more information, please see the FAQ at
>
> <https://trac.ietf.org/trac/gen/wiki/GenArtfaq>.
>
> Document: draft-ietf-oauth-step-up-authn-challenge-11
> Reviewer: Christer Holmberg
> Review Date: 2023-02-23
> IETF LC End Date: 2023-03-03
> IESG Telechat date: Not scheduled for a telechat
>
> Summary: The document is well written, and easy to read. However, I have
> found
> some issues that I would like the authors to address.
>
> Major issues:
>
>   QMa1: General
>
>     As the document defines a new error code, and define new
> WWW-Authenticate
>     parameters, should the document not be an Update to RFC 6750?
>
>
It's a good point to consider. Our rationale is that this document
leverages many different extension points baked in a number of existing
specs, hence it doesn't seem a slam dunk to determine which one we should
"inherit" from.


> ----
>
>   QMa2: Section 4
>
>     The text defines the procedures for the client.
>
>     But, what if the client does not support the new error code and the new
>     WWW-A parameters? I think there should be some backward compatibility
> text
>     (or reference, if defined elsewhere).
>
>     Especially it should be clear that the server will not receive the
> WWW-A
>     parameters in the new request if the client does not support them.
>
>
This is a tricky one. Technically, every extension starts its existence
with zero support from existing clients. Implementers should be familiar
with this, and specs stipulate that any entity receiving a parameter it
doesn't understand to ignore that parameter, from which it follows that
whatever semantic or directive that parameter carries will remain not
executed. Saying in the document that clients not supporting the parameters
we are defining here will not achieve the goals of the spec seem somewhat
redundant. What do you think?


> ----
>
> Minor issues:
>
>   QMi1: Section 3
>
>     Can the new WWW-Authenticate parameters only be used with the new error
>     code? If so, please indicate it.
>
> There doesn't seem to be any obvious reasons to ban future extensions from
using those parameters, nor there appear to be obvious scenarios where we
would proactively suggest doing so: that's our rationale for not having
commented on this aspect in the document.


> ---
>
>   QMi2: Section 3
>
>     Is the max_age value required to be given as a string value (as in the
>     example)? If so, please indicate it.
>
>
 Good question. It doesn't have to be a string value. It can be a token or
quoted-string. We will clarify.

---
>
> Nits/editorial comments:
>
>   QNi1: General
>
>     Throughout the document uses "doesn't", "isn't" and "it's". I suggest
>     replacing those with "does not", "is not" and "it is".
>
>
Alright. That will definitely make the document more formal sounding.

----
>
>   QNi2: Abstract
>
>     The text starts by talking about resource servers, requests etc.
> Eventhough
>     the document title mentions OAuth 2.0, I think it would also be good to
>     mention it in the beginning of the Abstract.
>
>     E.g.,
>
>     "When OAuth 2.0 is used, it is not uncommon for..."
>
>
The scenario we describe is a generic occurrence for any API surfacing
resources requiring different access levels.
We chose  OAuth as the framework within which we specify a method to
address the scenario, and there will be no doubt in the mind of the reader
about that (the title and the concrete guidance take care of it), however
the scenario remains generic hence restricting it to OAuth in the
description at the abstract wouldn't necessarily add to that.


> ----
>
>   QNi3: Introduction
>
>     Similar to the Abstract, I think it would be good to mention OAuth 2.0
> in
>     the beginning.
>
> See above for a clarification on the pattern operating at the generic API
level, regardless of implementation details, and guidance on how to
implement it (OAuth specific).


>     Also, I am not sure what "API authorization scenario" means.
>
    Could you say "OAuth 2.0 authorization scenario"?
>
> The need for API to implement authorization logic is independent on the
specific protocols the API implementers decided to use. What makes this
OAuth specific is the fact that we use OAuth framework constructs to get
the job done, but the scenario remains a high level pattern that makes
sense regardless of the tech. While still describing the scenario at high
level, adding OAuth to the description would narrow the scope of the
scenario more than it is warranted, given that when the rubber hits the
road (actual protocol guidance) the relationship to OAuth is unmistakable. .


> ----
>
>   QNi4: Introduction
>
>     The text says: "An API might also determine"
>
>     Should it say "authorization server" instead of "API"?
>
> The API behavior is what we really intend to describe there - the fact
that it is the API (and not the AS) to make determinations based on
authentication properties is the novel mechanism we want to point the
reader's attention to.
_______________________________________________
Gen-art mailing list
Gen-art@ietf.org
https://www.ietf.org/mailman/listinfo/gen-art

Reply via email to