<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>