<div dir="ltr">Though I still prefer that any normative text be somewhat general and avoid mandating specif headers or values.  There was one such (rough) proposal for text earlier in this thread. <br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 2, 2015 at 2:29 PM, Brian Campbell <span dir="ltr"><<a href="mailto:bcampbell@pingidentity.com" target="_blank">bcampbell@pingidentity.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Yeah, I guess I was hoping that some of the messiness of the internet was old enough that it didn't have to be in new specs. But that was likely silly.<br><br></div>If we go with Mike's proposal, the example would have a "no-cache" directive added to the "Cache-Control" response header. And the "Pragma: no-cache" stays. *sigh*<br><br></div><div><br></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Feb 28, 2015 at 7:00 PM, Mike Jones <span dir="ltr"><<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div link="blue" vlink="purple" lang="EN-US">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">In the example, I propose that we go with the directives that Google uses in practice.  At least we have the weight of their data and usage behind this choice.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">                                                            -- Mike<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<div>
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Openid-specs-ab [mailto:<a href="mailto:openid-specs-ab-bounces@lists.openid.net" target="_blank">openid-specs-ab-bounces@lists.openid.net</a>]
<b>On Behalf Of </b>John Bradley<br>
<b>Sent:</b> Friday, February 27, 2015 2:48 PM<br>
<b>To:</b> Breno de Medeiros<br>
<b>Cc:</b> <<a href="mailto:openid-specs-ab@lists.openid.net" target="_blank">openid-specs-ab@lists.openid.net</a>></span></p><div><div><br>
<b>Subject:</b> Re: [Openid-specs-ab] Form Post Response Mode example has 'Pragma: no-cache'<u></u><u></u></div></div><p></p>
</div>
</div><div><div>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Yes that was what I was trying to say on the call.   From my recollection of working with caches you still need to send the HTTP 1.0 Pragma: no-cache as some will ignore the HTTP 1.1.<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">There are cable and satellite, and Christian/Children content filtering proxies who I recall can be the worst.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">You are correct that it is not the right way to do it in HTTP 1.1, however in HTTP 1.0 the behaviour was unspecified for Pragma: no-cache in the response header. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Most caches ignore it but some will honour it and ignore the others.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">I don’t know that there is a completely correct answer for a messy internet.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">John B.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">On Feb 27, 2015, at 10:28 PM, Breno de Medeiros <<a href="mailto:breno@google.com" target="_blank">breno@google.com</a>> wrote:<u></u><u></u></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Fri, Feb 27, 2015 at 1:15 PM, Brian Campbell<span> </span><<a href="mailto:bcampbell@pingidentity.com" target="_blank">bcampbell@pingidentity.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Thanks Breno,<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">I see you've got "Pragma: no-cache" there, which according to both<span> </span><a href="http://tools.ietf.org/html/rfc2616#section-14.32" target="_blank">RFC
 2616</a><span> </span>and<span> </span><a href="https://tools.ietf.org/html/rfc7234#section-5.4" target="_blank">RFC 7234</a><span> </span>isn't defined for the response
 and isn't reliable for anti-caching. Having read that is what led me to bringing this thread up in the first place. But I generally assume that Google knows what they're doing so I have to ask - do you know why that particular one is being used?<span> </span><u></u><u></u></span></p>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">I am not an expert on caching, but my understanding is that nearly all clients compliant with HTTP 1.1 will process the 'modern' caching directive on the cache-control entry
 and ignore pragma that comes later. However, there are transparent caching proxies (or there used to be until uncomfortably recently, specially in some regions of the world) that are not actually HTTP 1.1 compliant (but allow the declaration from the downstream
 client to be asserted, which they need to in any case). These very old and bizarre proxies don't process correctly the cache-control directive, but obey the older (HTTP 1.0) pragma directive, which is better than nothing.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""> <u></u><u></u></span></p>
</div>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Thu, Feb 26, 2015 at 7:45 PM, Breno de Medeiros<span> </span><<a href="mailto:breno@google.com" target="_blank">breno@google.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">FWIW, the cache headers returned for some Google sensitive pages are:<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Cache-control: no-cache, no-store<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Pragma: no-cache<u></u><u></u></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">The answer to the questions are yes and yes (where the first 'yes' should mean to say 'modify the headers to a commonly agreed value that has clearer no-caching semantics').<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Thu, Feb 26, 2015 at 3:51 PM, Nat Sakimura<span> </span><<a href="mailto:sakimura@gmail.com" target="_blank">sakimura@gmail.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">If you can change "sensitive" to something else, I would be fine. "Sensitive" has some connotation in the field of privacy and I do not want confusion there. <u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">2015-02-26 23:28 GMT+09:00 Brian Campbell<span> </span><<a href="mailto:bcampbell@pingidentity.com" target="_blank">bcampbell@pingidentity.com</a>>:<u></u><u></u></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">I'm fine with not wanting to use the word 'sensitive' but the text you proposed doesn't seem quite right.<br>
<br>
While the "no-store" definition does mention non-volatile storage, it also talks about volatile storage and, as I read it, pretty much says don't store any part of the response or associated request, ever. From the text, quoted again below, I don't see how
 "no-store" is possibly insufficient.<span> </span><u></u><u></u></span></p>
<h5 style="margin-left:30.0pt"><a name="14bdc653687b00a0_14bd311aac0595f4_14bcce53b581e8d0_14bc8ec8a205ae61_14bc84"></a><a href="https://tools.ietf.org/html/rfc7234#section-5.2.2.3" target="_blank"><span style="font-family:"Courier New"">5.2.2.3</span></a><span style="font-family:"Courier New"">. 
 no-store<u></u><u></u></span></h5>
<pre style="margin-left:30.0pt"><u></u> <u></u></pre>
<pre style="margin-left:30.0pt">   The "no-store" response directive indicates that a cache MUST NOT<u></u><u></u></pre>
<pre style="margin-left:30.0pt">   store any part of either the immediate request or response.  This<u></u><u></u></pre>
<pre style="margin-left:30.0pt">   directive applies to both private and shared caches.  "MUST NOT<u></u><u></u></pre>
<pre style="margin-left:30.0pt">   store" in this context means that the cache MUST NOT intentionally<u></u><u></u></pre>
<pre style="margin-left:30.0pt">   store the information in non-volatile storage, and MUST make a<u></u><u></u></pre>
<pre style="margin-left:30.0pt">   best-effort attempt to remove the information from volatile storage<u></u><u></u></pre>
<pre style="margin-left:30.0pt">   as promptly as possible after forwarding it.<u></u><u></u></pre>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Based on the text in the spec, I'm having a hard time understanding the push back on using "no-store".<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">From a practical perspective, however, I am not well versed in what browsers and intermediate caches actual do and don't honor well. Generally, when I want to prevent something
 from being cached, I throw a bunch of anti-caching directives at the response and it just works out. To your point earlier, that kind of thing isn't exactly appropriate for normative text. Note also that there's not a implementation considerations section
 in this doc and we're trying to make only very small changes at this point.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">As a compromise, of sorts, what about some text like this:<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div style="margin-left:30.0pt">
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">"Because the Authorization Response is intended to be used only once, the Authorization Server MUST instruct the User Agent (and any intermediaries) not to store or reuse
 the content of the response."<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">And then, in the non-normative example, just throw in the whole kitchen sink of cache prevention headers like:<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div style="margin-left:30.0pt">
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Courier New"">Cache-Control: no-cache, no-store, max-age=0, must-revalidate, private<span> </span><br>
Expires: Thu, 01 Jan 1970 00:00:00 GMT</span><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
<br>
<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">?<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Tue, Feb 24, 2015 at 5:41 PM, Nat Sakimura<span> </span><<a href="mailto:sakimura@gmail.com" target="_blank">sakimura@gmail.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Thanks Brian. <u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">A friendly amendment to your proposed change: <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Rationale<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">-----------------<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">'sensitive' is either undefined or has other connotation especially in the privacy realm, thus it probably is better to avoid the word in this particular case. <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Also, "no-store" in our case is insufficient as cache control because it is just concerned with a non-volatile storage. <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Proposal<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">--------------<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Change: <u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Because the Authorization Response contains sensitive information, the Authorization Server MUST include the HTTP "Cache-Control" response header field [RFC2616] with a
 value of "no-store" in the response.<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Helvetica","sans-serif"">To: </span><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Because the Authorization Response contains the information that cannot be re-used, the Authorization Server MUST include the HTTP "Cache-Control" response header field
 [RFC7234] with values "no-cache" in the response. <u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">I have a slight concern about "no-cache" implementation state as RFC7234 says that it is not obeyed in some caches. <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">"no-cache" is semantically equivalent to , "max-age=0, must-revalidate". Perhaps it may be better to add that in practice, but it seems it is inappropriate to have it in
 a normative text. Perhaps a note in an implementation consideration may be good. <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Nat<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">2015-02-25 0:15 GMT+09:00 Brian Campbell<span> </span><<a href="mailto:bcampbell@pingidentity.com" target="_blank">bcampbell@pingidentity.com</a>>:<u></u><u></u></span></p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">And it just (re)occurred to me that RFC 2616 has been obsoleted. So the reference in the text that I proposed in the last message should probably
 be to RFC 7234 rather than RFC 2616.  Also the current reference in the Form Post Response Mode to RFC 2616 for the "User Agent" term should probably be updated to RFC 7230.<br>
<br>
<u></u><u></u></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Tue, Feb 24, 2015 at 8:03 AM, Brian Campbell<span> </span><<a href="mailto:bcampbell@pingidentity.com" target="_blank">bcampbell@pingidentity.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">I think it'd be okay to have the "no-cache" directive the example as well, if folks are keen on that. But it doesn't replace "no-store". The
 example could have both like, "Cache-Control: no-cache, no-store". I don't think it's necessary as "no-store" is the stricter but I think it's okay to have it there too. <span> </span><br>
<br>
On the<span> </span><a href="http://lists.openid.net/pipermail/openid-specs-ab/Week-of-Mon-20150223/005280.html" target="_blank">call yesterday</a><span> </span>I asked if folks thought there should
 also be normative text in the Form Post Response Mode doc about not caching the authorization response containing the auto-submitting HTML form. There's some text in<span> </span><a href="http://tools.ietf.org/html/rfc6749#section-5.1" target="_blank">§5.1
 of RFC 6749 /<span> </span><span style="background:white">OAuth</span><span> </span>2.0<span> </span></a>that could be interpreted as obviating the need for it, which
 says that the 'authorization server MUST include the HTTP "Cache-Control" response header field [RFC2616] with a value of "no-store" in any response containing tokens, credentials, or other sensitive information'.  However, that's in a section about the token
 endpoint and so could also be interpreted as not applying to the authorization response from the authorization endpoint at all. Thus, I'm (sorta) proposing to add the following sentence to the end of<span> </span><a href="http://openid.net/specs/oauth-v2-form-post-response-mode-1_0.html#FormPostResponseMode" target="_blank">§2
 of OAuth 2.0 Form Post Response Mode</a>, 'Because the Authorization Response contains sensitive information, the Authorization Server MUST include the HTTP "Cache-Control" response header field [RFC2616] with a value of "no-store" in the response.'<br>
<br>
<br>
<u></u><u></u></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Mon, Feb 23, 2015 at 4:55 PM, Brian Campbell<span> </span><<a href="mailto:bcampbell@pingidentity.com" target="_blank">bcampbell@pingidentity.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">But that text is about directives on the cache-control _request_ header. <span> </span><u></u><u></u></span></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">The directives in question here are on the _response_.<span> </span><br>
<br>
<a href="https://tools.ietf.org/html/rfc7234#section-5.2.2" target="_blank">https://tools.ietf.org/html/rfc7234#section-5.2.2</a><span> </span>is about the response directives. With<span> </span><a href="https://tools.ietf.org/html/rfc7234#section-5.2.2.3" target="_blank">https://tools.ietf.org/html/rfc7234#section-5.2.2.3</a><span> </span>saying
 this about "no-store",<u></u><u></u></span></p>
<pre>   The "no-store" response directive indicates that a cache MUST NOT<u></u><u></u></pre>
<pre>   store any part of either the immediate request or response.  This<u></u><u></u></pre>
<pre>   directive applies to both private and shared caches.  "MUST NOT<u></u><u></u></pre>
<pre>   store" in this context means that the cache MUST NOT intentionally<u></u><u></u></pre>
<pre>   store the information in non-volatile storage, and MUST make a<u></u><u></u></pre>
<pre>   best-effort attempt to remove the information from volatile storage<u></u><u></u></pre>
<pre style="margin-bottom:12.0pt">   as promptly as possible after forwarding it.<u></u><u></u></pre>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">While "no-cache" at<span> </span><a href="https://tools.ietf.org/html/rfc7234#section-5.2.2.2" target="_blank">https://tools.ietf.org/html/rfc7234#section-5.2.2.2</a><span> </span>isn't
 as strong:<u></u><u></u></span></p>
<pre>   The "no-cache" response directive indicates that the response MUST<u></u><u></u></pre>
<pre>   NOT be used to satisfy a subsequent request without successful<u></u><u></u></pre>
<pre>   validation on the origin server.  This allows an origin server to<u></u><u></u></pre>
<pre>   prevent a cache from using it to satisfy a request without contacting<u></u><u></u></pre>
<pre>   it, even by caches that have been configured to send stale responses.<u></u><u></u></pre>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
<br>
<u></u><u></u></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">On Mon, Feb 23, 2015 at 4:39 PM, Mike Jones<span> </span><<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>><span> </span>wrote:<u></u><u></u></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Brian, “Cache-control: no-store” does not seem to imply “Cache-control: no-cache”.  I say that because
 of this sentence in 5.2.1.5 of<span> </span><a href="https://tools.ietf.org/html/rfc7234#section-5.2.1" target="_blank">https://tools.ietf.org/html/rfc7234#section-5.2.1</a>:</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-family:"Courier New"" lang="EN">   Note that if a request containing this directive is satisfied from a</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-family:"Courier New"" lang="EN">   cache, the no-store request directive does not apply to the already</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-family:"Courier New"" lang="EN">   stored response.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Therefore, to be safe, I believe that we have to replace the “Pragma: no-cache” in our example with
 “Cache-control: no-cache”.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Do people agree with that conclusion?</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">                                                            -- Mike</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<div>
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> </span></span><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">John
 Bradley [mailto:<a href="mailto:ve7jtb@ve7jtb.com" target="_blank">ve7jtb@ve7jtb.com</a>]<span> </span><br>
<b>Sent:</b><span> </span>Thursday, February 19, 2015 7:19 PM<br>
<b>To:</b><span> </span>Mike Jones<br>
<b>Cc:</b><span> </span>Brian Campbell; <<a href="mailto:openid-specs-ab@lists.openid.net" target="_blank">openid-specs-ab@lists.openid.net</a>><br>
<b>Subject:</b><span> </span>Re: [Openid-specs-ab] Form Post Response Mode example has 'Pragma: no-cache'</span><u></u><u></u></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Yes and yes.<u></u><u></u></p>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">On Feb 19, 2015, at 5:08 PM, Mike Jones <<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>> wrote:<u></u><u></u></p>
</div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">First question to the working group:  Do we agree that </span>"Pragma: no-cache"<span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> should
 be changed to </span>"Cache-Control: no-cache"<span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> in the Form Post Response Mode spec before approval?</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Second question to the working group:  If we agree to make this change (to text that only occurs
 in a non-normative example), are people comfortable doing this without restarting the 60 day review period (but still notifying people of the change)?</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">My personal answers would be “yes” and “yes” but we shouldn’t do this at this point unless there’s
 working group consensus to do so.</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Brian, could you also send a note to the OAuth working group pointing this problem with RFC 6749
 and RFC 6750 and asking whether errata should be filed?  This would help get more expert eyes on the issue.</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Thanks for bringing this to our attention, Brian!</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">                                                                -- Mike</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Openid-specs-ab [<a href="mailto:openid-specs-ab-bounces@lists.openid.net" target="_blank">mailto:openid-specs-ab-bounces@lists.openid.net</a>] <b>On
 Behalf Of </b>Brian Campbell<br>
<b>Sent:</b> Thursday, February 19, 2015 2:17 PM<br>
<b>To:</b> <<a href="mailto:openid-specs-ab@lists.openid.net" target="_blank">openid-specs-ab@lists.openid.net</a>><br>
<b>Subject:</b> [Openid-specs-ab] Form Post Response Mode example has 'Pragma: no-cache'</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">The example response in <a href="http://openid.net/specs/oauth-v2-form-post-response-mode-1_0-03.html#FormPostResponseExample" target="_blank"><span style="color:purple">http://openid.net/specs/oauth-v2-form-post-response-mode-1_0-03.html#FormPostResponseExample</span></a> has
 a "Pragma: no-cache" response header.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">However both <a href="http://tools.ietf.org/html/rfc2616#section-14.32" target="_blank"><span style="color:purple">RFC 2616</span></a> and the shiny new <a href="https://tools.ietf.org/html/rfc7234#section-5.4" target="_blank"><span style="color:purple">RFC
 7234</span></a> make special note along the lines of the following to say that it doesn't work as response header:<br>
<br>
<br>
<u></u><u></u></p>
</div>
<pre><span style="font-size:12.0pt">     'Note: Because the meaning of "Pragma: no-cache" in responses is</span><u></u><u></u></pre>
<pre><span style="font-size:12.0pt">      not specified, it does not provide a reliable replacement for</span><u></u><u></u></pre>
<pre><span style="font-size:12.0pt">      "Cache-Control: no-cache" in them.'</span><u></u><u></u></pre>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
It doesn't really hurt anything having it in the Form Post Response Mode document but I'm thinking it'd be better to not further perpetuate the "Pragma: no-cache" response header myth in this specification* and that that line should probably be removed from
 the example.<u></u><u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">Or am I wrong on this? And if so, what am I missing?<u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">* And, yeah, it's in Connect Core and OAuth 2.0 as well but I figured starting with a draft that wasn't yet final was good.<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">_______________________________________________<br>
Openid-specs-ab mailing list<br>
<a href="mailto:Openid-specs-ab@lists.openid.net" target="_blank">Openid-specs-ab@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a></span><u></u><u></u></p>
</div>
</blockquote>
</div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
_______________________________________________<br>
Openid-specs-ab mailing list<br>
<a href="mailto:Openid-specs-ab@lists.openid.net" target="_blank">Openid-specs-ab@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a><u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
<br clear="all">
<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif";color:#888888">--<span> </span><u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif";color:#888888">Nat Sakimura (=nat)<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif";color:#888888">Chairman, OpenID Foundation<br>
<a href="http://nat.sakimura.org/" target="_blank">http://nat.sakimura.org/</a><br>
@_nat_en<u></u><u></u></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
<br clear="all">
<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">--<span> </span><u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Nat Sakimura (=nat)<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Chairman, OpenID Foundation<br>
<a href="http://nat.sakimura.org/" target="_blank">http://nat.sakimura.org/</a><br>
@_nat_en<u></u><u></u></span></p>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
_______________________________________________<br>
Openid-specs-ab mailing list<br>
<a href="mailto:Openid-specs-ab@lists.openid.net" target="_blank">Openid-specs-ab@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a><u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
<br clear="all">
<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">--<span> </span><u></u><u></u></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif";color:#888888">--Breno<u></u><u></u></span></p>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
<br clear="all">
<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><u></u> <u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">--<span> </span><u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">--Breno<u></u><u></u></span></p>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">_______________________________________________<br>
Openid-specs-ab mailing list<br>
</span><a href="mailto:Openid-specs-ab@lists.openid.net" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">Openid-specs-ab@lists.openid.net</span></a><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
</span><a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">http://lists.openid.net/mailman/listinfo/openid-specs-ab</span></a><u></u><u></u></p>
</div>
</blockquote>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div></div></div>
</div>

<br>_______________________________________________<br>
Openid-specs-ab mailing list<br>
<a href="mailto:Openid-specs-ab@lists.openid.net" target="_blank">Openid-specs-ab@lists.openid.net</a><br>
<a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></div><br></div>