<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 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@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:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        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="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Spec call notes 1-Feb-18<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">George Fletcher<o:p></o:p></p>
<p class="MsoNormal">Phil Hunt<o:p></o:p></p>
<p class="MsoNormal">Mike Jones<o:p></o:p></p>
<p class="MsoNormal">Brian Campbell<o:p></o:p></p>
<p class="MsoNormal">Rich Levinson<o:p></o:p></p>
<p class="MsoNormal">Roland Hedberg<o:p></o:p></p>
<p class="MsoNormal">Bjorn Hjelm<o:p></o:p></p>
<p class="MsoNormal">Ravi Kumar Kanukollu (CA)<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">Agenda:<o:p></o:p></p>
<p class="MsoNormal">              Federation Draft<o:p></o:p></p>
<p class="MsoNormal">              Open Issues<o:p></o:p></p>
<p class="MsoNormal">              OAuth AS Metadata Draft<o:p></o:p></p>
<p class="MsoNormal">              Roland's new Python library and interop issues encountered<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Federation Draft<o:p></o:p></p>
<p class="MsoNormal">              There weren't many changes<o:p></o:p></p>
<p class="MsoNormal">              A few metadata field names were changed<o:p></o:p></p>
<p class="MsoNormal">              Roland: There is experience from large-scale academic federations in also having communities<o:p></o:p></p>
<p class="MsoNormal">                           There are also "communities" as well as full-scale federations<o:p></o:p></p>
<p class="MsoNormal">                           A companion document was written by a Spanish person about this<o:p></o:p></p>
<p class="MsoNormal">                           https://github.com/OpenIDC/fedoidc/blob/master/doc/howto/multifederation.md<o:p></o:p></p>
<p class="MsoNormal">                           We need to sort out what the relationship is to the main federation draft<o:p></o:p></p>
<p class="MsoNormal">                           Communities typically don't impose many policies<o:p></o:p></p>
<p class="MsoNormal">                           But there will be a federation key<o:p></o:p></p>
<p class="MsoNormal">              People are doing pilots of the federation draft<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Open Issues<o:p></o:p></p>
<p class="MsoNormal">              https://bitbucket.org/openid/connect/issues?status=new&status=open<o:p></o:p></p>
<p class="MsoNormal">              No new open issues<o:p></o:p></p>
<p class="MsoNormal">              Issue #984: Create a document explaining "single logout" semantics<o:p></o:p></p>
<p class="MsoNormal">                           Mike submitted a position paper to the upcoming OAuth security workshop requesting that we discuss this<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">OAuth AS Metadata Draft<o:p></o:p></p>
<p class="MsoNormal">              There was an IESG DISCUSS on appending .well-known to an issuer with a path<o:p></o:p></p>
<p class="MsoNormal">                           See the OAuth mailing list for details<o:p></o:p></p>
<p class="MsoNormal">              This violates BCP 190, so we're not going to get this published as-is<o:p></o:p></p>
<p class="MsoNormal">              Adam Roach's suggestion was to put the path before the .well-known URI, rather than after it<o:p></o:p></p>
<p class="MsoNormal">                           This is the same when there's no path in the issuer but different if there is<o:p></o:p></p>
<p class="MsoNormal">              Practically, this means that some software implementing both Connect Discovery and this draft will end up doing both<o:p></o:p></p>
<p class="MsoNormal">                           This is unfortunate, but hundreds of implementations already implement Connect Discovery and the IESG won't budge<o:p></o:p></p>
<p class="MsoNormal">              The Connect Discovery errata will register metadata values in the registry created<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Roland's new Python library and interop issues encountered<o:p></o:p></p>
<p class="MsoNormal">              Roland has built a new RP library<o:p></o:p></p>
<p class="MsoNormal">              He tried testing against Google, Facebook, LinkedIn, Salesforce, Amazon, GitHub, and Okta so far<o:p></o:p></p>
<p class="MsoNormal">              Most large OPs aren't fully following the Connect specifications<o:p></o:p></p>
<p class="MsoNormal">                           Some implement OAuth with extensions but not really connect<o:p></o:p></p>
<p class="MsoNormal">                           What is returned from the Token Endpoint varies<o:p></o:p></p>
<p class="MsoNormal">                           Some have gotten rid of client authentication, for instance<o:p></o:p></p>
<p class="MsoNormal">              George Fletcher has seen numerous differences as well<o:p></o:p></p>
<p class="MsoNormal">                           For instance, not ignoring not-understood parameters<o:p></o:p></p>
<p class="MsoNormal">                           We can add negative tests about these things in the certification test suite<o:p></o:p></p>
<p class="MsoNormal">                           He's seen problems when a scope value is sent to the token endpoint when the grant type is authorization code<o:p></o:p></p>
<p class="MsoNormal">                           Brian cautions that scope is a known parameter - not an unknown parameter<o:p></o:p></p>
<p class="MsoNormal">                           Mike made the point that RPs can shield themselves from this by not venturing beyond the specs<o:p></o:p></p>
<p class="MsoNormal">                                         Sending a scope parameter to the token endpoint in this case is going beyond the specs<o:p></o:p></p>
<p class="MsoNormal">              Roland would like people to send him a note when incompatibilities are found<o:p></o:p></p>
<p class="MsoNormal">                           George suggests that we could have a community-visible place to put this info<o:p></o:p></p>
<p class="MsoNormal">                           We should have conversations about "dead places"/gaps in the spec when they are found<o:p></o:p></p>
<p class="MsoNormal">              Nat thinks that we should have a publicly accessible issue tracker for compiling interop issues<o:p></o:p></p>
<p class="MsoNormal">                           Mike says that if we do this, we should first talk about it the upcoming board meeting<o:p></o:p></p>
<p class="MsoNormal">                                         We haven't typically been shaming people who haven't finished their implementations<o:p></o:p></p>
<p class="MsoNormal">                           George thought that maybe we should not identify where the failures occurred<o:p></o:p></p>
<p class="MsoNormal">                                         Mike doesn't think it's realistic to not identify where failures occurred<o:p></o:p></p>
<p class="MsoNormal">                                         Roland would want specifics so that he can reproduce the problems<o:p></o:p></p>
<p class="MsoNormal">              Nat provided a less controversial example<o:p></o:p></p>
<p class="MsoNormal">                           One of the implementations broke when it received an Accept: header with charset = utf8 designation<o:p></o:p></p>
</div>
</body>
</html>