Commit Graph

275 Commits

Author SHA1 Message Date
Benjamin Dauvergne 6429b3940c update french translation (#21908) 2018-09-21 09:21:39 +02:00
Benjamin Dauvergne 2e5ac496b8 keep authentication context (fixes #21908)
- simplify and reorganize login templates,
- URL are not built inside templates anymore,
- we have now 3 different templates:
  - login.html for the login page
  - registration.html for the registration page
  - linking.html for the account page
- using feature from #25623, authentication_method is kept by the
  registration view.
- the service slug is correctly threaded between every views.
- explanations about FranceConnect are now done in a common template
  "explanation.html".
- restore popup mode, use it through setting A2_FC_POPUP=True, it works
  for:
  - login and login with registration (workflow for login with
    registration is a bit complicated),
  - registration,
  - and linking (linking your existing to FC through the "My account"
   page)
  unlinking is not handled with a popup.
2018-09-18 17:54:36 +02:00
Frédéric Péters c21a16108a don't alter can_reset_password flag for users without an FC account (#25655) 2018-08-21 11:15:40 +02:00
Benjamin Dauvergne 9b8e493ded remove use of context_instance (fixes #25532)
context_instance is not passed anymore by authentic2, and giving
context_instance=None to render() prevent the request object to be feed
in the context of the template, breaking some templates.
2018-08-03 10:13:56 +02:00
Benjamin Dauvergne 681dcf3862 implement AppConfig.a2_hook_user_can_reset_password (fixes #25535)
It returns True if an user is linked to an FC account, it allows any
FC user to login to its account as long as it still has control of the
FC email even if he has lost its FC credentials.
2018-07-30 17:22:36 +02:00
Benjamin Dauvergne 5f77fbe75e do not set a password on FranceConnect users (#25535)
As user don't know this password they can never change it...
2018-07-30 17:22:36 +02:00
Emmanuel Cazenave d5df658f4b don't load authentic2 template tags (#25393) 2018-07-30 13:45:49 +02:00
Frédéric Péters daf3f20951 templates: merge duplicated class attributes (#25353) 2018-07-19 08:33:37 +02:00
Frédéric Péters 7bffc5011c misc: don't use addtoblock to insert fc.css (#25356) 2018-07-19 08:33:33 +02:00
Benjamin Dauvergne 0caece2bb6 tests: add tests on new password related functions (#24835)
- verify new users have a password set
- verify old users keep their password on linking and are not
  asked for a new password if they used their password for logging in.
2018-07-14 08:31:34 +02:00
Benjamin Dauvergne 631a86deec app_settings: set password to random value by default (#24835) 2018-07-14 08:31:34 +02:00
Benjamin Dauvergne a57a98cb5e views: ask for new passord on unlink only if logged using FC (#24835) 2018-07-14 08:31:34 +02:00
Benjamin Dauvergne f4fce3490f utils: fix typo in warning log (#24835) 2018-07-14 08:31:34 +02:00
Benjamin Dauvergne 186f3518d0 utils: add special case for mapping the User.password (fixes #24835)
The goal is to set a random password for new accounts,
so that they can recover it. In this case we use
the value {"compute": "random"}.
2018-07-14 08:31:34 +02:00
Josue Kouka 215c1f5abd use REQUESTS_PROXIES instead of A2_FC_REQUESTS_PROXIES (#24929) 2018-07-02 14:48:16 +02:00
Benjamin Dauvergne 38cc81860e tox.ini: remove limitation on psycopg2 versions (to work with pg 10.4) 2018-06-29 16:12:15 +02:00
Josue Kouka deebd83a60 add fc requests proxies support (#24713) 2018-06-29 15:05:20 +02:00
Benjamin Dauvergne 0a8628ae54 views: prevent None success URL in unlink view (fixes #24708)
Logout URL to FC can be None if the current session was not opened
through an FC authentication.
2018-06-22 15:39:50 +02:00
Benjamin Dauvergne 25d6187305 debian: required python-requests>2.11 (fixes #23518)
Previous versions do not accept a Retry() object passed to the
max_retries parameter of HTTPAdapter. It fixes a bug on debian
introduced by c701e610.
2018-06-13 10:09:16 +02:00
Benjamin Dauvergne 8df4f28123 utils: fix access to verified property of mappings (fixes #23271) 2018-04-26 15:43:20 +02:00
Elias Showk 2b2f8ca1b0 remove url patterns to support django 1.11 (#23270) 2018-04-18 15:43:33 +02:00
Frédéric Péters d8f8257987 do not allow unauthenticated access to unlink page (fixes #22405) 2018-03-28 21:49:44 +02:00
Benjamin Dauvergne afa48159bb api: add franceconnect information to user's API when ?full is used (fixes #21962)
The following field is added to user's attributes if FC plugin is
enabled and the "full" parameter is given to the user's API:

   "franceconnect": {
      "linked": true,
      "link_url": "https://idp/accounts/fc/callback/",
      "unlink_url": "https://idp/accounts/fc/unlink/"
   }
2018-02-20 11:10:06 +01:00
Benjamin Dauvergne 4bb9f76c99 locale: update french translations for release 0.10 (fixes #21874)
email was replaced by « adresse de courriel » everywhere.
2018-02-15 14:38:55 +01:00
Benjamin Dauvergne 0f877b75a9 views: show warning to users with a mail linked to another FC account (fixes #21292)
The warning will help them connect their FC account to normally
registered account.
2018-02-15 13:03:40 +01:00
Benjamin Dauvergne c701e61043 retry HTTP requests 3 times (fixes #21783)
Retry is applied to access token request and user info requests (through
OAuth2Session). There is a small exponential backoff of 0.5 and 1s.

Also decrease log level of message for failure of retrieval of the
access token or the user info to the level WARNING, that's never been a
problem for the user, as he was correctly redirected to its origin
(usually and IdP endpoint).
2018-02-11 22:18:21 +01:00
Benjamin Dauvergne 738066a5d9 tox.ini: remove python-catchlog which is obsolete 2018-02-11 22:09:22 +01:00
Paul Marillonnet 9340dcff1a documentation update (#20860) 2018-02-02 12:24:44 +01:00
Benjamin Dauvergne 298c7faca7 add support for service slugs on login 2018-02-01 16:46:55 +01:00
Benjamin Dauvergne a0bc944e84 fix login with a non-unique email where an account linked to another FC account already exists 2018-02-01 16:46:55 +01:00
Benjamin Dauvergne 3abded80f6 augment timeout on POST to FC to 10 seconds (fixes #21596) 2018-02-01 16:46:55 +01:00
Benjamin Dauvergne 28402bf314 add request to fc-link hook (fixes #20288) 2017-11-27 09:52:59 +01:00
Benjamin Dauvergne eddf2da475 call a2 hooks for linking and unlinking events (fixes #20228) 2017-11-22 21:16:36 +01:00
Benjamin Dauvergne 2e5bd982e6 update french translations (#20078) 2017-11-16 10:45:40 +01:00
Benjamin Dauvergne 89fabbc47f views: change messages levels (#20078) 2017-11-16 10:45:40 +01:00
Benjamin Dauvergne a671f6c97c views: do not permit linking if the user has already a link to FC (#20078) 2017-11-16 10:45:40 +01:00
Benjamin Dauvergne e9b7ed137a views: forbid automatic linking based on email if multiples users are found or if target user has already a link (fixes #20078) 2017-11-16 10:45:40 +01:00
Benjamin Dauvergne 2b99011027 backends: make sub parameter non optional in authenticate() 2017-11-08 17:38:31 +01:00
Benjamin Dauvergne 313824142a always unlink from all FC accounts (fixes #19947) 2017-11-08 11:11:12 +01:00
Serghei Mihai 612877092c update FC logos (#19585) 2017-10-24 17:24:38 +02:00
Serghei Mihai 29876048c0 update login and register buttons images (#19162) 2017-10-16 09:31:25 +02:00
Serghei 2c1ddcdfc3 replace logo image for account linking (#17391) 2017-10-11 22:00:14 +02:00
Benjamin Dauvergne b9987366ca views: force fc-register to always redirect post registration to fc-login-or-link (fixes #19270)
Without it linking to FC does not happen
2017-10-09 15:15:04 +02:00
Benjamin Dauvergne 73c774d1b2 utils: allow a mapping to depend from another using tags (fixes #19251) 2017-10-06 14:26:51 +02:00
Benjamin Dauvergne 4c9dab9784 utils: add an if-empty modifier to only set a value from FC if the existing value is empty (fixes #19250) 2017-10-06 14:26:03 +02:00
Benjamin Dauvergne 9789aca728 utils: normalize mapping in apply_user_info_mappings (#19250) 2017-10-06 14:25:58 +02:00
Benjamin Dauvergne 5dcdf8ead8 views: block DisplayMessageBeforeRedirectMiddleware on redirect to FC (fixes #19247) 2017-10-06 13:15:15 +02:00
Benjamin Dauvergne 39ea7fb75c utils: add a notempty transformation for attribute mappings (fixes #19233) 2017-10-05 15:33:08 +02:00
Benjamin Dauvergne 0597b3e27e django 1.9 compatibility 2017-09-19 16:45:30 +02:00
Benjamin Dauvergne 48f4210106 backends: always create new accounts in the default OU (fixes #18764) 2017-09-19 16:45:30 +02:00