<div dir="ltr">All,<div><br></div><div>I write this with great trepidation as we have a large and growing pile of other things to do, but Signet might be willing to set up an OIDC testing service like SAMLtest if there's the popular demand.</div><div><br></div><div>Are we at the stage where such a service would be useful?  Do people really need one, or is it simple enough to configure on one's own servers?</div><div><br></div><div>Best wishes,</div><div>Nate.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, May 23, 2019 at 12:09 AM Janne Lauros <<a href="mailto:janne.lauros@csc.fi">janne.lauros@csc.fi</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="font-family:arial,helvetica,sans-serif;font-size:10pt;color:rgb(0,0,0)"><div></div><div>Hi Keith and all,<br><br>>> Geant folks, one item missing from your documentation.<br>Thanks for pointing that out. Adding the keyset is mentioned in <a href="https://github.com/CSCfi/shibboleth-idp-oidc-extension/wiki/Installing-from-archive#profile-configurations" target="_blank">https://github.com/CSCfi/shibboleth-idp-oidc-extension/wiki/Installing-from-archive#profile-configurations</a> and in <a href="https://github.com/CSCfi/shibboleth-idp-oidc-extension/wiki/OIDC.Keyset" target="_blank">https://github.com/CSCfi/shibboleth-idp-oidc-extension/wiki/OIDC.Keyset</a>. The example activation in <a href="https://github.com/CSCfi/shibboleth-idp-oidc-extension/wiki/DynamicClientRegistration" target="_blank">https://github.com/CSCfi/shibboleth-idp-oidc-extension/wiki/DynamicClientRegistration</a> was bad and you propably copied the example losing the keyset configuration. I changed the wording and also the example to prevent that. I hope it is better now. <br><br>Br Janne<br></div><div><br></div><hr id="gmail-m_-8010283298614748262zwchr"><div><b>From: </b>"Keith Wessel" <<a href="mailto:kwessel@illinois.edu" target="_blank">kwessel@illinois.edu</a>><br><b>To: </b>"users" <<a href="mailto:users@shibboleth.net" target="_blank">users@shibboleth.net</a>><br><b>Sent: </b>Wednesday, 22 May, 2019 17:00:02<br><b>Subject: </b>RE: Testing OIDC client registration<br></div><div><br></div><div>






<div class="gmail-m_-8010283298614748262WordSection1">
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Hi, all,</span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Just wanted to report that I did get this working without having to manually download the OP metadata.</span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Geant folks, one item missing from your documentation. You mention that the OIDC.Registration bean has to be added to the UnverifiedRelyingParty configratuion.
 That gets the registration done, but the client can’t retrieve the keyset. I also had to add the OIDC.Keyset bean.</span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">And for anyone trying to test this with Apache mod_auth_openidc, my config looks like this:</span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCClientID test_rp</p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCClientSecret <redacted></p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCProviderIssuer <a href="https://idp.example.edu%20#%20matching%20issuer%20from%20IdP's%20OIDC%20extension%20configuration%20and%20a%20resolvable%20URL%20that,%20when%20appended%20with%20.well-known/openid-configuration,%20will%20result%20in%20your%20OIDC%20provider%20config)u" target="_blank">
https://idp.example.edu # matching issuer from IdP’s OIDC extension configuration and a resolvable URL that, when appended with .well-known/openid-configuration, will result in your OIDC provider config)u</a><br></p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCOAuthSSLValidateServer Off # Test client doesn’t have https</p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCSSLValidateServer Off</p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCRedirectURI <a href="http://client.example.edu/protected/redirect_uri" target="_blank">
http://client.example.edu/protected/redirect_uri</a><br></p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCCryptoPassphrase <redacted></p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCResponseType "code"</p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCScope "openid profile email address phone"</p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCMetadataDir /var/cache/httpd/mod_auth_openidc/metadata</p>
<p class="gmail-m_-8010283298614748262MsoPlainText">OIDCCacheDir /var/cache/httpd/mod_auth_openidc/cache</p>
<p class="gmail-m_-8010283298614748262MsoPlainText"> </p>
<p class="gmail-m_-8010283298614748262MsoPlainText"><Location /protected></p>
<p class="gmail-m_-8010283298614748262MsoPlainText">AuthType openid-connect</p>
<p class="gmail-m_-8010283298614748262MsoPlainText"># And whatever Require or Grant directives go here</p>
<p class="gmail-m_-8010283298614748262MsoPlainText"></Location></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">The first time you log in, you’ll be prompted by the Apache module to enter your provider. If you type in the full issuer ID including the https://, it should
 go to .well-known/opened-configuration and retrieve everything it needs to know. It will then perform a client registration, and everything should work from there on out for logging in and getting back claims.</span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></p>
<p class="MsoNormal"><a name="m_-8010283298614748262__MailEndCompose"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">Keith</span></a><br></p>
<p class="MsoNormal"><span><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)"> </span></span></p>
<span></span>
<p class="MsoNormal"><b><span style="font-size:11pt;font-family:Calibri,sans-serif">From:</span></b><span style="font-size:11pt;font-family:Calibri,sans-serif"> users <<a href="mailto:users-bounces@shibboleth.net" target="_blank">users-bounces@shibboleth.net</a>>
<b>On Behalf Of </b>Liam Hoekenga<br>
<b>Sent:</b> Wednesday, May 15, 2019 5:30 PM<br>
<b>To:</b> Shib Users <<a href="mailto:users@shibboleth.net" target="_blank">users@shibboleth.net</a>><br>
<b>Subject:</b> Re: Testing OIDC client registration</span></p>
<p class="MsoNormal"> </p>
<div>
<div>
<div>
<div>
<div>
<blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Calibri,sans-serif;color:rgb(31,73,125)">One question before I try this, though: why do I have to manually download the OP’s metadata and install
 it? Isn’t part of the whole thing the module’s ability to dynamically discover and download the OP’s information?</span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">I think that it's supposed to be able to download the metadata. </p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">I believe if you give it a hostname, it's supposed to try to find the well-known information, and I think that
<a href="mailto:username@example.edu" target="_blank">username@example.edu</a> looks require that .well-known information be located at
<a href="https://example.edu" target="_blank">https://example.edu</a>.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">I think that hostname based discovery has issues (at least it did in mid-March).   If I don't specify the protocol, it complains..</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">[Fri Mar 15 16:09:00 2019] [error] [client xxx.xxx.xxx.xxx] oidc_metadata_provider_is_valid: requested issuer (<a href="http://idp.example.edu" target="_blank">idp.example.edu</a>) does not match the "issuer" value in the provider metadata
 file: <a href="https://idp.example.edu" target="_blank">https://idp.example.edu</a>, referer:
<a href="https://sp.example.umich.edu/oidc/" target="_blank">https://sp.example.umich.edu/oidc/</a><br></p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">The spec says iss is supposed to be a case sensitive HTTPS url.   I had assumed the hostname was sufficient based on the default form and "<a href="http://mitreid.org" target="_blank">mitreid.org</a>" (but even
<a href="http://mitreid.org" target="_blank">mitreid.org</a> generates an error, requiring "<a href="https://mitreid.org" target="_blank">https://mitreid.org</a>" to work).</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">I asked the developer (Hans Zandbelt) and he said he believed that it was due to a change at some point in the code where he started to put more strict requirements on the provided issuer values because of recent attacks but failed to adapt
 the HTML discovery pages.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Liam</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><span style="border:1pt solid windowtext;padding:0in"><img style="width: 1.0416in; height: 1.0416in;" id="gmail-m_-8010283298614748262_x0000_i1025" src="cid:16ae55b0490a30f8d381" alt="Image removed by sender." width="100" height="100" border="0"></span></p>
</div>
</div>
</div>


<br>-- <br>For Consortium Member technical support, see <a href="https://wiki.shibboleth.net/confluence/x/coFAAg" target="_blank">https://wiki.shibboleth.net/confluence/x/coFAAg</a><br>To unsubscribe from this list send an email to <a href="mailto:users-unsubscribe@shibboleth.net" target="_blank">users-unsubscribe@shibboleth.net</a><br></div></div></div>-- <br>
For Consortium Member technical support, see <a href="https://wiki.shibboleth.net/confluence/x/coFAAg" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/confluence/x/coFAAg</a><br>
To unsubscribe from this list send an email to <a href="mailto:users-unsubscribe@shibboleth.net" target="_blank">users-unsubscribe@shibboleth.net</a></blockquote></div>