Subject: Fwd: Gen-art review of draft-ietf-httpbis-p7-auth-25

From: Julian Reschke <[email-masked]>
Date: Mon, 18 Nov 2013 22:00:43 +0100

(FYI)

-------- Original Message --------
Subject: Gen-art review of  draft-ietf-httpbis-p7-auth-25
Resent-To: [email-masked], [email-masked], 
[email-masked], [email-masked],
Date: Mon, 18 Nov 2013 15:26:20 -0500
From: Moriarty, Kathleen <[email-masked]>
To: [email-masked] <[email-masked]>, [email-masked] <[email-masked]>, 
        [email-masked] 
<[email-masked]>
CC: [email-masked] <[email-masked]>, 
[email-masked] <[email-masked]>, 
[email-masked] <[email-masked]>

I am the assigned Gen-ART reviewer for this draft. For background on
Gen-ART, please see the FAQ at

<http://wiki.tools.ietf.org/area/gen/trac/wiki/GenArtfaq>.

Please resolve these comments along with any other Last Call comments
you may receive.

Document: draft-ietf-httpbis-p7-auth-25
Reviewer: Kathleen Moriarty
Review Date: November 18, 2013
IETF LC End Date:
IESG Telechat date: 12/19

Summary: The draft is ready from a Gen-art perspective with a few nits 
to resolve.  I also added a security consideration with suggested text 
below.

Major issues:

Minor issues:

In section 2.1, in third to last paragraph, why is ought used here 
instead of a keyword?  This is a point that could help with 
interoperability, so I think a keyword is important.  Unless there is 
another error message, one should be provided when the role access 
requirements are not met.  Users would expect this functionality.

Nits/editorial comments:

Section 3.2.1 - please fix the run-on sentence, the first one as it is 
difficult to read.  Suggestion:
From:
If a server receives a request for an access-protected object, and an
    acceptable Authorization header is not sent, the server responds with
    a "401 Unauthorized" status code, and a WWW-Authenticate header as
    per the framework defined above, which for the digest scheme is
    utilized as follows:
To:
If a server receives a request for an access-protected object and an
    acceptable Authorization header is not sent.  The server responds with
    a "401 Unauthorized" status code and a WWW-Authenticate header as
    per the framework defined above.  For the digest scheme, this is
    utilized as follows:

Section 4.1, second to last paragraph.  Please consider rewording the 
content in parenthesis, it is difficult to read and probably found just 
be a separate sentence rather than included with the prior sentence in 
parenthesis.
"If a request is authenticated and a realm specified, the same
    credentials are presumed to be valid for all other requests within
    this realm (assuming that the authentication scheme itself does not
    require otherwise, such as credentials that vary according to a
    challenge value or using synchronized clocks)."

Section 4.2, second paragraph, consider breaking the following sentence 
into two:
From:
However, if a recipient proxy needs to obtain its
    own credentials by requesting them from a further outbound client, it
    will generate its own 407 response, which might have the appearance
    of forwarding the Proxy-Authenticate header field if both proxies use
    the same challenge set.
To:
However, if a recipient proxy needs to obtain its
    own credentials by requesting them from a further outbound client, it
    will generate its own 407 response.  This might have the appearance
    of forwarding the Proxy-Authenticate header field if both proxies use
    the same challenge set.

Section 4.4, the last paragraph could be read more clearly with the 
following change:
From:
This header field contains two challenges; one for the "Newauth"
    scheme with a realm value of "apps", and two additional parameters
    "type" and "title", and another one for the "Basic" scheme with a
    realm value of "simple".
To:
This header field contains two challenges; one for the "Newauth"scheme
  with a realm value of "apps" and two additional parameters
    "type" and "title", and the second for the "Basic" scheme with a
    realm value of "simple".

Section 6: Security Considerations
Could you add in text to inform developers that content should not be 
accessed before authentication occurs when required?  I know this sounds 
obvious, but I recently ran into this issue.  On a Mac, I am able to see 
that the application server/database information is actually loaded 
before I authenticate (sure there is a SQL injection happening here too) 
and the screen is slightly greyed out.  On a PC, it appears to block 
access, but this is a display thing rather than requiring the 
authentication to actually work prior to serving content.
Perhaps something like the following:

When a web service is configured to use authentication, content from the 
application server requiring authentication MUST not be accessed until 
the authentication has completed successfully.

Thanks,
Kathleen

---

From: Julian Reschke <[email-masked]>
Date: Mon, 18 Nov 2013 22:19:00 +0100

> instead of a keyword?  This is a point that could help with

Because it is related to an untestable condition ("what it considers to 
be the most secure auth-scheme that it understands"),

The other one (choice of 403) really is not required to interop.

> ...

>     per the framework defined above.  For the digest scheme, this is

That is text from RFC 2617, not httpbis-p7.

> ...

Ack.

>     "type" and "title", and the second for the "Basic" scheme with a

I don't think this is an improvement.

> accessed before authentication occurs when required?  I know this sounds

Please define "accessed". The server really can do whatever it wants as 
long as the protocol requirements are fulfilled.

> authentication to actually work prior to serving content.

To understand what's going on here we really need more information. 
Which browsers are used? Do you have HTTP traces?

> ...

Best regards, Julian

---

From: Michael Sweet <[email-masked]>
Date: Mon, 18 Nov 2013 16:39:08 -0500

Julian,

The comments don’t seem to match up with the document being reviewed?  There is no section 3.2.1 in that draft, for example.

_______________________________________________________________
Michael Sweet, Senior Printing System Engineer, PWG Chair

---

From: Julian Reschke <[email-masked]>
Date: Tue, 19 Nov 2013 09:08:36 +0100

> The comments don’t seem to match up with the document being reviewed?  There is no section 3.2.1 in that draft, for example.

Yes. As I said yesterday: "That is text from RFC 2617, not httpbis-p7.".

Best regards, Julian