Inline: <br><br><div class="gmail_quote">2013/3/29 Mike Jones <span dir="ltr"><<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">“azp” isn’t an OAuth construct – it’s an OpenID Connect construct that we’ve defined (although apparently not precisely enough that we have broad agreement
on what it means and how it’s used). I think the outcome of this thread should be to clarify the definition so others will understand better what was intended and what wasn’t.<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">My logic is that if it was legitimate to just hand off the token from one client to another without any indication that it’s OK to do so, we wouldn’t need “azp”
at all; we’d just give the token to the other presenter and it would happily use it. </span></p></div></div></blockquote><div><br></div><div>That actually is the notion of bearer as generally (i.e., not only in OAuth world) understood. Also, the OAuth specs does not preclude it. </div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">“azp” is there as a declaration that, in this particular case, the handoff was authorized, and that that the party identified in the “azp” claim is a legitimate presenter,
even though it was not the requester of the token. Hence, without “azp”, the token is scoped to the requesting client as the sole authorized presenter.</span></p></div></div></blockquote><div><br></div><div>To me, azp is the explicit restriction on who can use the token. </div>
<div>Bearer has no restriction like that. Or, if it does, it should change its name as well as add text about it in the spec. </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-US" link="blue" vlink="purple"><div><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"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">In summary, if handoff to arbitrary parties was OK, we wouldn’t need “azp” in the first place.</span></p>
</div></div></blockquote><div><br></div><div>As long as the spec text does not preclude it, it is ok, and it seems it is ok from the current text and the naming of it. The security model of the bearer is contingent on how securely you can hold onto the token. In the real world, it is equivalent to how securely you can hold onto your cash, which is a prime example of a bearer instrument. It is also perfectly fine for you to give the cash to your wife to dispense. This does not happen in the case of a credit card, which is not a bearer instrument but a registered instrument with card holder name as "azp". </div>
<div><br></div><div>Nat</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><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"><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>
<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""> Nat Sakimura [mailto:<a href="mailto:sakimura@gmail.com" target="_blank">sakimura@gmail.com</a>]
<br>
<b>Sent:</b> Thursday, March 28, 2013 5:06 PM</span></p><div><div class="h5"><br>
<b>To:</b> Mike Jones<br>
<b>Cc:</b> Tim Bray; openid-specs-ab<br>
<b>Subject:</b> Re: [Openid-specs-ab] OpenID Connect and Identity Delegation<u></u><u></u></div></div><p></p><div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Could you point me to the text in OAuth spec describing it? <u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Also, there are legitimate cases where changing hands happens, which is not leaking. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">As long as the original party that has gotten the bearer token is consciously handing it to another client, it should be fine. e.g., sometimes connected client handing it to the server component that has a different client_id. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Nat<u></u><u></u></p>
<div>
<p class="MsoNormal">2013/3/29 Mike Jones <<a href="mailto:Michael.Jones@microsoft.com" target="_blank">Michael.Jones@microsoft.com</a>><u></u><u></u></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Changing hands doesn’t mean that it’s authorized. It just means that the token has been leaked to
an unauthorized party.</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>
<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""> Nat Sakimura [mailto:<a href="mailto:sakimura@gmail.com" target="_blank">sakimura@gmail.com</a>]
<br>
<b>Sent:</b> Thursday, March 28, 2013 4:51 PM<br>
<b>To:</b> Mike Jones<br>
<b>Cc:</b> Tim Bray; openid-specs-ab</span><u></u><u></u></p>
<div>
<div>
<p class="MsoNormal"><br>
<b>Subject:</b> Re: [Openid-specs-ab] OpenID Connect and Identity Delegation<u></u><u></u></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Which is not the case that it may sometime change the hand. The name bearer suggests otherwise as well. Bearer is whoever has it. <u></u><u></u></p>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">From Oxford Dictionary: <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<blockquote style="margin-left:30.0pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><b><span style="font-size:9.0pt;font-family:"Georgia","serif";color:#333333;border:none windowtext 1.0pt;padding:0in;background:white">1</span></b><span style="font-size:9.0pt;font-family:"Georgia","serif";color:#333333;border:none windowtext 1.0pt;padding:0in;background:white">a
person or thing that carries or holds something:</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-size:9.0pt;font-family:"Georgia","serif";color:#333333;border:none windowtext 1.0pt;padding:0in;background:white">2</span></b><span style="font-size:9.0pt;font-family:"Georgia","serif";color:#333333;background:white">a
person who presents a cheque or other order to pay money:</span><u></u><u></u></p>
</div>
</blockquote>
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">And here is a description of "bearer bond" from wikipedia: <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
<blockquote style="margin-left:30.0pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial","sans-serif";background:white">A <b>bearer bond</b> is a debt security issued by a business entity, such as a corporation, or by
a government. It differs from the more common types of investment securities in that it is unregistered – no records are kept of the owner, or the transactions involving ownership. Whoever physically holds the paper on which the bond is issued owns the </span><a href="http://en.wikipedia.org/wiki/Financial_instrument" title="Financial instrument" target="_blank"><span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:#0b0080;background:white;text-decoration:none">instrument</span></a><span style="font-size:10.0pt;font-family:"Arial","sans-serif";background:white">.
This is useful for </span><a href="http://en.wikipedia.org/wiki/Investor" title="Investor" target="_blank"><span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:#0b0080;background:white;text-decoration:none">investors</span></a><span style="font-size:10.0pt;font-family:"Arial","sans-serif";background:white"> who
wish to retain anonymity. Recovery of the value of a bearer bond in the event of its loss, theft, or destruction is usually impossible. </span><u></u><u></u></p>
</div>
</blockquote>
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">At the same time, bearer is more privacy preserving in some sense. In a "registered token", i.e., token with the "azp", it is impossible to hide who is presenting it. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Nat<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal">-- <br>
Nat Sakimura (=nat)<u></u><u></u></p>
<div>
<p class="MsoNormal">Chairman, OpenID Foundation<br>
<a href="http://nat.sakimura.org/" target="_blank">http://nat.sakimura.org/</a><br>
@_nat_en<u></u><u></u></p>
</div>
</div>
</div></div></div>
</div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Nat Sakimura (=nat)<div>Chairman, OpenID Foundation<br><a href="http://nat.sakimura.org/" target="_blank">http://nat.sakimura.org/</a><br>@_nat_en</div>