<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ipsilon.git/ipsilon/providers, branch ecp</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/'/>
<entry>
<title>Implement ECP in Ipsilon</title>
<updated>2015-08-27T12:07:26+00:00</updated>
<author>
<name>John Dennis</name>
<email>jdennis@redhat.com</email>
</author>
<published>2015-01-26T21:04:40+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=665977900bda4e252e2f8895c986767e4bbba5a6'/>
<id>665977900bda4e252e2f8895c986767e4bbba5a6</id>
<content type='text'>
* add saml2/SSO/SOAP endpoint.
* add check for lasso version, ECP endpoint only exposed in metadata
  if lasso has full ECP support.
* add SSO_SOAP soap authentication handler (used for ECP).
* add SAML binding to transaction so we can determine if cookies
  and other HTTP concepts are expected. Each handler is responsible
  for setting the binding.
* add some constants needed for ECP

Signed-off-by: John Dennis &lt;jdennis@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* add saml2/SSO/SOAP endpoint.
* add check for lasso version, ECP endpoint only exposed in metadata
  if lasso has full ECP support.
* add SSO_SOAP soap authentication handler (used for ECP).
* add SAML binding to transaction so we can determine if cookies
  and other HTTP concepts are expected. Each handler is responsible
  for setting the binding.
* add some constants needed for ECP

Signed-off-by: John Dennis &lt;jdennis@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Log a message when authentication is successful but doesn't</title>
<updated>2015-08-25T12:55:28+00:00</updated>
<author>
<name>Rob Crittenden</name>
<email>rcritten@redhat.com</email>
</author>
<published>2015-08-24T17:42:19+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=ea3a3c63719961c66b7b45cd7cfee51cf4bd5f6d'/>
<id>ea3a3c63719961c66b7b45cd7cfee51cf4bd5f6d</id>
<content type='text'>
match the NameID required by the SAML request.

https://fedorahosted.org/ipsilon/ticket/157

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
match the NameID required by the SAML request.

https://fedorahosted.org/ipsilon/ticket/157

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix permission check on SP update</title>
<updated>2015-08-21T13:45:00+00:00</updated>
<author>
<name>Patrick Uiterwijk</name>
<email>puiterwijk@redhat.com</email>
</author>
<published>2015-08-18T14:26:50+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=826e6339441546f596320f3d73304ab5f7c10de6'/>
<id>826e6339441546f596320f3d73304ab5f7c10de6</id>
<content type='text'>
The permission check for owner was checking the wrong field,
which would make it possible for anyone to update the Service
Provider owner, making it possible for anyone to change the
SP owner, allowing anyone to change the SP name.

Fixes: CVE-2015-5217

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The permission check for owner was checking the wrong field,
which would make it possible for anyone to update the Service
Provider owner, making it possible for anyone to change the
SP owner, allowing anyone to change the SP name.

Fixes: CVE-2015-5217

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Only initialize the Persona IDP when actually enabled</title>
<updated>2015-08-18T07:41:03+00:00</updated>
<author>
<name>Patrick Uiterwijk</name>
<email>puiterwijk@redhat.com</email>
</author>
<published>2015-07-17T14:03:15+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=7b470b0e494a7ff5a088c3ead2e60754b67282f1'/>
<id>7b470b0e494a7ff5a088c3ead2e60754b67282f1</id>
<content type='text'>
This has the same reasoning as the OpenID patch (commit
ac7c20cca81c3d23ee66f224030b316bdff2274a), with additionally
that it will otherwise error on loading the signing key.
(This is not critical though as it will retry loading and
succeed, this is just to make it not spit that error).

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This has the same reasoning as the OpenID patch (commit
ac7c20cca81c3d23ee66f224030b316bdff2274a), with additionally
that it will otherwise error on loading the signing key.
(This is not critical though as it will retry loading and
succeed, this is just to make it not spit that error).

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Drop all the calls to .keys() when iterating on the keys of a dict</title>
<updated>2015-08-11T10:08:50+00:00</updated>
<author>
<name>Pierre-Yves Chibon</name>
<email>pingou@pingoured.fr</email>
</author>
<published>2015-07-28T11:19:49+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=ce2bbec3f2a010cfa26363a91a6224efe484f06f'/>
<id>ce2bbec3f2a010cfa26363a91a6224efe484f06f</id>
<content type='text'>
When browsing the keys of a dictionary, you can use the ``.keys()`` method but
that is in fact only really useful if you want to store the list of keys first
and act on them (like sorting them or so).
If you just want to iterate through all the keys, no matter the order, then it
is much much faster to just do: ``for key in dict``

Some stats about this can be found there:
http://blog.pingoured.fr/index.php?post/2012/03/12/Python-notes-to-self

Signed-off-by: Pierre-Yves Chibon &lt;pingou@pingoured.fr&gt;
Reviewed-by: Simo Sorce &lt;simo@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When browsing the keys of a dictionary, you can use the ``.keys()`` method but
that is in fact only really useful if you want to store the list of keys first
and act on them (like sorting them or so).
If you just want to iterate through all the keys, no matter the order, then it
is much much faster to just do: ``for key in dict``

Some stats about this can be found there:
http://blog.pingoured.fr/index.php?post/2012/03/12/Python-notes-to-self

Signed-off-by: Pierre-Yves Chibon &lt;pingou@pingoured.fr&gt;
Reviewed-by: Simo Sorce &lt;simo@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Only initialize the SAML IDP when actually enabled</title>
<updated>2015-07-17T13:59:49+00:00</updated>
<author>
<name>Patrick Uiterwijk</name>
<email>puiterwijk@redhat.com</email>
</author>
<published>2015-07-17T13:57:28+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=07ec779defce9b0fecf4da8c726d1b492c147626'/>
<id>07ec779defce9b0fecf4da8c726d1b492c147626</id>
<content type='text'>
This has the same reasoning as the OpenID patch (commit
ac7c20cca81c3d23ee66f224030b316bdff2274a), with additionally
that it will otherwise error on finding the metadata.
(This is not critical though as it will retry loading and
succeed, this is just to make it not spit that error).

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This has the same reasoning as the OpenID patch (commit
ac7c20cca81c3d23ee66f224030b316bdff2274a), with additionally
that it will otherwise error on finding the metadata.
(This is not critical though as it will retry loading and
succeed, this is just to make it not spit that error).

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for logout over SOAP</title>
<updated>2015-07-16T13:04:36+00:00</updated>
<author>
<name>Rob Crittenden</name>
<email>rcritten@redhat.com</email>
</author>
<published>2015-06-25T15:00:59+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=2751451f4158417e66974d6415d2da84f612ab3c'/>
<id>2751451f4158417e66974d6415d2da84f612ab3c</id>
<content type='text'>
As each login session comes in, store the supported logout
mechanisms in the SP metadata.

Upon a logout request, loop through all of those SP's that
support SOAP and log those out first, then log out any
remaining sessions using HTTP Redirect.

https://fedorahosted.org/ipsilon/ticket/59

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As each login session comes in, store the supported logout
mechanisms in the SP metadata.

Upon a logout request, loop through all of those SP's that
support SOAP and log those out first, then log out any
remaining sessions using HTTP Redirect.

https://fedorahosted.org/ipsilon/ticket/59

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Only initialize the OpenID IDP when actually enabled</title>
<updated>2015-07-08T11:27:02+00:00</updated>
<author>
<name>Patrick Uiterwijk</name>
<email>puiterwijk@redhat.com</email>
</author>
<published>2015-07-08T10:37:04+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=ac7c20cca81c3d23ee66f224030b316bdff2274a'/>
<id>ac7c20cca81c3d23ee66f224030b316bdff2274a</id>
<content type='text'>
This is needed because otherwise it will try to set the database schema version
before it read the configuration for providers, which means it will do this
in the default (openid.sqlite) database file.
If you are running as a non-privileged user (as your should) with the working
directory pointing somewhere this user is unable to write, this means it will
fail to write this.

Note: the working directory is not in the default wsgi file, which means that
people using that will not likely hit this bug.

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Simo Sorce &lt;simo@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is needed because otherwise it will try to set the database schema version
before it read the configuration for providers, which means it will do this
in the default (openid.sqlite) database file.
If you are running as a non-privileged user (as your should) with the working
directory pointing somewhere this user is unable to write, this means it will
fail to write this.

Note: the working directory is not in the default wsgi file, which means that
people using that will not likely hit this bug.

Signed-off-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
Reviewed-by: Simo Sorce &lt;simo@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use plugin-specific configuration, better expiration</title>
<updated>2015-05-11T22:39:31+00:00</updated>
<author>
<name>Rob Crittenden</name>
<email>rcritten@redhat.com</email>
</author>
<published>2015-05-11T22:14:42+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=8445b3297cd0b25989f2575c21bf3426aee7c5ad'/>
<id>8445b3297cd0b25989f2575c21bf3426aee7c5ad</id>
<content type='text'>
Use a SAML2 plugin specific option to specify the database uri
for sessions.

Use a much more robust method to find sessions that need
expiration (thanks Patrick).

https://fedorahosted.org/ipsilon/ticket/90

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use a SAML2 plugin specific option to specify the database uri
for sessions.

Use a much more robust method to find sessions that need
expiration (thanks Patrick).

https://fedorahosted.org/ipsilon/ticket/90

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove expired SAML2 sessions</title>
<updated>2015-05-11T22:39:28+00:00</updated>
<author>
<name>Rob Crittenden</name>
<email>rcritten@redhat.com</email>
</author>
<published>2015-04-20T20:44:41+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/jdennis/public_git/ipsilon.git/commit/?id=6437f6c9385e5e59cb21de7a3addedd904ee2825'/>
<id>6437f6c9385e5e59cb21de7a3addedd904ee2825</id>
<content type='text'>
Run a cherrypy background task to sift through the sessions
database and find expired entries and remove them.

From my testing if a previous execution of the background task
is still executing when the next one is scheduled to run, it will
skip it. In other words, you can't end up with multiple expirations
running at the same time.

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Run a cherrypy background task to sift through the sessions
database and find expired entries and remove them.

From my testing if a previous execution of the background task
is still executing when the next one is scheduled to run, it will
skip it. In other words, you can't end up with multiple expirations
running at the same time.

Signed-off-by: Rob Crittenden &lt;rcritten@redhat.com&gt;
Reviewed-by: Patrick Uiterwijk &lt;puiterwijk@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
