<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri","sans-serif";}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Spec call notes 23-Jun-11<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Edmund Jay<o:p></o:p></p>
<p class="MsoNormal">Mike Jones<o:p></o:p></p>
<p class="MsoNormal">Marius Scurtescu<o:p></o:p></p>
<p class="MsoNormal">Breno de Medeiros<o:p></o:p></p>
<p class="MsoNormal">John Bradley<o:p></o:p></p>
<p class="MsoNormal">Nat Sakimura<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Goal complete specs enabling implementations by end of month<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Agenda:<o:p></o:p></p>
<p class="MsoNormal"> - Parameter renaming<o:p></o:p></p>
<p class="MsoNormal"> - Feedback on dynamic registration<o:p></o:p></p>
<p class="MsoNormal"> - What is the issuer?<o:p></o:p></p>
<p class="MsoNormal"> - Discovery<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> - Defer discussions on document structuring<o:p></o:p></p>
<p class="MsoNormal"> But Edmund has started work on combining the code, artifact, and implicit bindings<o:p></o:p></p>
<p class="MsoNormal"> to create an HTTP binding<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Parameter "id_token" or "openid_token" was renamed to "session"<o:p></o:p></p>
<p class="MsoNormal"> Breno doesn't like calling things that aren't OpenID identifiers "openid"<o:p></o:p></p>
<p class="MsoNormal"> We agreed to use the name "id_token"<o:p></o:p></p>
<p class="MsoNormal"> We would also use "id_token" as one of the requested OAuth response types<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Dynamic Registration and Discovery<o:p></o:p></p>
<p class="MsoNormal"> We are currently using SWD to discover the IdP<o:p></o:p></p>
<p class="MsoNormal"> Obtaining a client identifier requires client registration<o:p></o:p></p>
<p class="MsoNormal"> We are still missing a means of discovering capabilities<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> Breno points out that if we strike out client_id, client_secret, expires_in we'd have generic discovery<o:p></o:p></p>
<p class="MsoNormal"> Breno wants to discover the dynamic client registration endpoint<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> Logic will be:<o:p></o:p></p>
<p class="MsoNormal"> 1. Do discovery using SWD to get a discovery URL for the IdP<o:p></o:p></p>
<p class="MsoNormal"> 2. Do a HTTP get at discovery URL location<o:p></o:p></p>
<p class="MsoNormal"> 3. Do dynamic client registration<o:p></o:p></p>
<p class="MsoNormal"> Any of these steps can be optimized out if already known<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> John will edit the client registration and SWD specs to accomplish this<o:p></o:p></p>
<p class="MsoNormal"> The "Connect SWD" spec will be renamed to something more meaningful like "Connect Discovery"<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> Breno will send John a list of the information he believes is required for dynamic registration<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Issuer Identifier<o:p></o:p></p>
<p class="MsoNormal"> Issue how to verify issuer of an identifier<o:p></o:p></p>
<p class="MsoNormal"> Token introspection endpoint one way of verifying IdP<o:p></o:p></p>
<p class="MsoNormal"> Public key another way of verifying IdP<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> We can use the discovery URL location as the issuer<o:p></o:p></p>
<p class="MsoNormal"> Issuer must be authoritative for the URL<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> Well-known locations for SWD, Key, Discovery Document<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> Issuer can be scheme,domain,port of discovery document URL<o:p></o:p></p>
<p class="MsoNormal"> Since the discovery document location is well-known, this and the discovery document location are equivalent<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> We will eventually need to define how keys can be out of band, rather than SSL, for LOA3<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Other<o:p></o:p></p>
<p class="MsoNormal"> Breno pointed out that dynamic registration may require authorization<o:p></o:p></p>
<p class="MsoNormal"> Some IdPs may not allow dynamic registration by all parties<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> John asked about refresh methods<o:p></o:p></p>
<p class="MsoNormal"> Key rotation also came up<o:p></o:p></p>
<p class="MsoNormal"> These seem like separate use cases<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Action items:<o:p></o:p></p>
<p class="MsoNormal"> Breno will send John a list of the information he believes is required for dynamic registration<o:p></o:p></p>
<p class="MsoNormal"> John will update discovery and registration documents, per this call<o:p></o:p></p>
<p class="MsoNormal"> Nat will send an invitation to another call a week from this one<o:p></o:p></p>
</div>
</body>
</html>