Commit Graph

1803 Commits

Author SHA1 Message Date
Benjamin Dauvergne 28956bb1fe bump release to 2.1.5 2014-08-05 11:56:52 +02:00
Benjamin Dauvergne f2e2f0c4ee integrate comments from #5180 2014-07-30 15:35:38 +02:00
Benjamin Dauvergne 5fede216f6 integrate fred diff to templates 2014-07-22 15:36:38 +02:00
Benjamin Dauvergne 6c08ce1d72 manager: l10n 2014-07-21 16:03:16 +02:00
Benjamin Dauvergne 34148a92c1 manager: implement users views 2014-07-21 16:03:16 +02:00
Benjamin Dauvergne b548d95ae1 manager/js: import gadjo.js 2014-07-21 15:24:44 +02:00
Benjamin Dauvergne dd1ffa8a04 manager: implement role view 2014-07-18 20:32:13 +02:00
Benjamin Dauvergne c9716ef62b start manager app, import gadjo theme 2014-07-18 20:31:53 +02:00
Benjamin Dauvergne 38ae1c2aa8 manager/static: add jquery-ui-contextmenu 2014-07-18 20:27:03 +02:00
Benjamin Dauvergne 45c542a5a8 manager/static: add purl.js 2014-07-18 20:26:58 +02:00
Benjamin Dauvergne 2039b47249 manager/static: add jquery.form 2014-07-18 20:26:54 +02:00
Benjamin Dauvergne fed533cce8 backends/ldap_backend: convert attributes name to str 2014-07-18 15:42:50 +02:00
Benjamin Dauvergne 7aa53327d8 attributes_ng/sources: add an ldap source 2014-07-18 15:27:29 +02:00
Benjamin Dauvergne 6f2fc98f75 models: fix AttributeError in UserExternalId.__repr__ 2014-07-18 15:27:29 +02:00
Benjamin Dauvergne 4930227c8a compat: add work-around for Django < 1.8 and commit_on_success 2014-07-18 15:27:29 +02:00
Benjamin Dauvergne e8a1f0ac06 auth2_auth/migrations: protect data modifying code with "if not db.dry_run"
Deleting authentication event content type must not be done when
db.dry_run is True.
2014-07-18 11:09:31 +02:00
Benjamin Dauvergne bdcf55b232 backends/ldap_backend: add legacy field mapping to attributes to import 2014-07-17 11:09:16 +02:00
Jérôme Schneider 6cb5602d51 settings: don't print "Debugging mode is active" 2014-07-17 09:48:23 +02:00
Benjamin Dauvergne adda44ab38 settings: allow to override field names in A2_PROFILE_FIELDS and A2_REGISTRATION_FIELDS 2014-07-16 17:28:07 +02:00
Benjamin Dauvergne e3135d477f settings: set LOCALE_PATHS
LOCALE_PATHS is set to
/var/lib/authentic2/locale:<project>/authentic2/locale and new entries
can be prepended through the environment variable LOCALE_PATHS.
2014-07-16 17:22:02 +02:00
Benjamin Dauvergne b056b26340 views: if A2_PROFILE_FIELDS is empty, use A2_REGISTRATION_FIELDS completed with extra attributes 2014-07-16 16:41:51 +02:00
Benjamin Dauvergne c48796b35e views: in profile view filter out empty attribute values 2014-07-16 16:31:09 +02:00
Benjamin Dauvergne 9ae75909da backends/models_backend: filter user email case-insensitively 2014-07-16 16:23:46 +02:00
Benjamin Dauvergne d2ccb7e043 views: refactor profile view, use CBV, and honor A2_PROFILE_FIELDS 2014-07-16 15:22:21 +02:00
Benjamin Dauvergne e8c49e593f views: return to profile page after validating an email change
Or to the change email form if the validation failed.
2014-07-16 14:45:55 +02:00
Benjamin Dauvergne c3fa0acacd views: return to profile after requesting an email change 2014-07-16 14:43:55 +02:00
Benjamin Dauvergne 8673268b46 saml: SAMLAttribute.attribute_name must not be constrained at the model level 2014-07-16 14:14:14 +02:00
Benjamin Dauvergne 3a25ebcd7d saml/models: add natural key to LibertyFederation 2014-07-16 12:48:02 +02:00
Benjamin Dauvergne eeec701f54 saml/models: add natural keys to LibertyServiceProvider and LibertyIdentityProvider 2014-07-16 12:29:33 +02:00
Benjamin Dauvergne 1c3c9229d0 settings: import A2_ACCEPT_EMAIL_AUTHENTICATION from environment 2014-07-16 11:54:33 +02:00
Benjamin Dauvergne 45135ffe6a settings: load all custom password hashers 2014-07-16 11:52:32 +02:00
Benjamin Dauvergne 8f0db6e923 hashers: always convert OpenLDAP hash algo to uppercase 2014-07-16 01:52:00 +02:00
Benjamin Dauvergne ce67ec41be commands: add new command load-ldif 2014-07-16 01:52:00 +02:00
Benjamin Dauvergne 34778e3685 saml/admin: fix missing blank value for SAMLAttribute.attribute_name 2014-07-16 01:46:00 +02:00
Frédéric Péters e025d56da1 l10n: change translation of "Account activation failed" (#5144) 2014-07-15 22:52:07 +02:00
Benjamin Dauvergne 93ab270cdf views: do not use django.contrib.sites in the email change view
fixes #5148
2014-07-15 22:48:30 +02:00
Benjamin Dauvergne 0b1e9b9dd6 bump release to 2.1.4 2014-07-15 16:20:27 +02:00
Benjamin Dauvergne d30a8f5d7e hashers: add hashers compatible with OpenLDAP 2014-07-15 16:16:21 +02:00
Benjamin Dauvergne 9ee8a2f1cc bump release to 2.1.3 2014-07-15 13:06:31 +02:00
Benjamin Dauvergne a2c2ade6af registration_backend/views: fix registration of new users
Extra attributs must not be saved in the user model.
2014-07-11 10:38:37 +02:00
Benjamin Dauvergne aedcb83bce management: add missing __init__.py files 2014-07-11 10:12:23 +02:00
Jérôme Schneider 720e2d41fe middleware: fixes OpenedSessionCookieMiddleware middleware 2014-07-10 16:00:04 +02:00
Benjamin Dauvergne df8075399b saml: do not configure choice for attribute names at the model level as it breaks model validation before running migrations 2014-07-09 13:50:09 +02:00
Benjamin Dauvergne ed76842bd5 management: add new command clean-unused-accounts
This command takes one required argument the number of days before
deleting an account. Accounts not logged since this number of days are
sent an email using templates,
authentic2/unused_account_delete_subject.txt and
authentic2/unused_account_delete_body.txt and are deleted using the
DeletedUser model, to allow for mass deletion and actions on deletion.
The template receives two variable: user and the days threshold.

The --alert-thresholds parameter allow to set threshold in days after
which accounts will receive an alert email warning people of the future
deletion of their account. Alert thresholds are given as a comma
separated list of days count, each days count must be inferior to the
delete threshold. The mail templates are
authentic2/unused_account_alert_subject.txt and
authentic2/unused_account_alert_body.txt. The template receives three
variable: user, the current alert threshold and the remaining days
before reaching the delete threshold.

You can limit cleaning to only some kind of accounts using the --filter
option, for example --filter groups__name="Online registration" will
limit the cleaning to accounts in the "Online registration" group.

The --fake option will only print actions done and will not send emails
or delete accounts.

The --period option is the number of days between two runs of the
clean-unused-accounts command, it defaults to one day.
2014-07-08 14:52:37 +02:00
Benjamin Dauvergne 02f3a2bae8 forms: allow ordering of fields on profile page 2014-07-08 10:15:33 +02:00
Benjamin Dauvergne 56592e6ac3 middleware: do not reset root logger to level 0 2014-07-07 18:26:49 +02:00
Benjamin Dauvergne 69514f9e3c run.sh: do not make DEBUG=1 a default 2014-07-07 17:19:21 +02:00
Benjamin Dauvergne ad4d83e822 settings: do not disable existing loggers, it's clear now that it is wrong 2014-07-07 16:56:21 +02:00
Benjamin Dauvergne 6c20a1a064 ldap_backend: replace dn lookup by an external_id lookup
The external_id template can be specified using external_id_tuples. Each
tuple list the attributes to concatenante to build the external id.
Attributes are urlencode then joined using a space character. If you add
the ':unquote' suffix to an attribute name it will not be urlencoded,
but you must be sure it's always an ASCII string without any space.

The new setting clean_external_id_on_update indicate to clean all other
existing external id for an user after linking the user to an external
id.

All use of UserExternalId is supported by the default configuration of:

	external_id_tuples=(('dn:unquote',),),

to migrate to a new way of building the external id just define:

	external_id_tuple=(('my', 'new', 'tuple), ('dn:unquote',)),

The first tuple is used to canonicalize the external id of a found or
newly created user. The other tuples are only used to lookup existing
users, so that you can safely migrate from an old way of building the
external_id to a new one.

On AD the following configuration gives a permanent external id:

 external_id_tuple=(('objectGUID',),)

On OpenLDAP:

 external_id_tuple=(('entryUUID',),)
2014-07-07 16:07:40 +02:00
Benjamin Dauvergne 2383d81f73 ldap_backend: fail cleanly when attribute retrieval fails and log an error 2014-07-07 16:07:39 +02:00