* [gentoo-soc] identity.g.o OpenID provider -- weekly report #1
@ 2013-06-23 10:38 Michał Górny
0 siblings, 0 replies; only message in thread
From: Michał Górny @ 2013-06-23 10:38 UTC (permalink / raw
To: gentoo-soc
[-- Attachment #1: Type: text/plain, Size: 3191 bytes --]
Hello, all.
As announced earlier, my project for this year of GSoC is the deployment
of an OpenID provider on identity.gentoo.org [1]. As stated
in the earlier mail, the main goal is to provide easy-to-use OpenID
identities for all Gentoo developers and at the same time make most
of Gentoo services OpenID-aware.
For those interested in the current development, you can check out
the source code on the github repo [2] and take a look
at the intermediate status/TODO wiki page [3].
Pavlos Ratis (dastergon) is doing an another project for
identity.gentoo.org, with his goal being to provide a webui for
accessing and modifying the LDAP records.
Week #1
=======
Status: on schedule
Tasks done:
- Some working initial OpenID code has been written and integrated with
the webapp. The webapp supports authenticating user over LDAP, asking
for permission to submit the identity to the site and submitting
a proper identity.
- A django database backend has been written for python-openid library
that utilizes the django ORM to store the OpenID server state data.
Known problems:
- The code lacks proper error responses. However, it's unclear from
the spec how to properly determine the type of request, especially if
it's erroneous, and therefore choose a proper response form. I've
opened a question on stackoverflow [4] as it was suggested
on the OpenID IRC channel but since I didn't get any answer yet I'm
going to try the mailing list.
- LDAP connection errors are not reported properly, and end up being
reported as 'invalid username or password'. This was already reported
upstream by Theo [5] but we're still waiting for a solution.
- The coding has been done on a separate sub-app which means that
the login URIs in global settings need to be changed for proper OpenID
support. This will also make merging the changes a bit harder.
- The code raises an exception whenever a different user is being
logged in than the one requested by OpenID. This is an assertion done
in python-openid, the library used for OpenID support, and I have
submitted a pull request allowing different ID to be used [6].
However, it's unclear if it's the proper thing to do, therefore I'm
waiting for upstream to answer it.
Plans for the upcoming week:
- Pull in Pavlos' changes to the webapp UI. Merge my common view
changes into his new UI.
- Work on integrating the code into the core i.g.o app and cleaning it
up.
- Implement the proper (or at least semi-proper) error responses.
- Support storing 'always permit this site' preference in the db
and overriding that preference on login.
[1]:http://article.gmane.org/gmane.linux.gentoo.summer-of-code/1337
[2]:https://github.com/mgorny/identity.gentoo.org
[3]:https://github.com/gentoo/identity.gentoo.org/wiki/TODO_mgorny
[4]:http://stackoverflow.com/questions/17217502/how-to-distinguish-server-side-direct-request-from-an-indirect-request-in-open
[5]:https://groups.google.com/forum/#!topic/django-auth-ldap/utS-Yq_LKPc
[6]:https://github.com/openid/python-openid/pull/61
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 966 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2013-06-23 10:37 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-23 10:38 [gentoo-soc] identity.g.o OpenID provider -- weekly report #1 Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox