Commit Graph

20 Commits

Author SHA1 Message Date
Benjamin Dauvergne 14a078ac22 New release 1.2.0 2014-08-25 22:55:40 +02:00
Benjamin Dauvergne 2fd265c2ff Describe autologin implementation in the README 2014-08-25 18:52:29 +02:00
Benjamin Dauvergne ae7481f5ae Refactor NegotiateView.principal_valid() into two other methods, user_found() and user_not_found()
It allows more fine grained behaviour override in case login is
successful.
2014-08-25 18:42:17 +02:00
Benjamin Dauvergne df4113c0af Add caution block to the README to inform about limitation on HTTP domain name and kerberos principal name building by browsers 2014-08-21 11:14:22 +02:00
Benjamin Dauvergne 4d9f518c0f Fix module authentication backend and urls module paths 2014-08-20 15:36:22 +02:00
Benjamin Dauvergne 05fa7aa891 bump release to 1.1.0 2014-08-12 11:53:19 +02:00
Benjamin Dauvergne 5a52caaf6c sample: add default config.py and a READMe 2014-08-12 11:51:23 +02:00
Benjamin Dauvergne ffa6112042 improve sample application, add more templates
- add logout link
- header line with username
- use JS autologin
2014-08-12 11:49:40 +02:00
Benjamin Dauvergne 2879803273 fix bad module path in sample application 2014-08-12 11:49:35 +02:00
Benjamin Dauvergne f4312adcd6 template include and js code for implementing Kerberos autologin
To get autologin on a public view just do

 {% include 'django_kerberos/autologin.html' %}
2014-08-12 11:49:35 +02:00
Benjamin Dauvergne c29ea2948d refactoring: rewrite login view as a cbv for better reusability
HTTP Negotiate workflow is now separated from the Django authentication
workflow so that you can inherit from the new NegotiateView and for
example implement a view which link a currently logged user to a
Kerberos identity or which allow to choose among a list of users linked
to a Kerberos identity.

An ajax mode was also added: if the view is called using XMLHttpRequest
and there is no 'next' param the view return JSON content 'true' if
authentication succeed, 'false' otherwise.
2014-08-12 11:06:21 +02:00
Benjamin Dauvergne c76e9e24e2 simplification: remove setting KERBEROS_KEYTAB
The keytab file must be passed using the usual KRB5_KTNAME environment
variable to the Django process, no need to use a custom setting for
that. For memory syntax is KRB5_KTNAME=FILE:/path/to/keytab
2014-08-12 11:06:21 +02:00
Benjamin Dauvergne 8ea791cf98 refactoring: improve reusability by encapsulating access to app_settings in methods
If you want to inherit from our base backend or password hasher you
don't need to depend upon our way of handling settings.
2014-08-12 11:06:21 +02:00
Benjamin Dauvergne 2cb06046b8 add new login/password backend using Kerberos, rename KERBEROS_HASHER_SERVICE_PRINCIPAL to KERBEROS_SERVICE_PRINCIPAL 2014-08-12 11:04:00 +02:00
Benjamin Dauvergne 7896944e30 refactorize to improve reusability of the Kerberos backend 2014-08-10 01:24:32 +02:00
Benjamin Dauvergne 823cdcb9ad new pseudo password hasher verifying passwords using Kerberos 2014-08-10 01:24:29 +02:00
Benjamin Dauvergne 76998bd570 README: add section about the sample Django project 2014-08-09 04:28:51 +02:00
Benjamin Dauvergne 1fcda4c815 fix restructured text in README 2014-08-09 03:54:42 +02:00
Benjamin Dauvergne b1d6a0b129 add description 2014-08-09 03:52:05 +02:00
Benjamin Dauvergne cb05f9eb2a first commit 2014-08-09 03:48:24 +02:00