<div dir="ltr">I'm chiming in late on this one but I did want to offer my 2 cents and say that I'm pretty sympathetic to the viewpoint that Tim/Google put forth. In fact, there's a good chance that our initial OP product offering will not ship with support for the Request Object.<br>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jan 30, 2013 at 3:21 PM, John Bradley <span dir="ltr"><<a href="mailto:ve7jtb@ve7jtb.com" target="_blank">ve7jtb@ve7jtb.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">That is probably not unreasonable if the OP doesn't want to look in the request object, top treat it as a request for all the default claims.    <div>

<br></div><div>The RP should still know via discovery if the OP supports it.</div><div><br></div><div>The other thing that is in there is the max_age that the client wouldn't know if it was being ignored unless it also asked for auth_time.</div>

<div><br></div><div>It is probably OK to have that happen as any RP wanting those enhanced features iOS going to need to know if it can trust the OP and have some info about them.</div><div><br></div><div>So I would be OK  with request_object/request_url triggering a default in the OP if it doesn't support it.  What the default is will probably need more discussion.</div>

<div>We would need to add discovery information and a warning about trusting max_age if you haven't asked for auth_time and don't know if the OP supports the request object.</div><span class="HOEnZb"><font color="#888888"><div>

<br></div><div>John</div></font></span><div><div class="h5"><div><div><div><div>On 2013-01-30, at 7:05 PM, Mike Jones <<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>> wrote:</div>

<br><blockquote type="cite"><div link="blue" vlink="purple" style="font-family:Helvetica;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px" lang="EN-US">

<div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">At the very minimum, I believe that OPs must be required to not reject requests that include “request” or “request_file” parameters.  A more reasonable minimum might be to also require that if “request” or “request_file” parameters are present and the OP doesn’t choose to process the contents of an OpenID Request Object, that their presence be treated as a request for an OP-specified default set of claims.<u></u><u></u></span></div>

<div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">That way, if, for instance, an RP uses “scope=openid” and a request object containing {“userinfo”:{“claims”:{“given_name”:null}}} that the RP will get some claims – even if they’re not the ones that it is expecting.<u></u><u></u></span></div>

<div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">In short, the OP should still treat the presence of “request” or “request_file” as requests for claims, even if it ignores the contents of the requests.<u></u><u></u></span></div>

<div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">                                                                -- Mike<u></u><u></u></span></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></div><div><div style="border-style:solid none none;border-top-width:1pt;border-top-color:rgb(181,196,223);padding:3pt 0in 0in"><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<b><span style="font-size:10pt;font-family:Tahoma,sans-serif">From:</span></b><span style="font-size:10pt;font-family:Tahoma,sans-serif"><span> </span>John Bradley [mailto:<a href="mailto:ve7jtb@" target="_blank">ve7jtb@</a><a href="http://ve7jtb.com" target="_blank">ve7jtb.com</a>]<span> </span><br>

<b>Sent:</b><span> </span>Wednesday, January 30, 2013 1:41 PM<br><b>To:</b><span> </span>Mike Jones<br><b>Cc:</b><span> </span>Tim Bray; <<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] MTI section in Messages Draft 15<u></u><u></u></span></div></div></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div>

<div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">I understand that from a simplicity point of view only scopes is easier,<u></u><u></u></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">Though Google currently stringing together a long list of URI in scopes to represent individual claims is not any more elegent.<u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

This separates the fine grained claims with parameters e.g. age over x  in the request object from the core grain scopes that can't have structure. <u></u><u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">The other issues revolve around needing signed requests for higher LoA (I know most people don't care), the authentication context (though that can be set in registration).<u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

I have always suspected that the request object as MTI would het push back.  <u></u><u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">If we were to drop it from MTI then discovery would need to say if the IdP supports it.   I don't think that is the end of the world for IdP who don't care about the addition;l functionality.<u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

However I would want to avoid having people invent other ways to encode claim requests that would not be interoperable.<u></u><u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">John B.<u></u><u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<u></u> <u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><u></u> <u></u></div><div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

On 2013-01-30, at 2:07 PM, Mike Jones <<a href="mailto:Michael.Jones@microsoft.com" style="color:purple;text-decoration:underline" target="_blank">Michael.Jones@microsoft.com</a>> wrote:<u></u><u></u></div></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<br><br><u></u><u></u></div><div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Interesting.  The point of the Request Object is to give RPs control over the information they’re asking for and receiving.  For instance, if all my RP wants is your first name and the Request Object isn’t supported, it would have to use “openid profile” to get your first name, which also comes with middle name, last name, full name, nickname, preferred_username, profile URL, picture URL, website URL, gender, birthdate, time zone, locale, and time last updated.  That seems like overkill and doesn’t minimize disclosure of information to the RP.</span><u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span><u></u><u></u></div></div>

<div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">But I understand the simplicity/minimality argument for your position.</span><u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span><u></u><u></u></div></div>

<div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Let’s make this a discussion topic on tomorrow’s call.</span><u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span><u></u><u></u></div></div>

<div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">                                                            Thanks,</span><u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">                                                            -- Mike</span><u></u><u></u></div>

</div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span><u></u><u></u></div></div>

<div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"><b><span style="font-size:10pt;font-family:Tahoma,sans-serif">From:</span></b><span><span style="font-size:10pt;font-family:Tahoma,sans-serif"> </span></span><span style="font-size:10pt;font-family:Tahoma,sans-serif"><a href="mailto:openid-specs-ab-bounces@lists.openid.net" style="color:purple;text-decoration:underline" target="_blank">openid-specs-ab-bounces@lists.openid.net</a><span> </span>[mailto:<a href="mailto:openid-" target="_blank">openid-</a><a href="mailto:specs-ab-bounces@lists.openid.net" style="color:purple;text-decoration:underline" target="_blank">specs-ab-bounces@lists.openid.net</a>]<span> </span><b>On Behalf Of<span> </span></b>Tim Bray<br>

<b>Sent:</b><span> </span>Wednesday, January 30, 2013 8:40 AM<br><b>To:</b><span> </span><<a href="mailto:openid-specs-ab@lists.openid.net" style="color:purple;text-decoration:underline" target="_blank">openid-specs-ab@lists.openid.net</a>><br>

<b>Subject:</b><span> </span>[Openid-specs-ab] MTI section in Messages Draft 15</span><u></u><u></u></div></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"> <u></u><u></u></div>

</div><div><div><p class="MsoNormal" style="margin:0in 0in 12pt;font-size:12pt;font-family:'Times New Roman',serif">I refer to the material in<span> </span><a href="http://openid.net/specs/openid-connect-messages-1_0.html#ImplementationConsiderations" style="color:purple;text-decoration:underline" target="_blank"><span style="color:purple">http://openid.net/specs/openid-connect-messages-1_0.html#ImplementationConsiderations</span></a><br>

<br>We’ve been discussing this at some length and probably would not ship a OP conforming to this draft, because our plans do not include support for OpenID Request Objects.  It seems perfectly possible to implement an Internet-scale federated-login system with good interoperability, security, user-experience, and developer-experience properties, entirely without the use of Request Objects. <span> </span><br>

<br>Given this, why are they considered essential for the MTI section?  Absent Request Objects, our chances of shipping a conforming OP are pretty good.<u></u><u></u></p></div><div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

  -Tim<u></u><u></u></div></div><div><p class="MsoNormal" style="margin:0in 0in 12pt;font-size:12pt;font-family:'Times New Roman',serif"> <u></u><u></u></p></div></div><div style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif">

<span style="font-size:13.5pt;font-family:Helvetica,sans-serif">_______________________________________________<br>Openid-specs-ab mailing list<br><a href="mailto:Openid-specs-ab@lists.openid.net" style="color:purple;text-decoration:underline" target="_blank">Openid-specs-ab@lists.openid.net</a><br>

<a href="http://lists.openid.net/mailman/listinfo/openid-specs-ab" style="color:purple;text-decoration:underline" target="_blank">http://lists.openid.net/mailman/listinfo/openid-specs-ab</a><u></u><u></u></span></div></div>

</div><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:'Times New Roman',serif"></p></div></div></div></blockquote></div><br></div></div></div></div></div><br>_______________________________________________<br>


Openid-specs-ab mailing list<br>
<a href="mailto:Openid-specs-ab@lists.openid.net">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>