sebastien
|
4c146cc970
|
changes flash message when the password is compromised.
|
2024-11-13 16:21:52 +01:00 |
|
sebastien
|
f67477f5e1
|
adds tests for ADMIN_EMAIL config variable
|
2024-11-12 16:50:51 +01:00 |
|
sebastien
|
ea24f96e85
|
adds new config variable in case there is no default admin group in ACL/ADMIN/FILTER
|
2024-11-12 16:50:00 +01:00 |
|
sebastien
|
c13b590cd9
|
final tests for password compromise investigation failure
|
2024-11-12 09:18:55 +01:00 |
|
sebastien
|
834eaaa2c4
|
refacto test
|
2024-11-08 15:16:38 +01:00 |
|
sebastien
|
d951c2e18d
|
new tests on failure of api request with htmx and without SMTP
|
2024-11-08 15:15:12 +01:00 |
|
sebastien
|
f173a66793
|
adds new tests for compromised_password_check_failure situation.
|
2024-11-07 15:51:21 +01:00 |
|
sebastien
|
289176a086
|
replaces 'pwned' by 'compromised'
|
2024-11-06 15:57:51 +01:00 |
|
sebastien
|
b47c949239
|
adds tests for check if password is compromised or not
|
2024-11-05 16:59:03 +01:00 |
|
sebastien
|
ff871f1340
|
updates tests with compromised password check with api HIBP
|
2024-11-05 15:44:25 +01:00 |
|
sebastien yaal
|
a4bd03f71c
|
feat: password strength indicator
|
2024-10-28 21:17:47 +00:00 |
|
Éloi Rivard
|
3a3cd304b8
|
tests: refactor logging tests
add restaure 100% coverage
|
2024-10-27 21:46:47 +01:00 |
|
Félix Rohrlich
|
603eab0b3c
|
refactor : added proper security logging level and refactored change email logging
|
2024-10-21 11:17:55 +02:00 |
|
Félix Rohrlich
|
038e6c094e
|
feat: Added security logs for email update, forgotten password mail, token emission/refresh/revokation, new consent, consent revokation #177
|
2024-10-14 14:04:39 +02:00 |
|
Félix Rohrlich
|
545fb2d342
|
feat: change password events are logged in #177
|
2024-10-09 15:55:01 +02:00 |
|
Éloi Rivard
|
b14cc2b5ad
|
refactor: separate the loading of User permissions
|
2024-09-18 10:00:58 +02:00 |
|
Éloi Rivard
|
b55b42787f
|
tests: add assertions on account permissions tests
|
2024-09-17 20:23:30 +02:00 |
|
Éloi Rivard
|
001d635295
|
tests: missing client_id on OIDC authorization page
|
2024-09-13 15:08:23 +02:00 |
|
Éloi Rivard
|
cfabcc485c
|
chore: automitaclly fix typos
|
2024-09-11 09:33:42 +02:00 |
|
Éloi Rivard
|
e5328837fd
|
chore: pre-commit upgrade
|
2024-07-25 16:47:45 +02:00 |
|
Éloi Rivard
|
127d56f713
|
chore: dependencies update
|
2024-07-25 16:44:43 +02:00 |
|
Éloi Rivard
|
b46102bb75
|
fix: crash for passwordless users at login when no SMTP server was configured
|
2024-05-14 23:15:41 +02:00 |
|
Éloi Rivard
|
3fb5d0149d
|
fix: SMTP feature can be disabled again
|
2024-05-14 23:04:32 +02:00 |
|
Éloi Rivard
|
25f2b6dedd
|
feat: model management commands
|
2024-05-13 14:16:14 +02:00 |
|
Éloi Rivard
|
5beee67a61
|
fix: User group deletion without reading User.groups with LDAP backend
|
2024-05-12 22:28:32 +02:00 |
|
Éloi Rivard
|
b16630063b
|
fix: check command when SMTP configuration is not defined
|
2024-05-12 10:42:41 +02:00 |
|
Éloi Rivard
|
0e6e4d0cb9
|
tests: fix CI
|
2024-05-07 17:36:32 +02:00 |
|
Éloi Rivard
|
4e99eaecea
|
tests: remove SQLAlchemy warnings on double deletions
|
2024-05-07 16:19:50 +02:00 |
|
Éloi Rivard
|
e44b2bf469
|
tests: fix CI
|
2024-05-03 22:35:57 +02:00 |
|
Éloi Rivard
|
16c3021a8f
|
refactor: Rename BaseBackend in Backend
|
2024-05-03 22:25:20 +02:00 |
|
Éloi Rivard
|
473a262ea2
|
refactor: move BackendModel.reload to Backend.reload
|
2024-05-03 22:25:20 +02:00 |
|
Éloi Rivard
|
2ccdaeadf6
|
refactor: move BackendModel.delete to Backend.delete
|
2024-05-03 22:22:08 +02:00 |
|
Éloi Rivard
|
09588e0f48
|
refactor: move BackendModel.save to Backend.save
|
2024-05-03 22:22:06 +02:00 |
|
Éloi Rivard
|
44573713ed
|
refactor: move BackendModel.get to Backend.get
|
2024-05-03 21:54:03 +02:00 |
|
Éloi Rivard
|
fa6488bcd1
|
refactor: move BackendModel.fuzzy to Backend.fuzzy
|
2024-05-03 21:42:55 +02:00 |
|
Éloi Rivard
|
8425b2a3b8
|
refactor: move BackendModel.query to Backend.query
|
2024-05-03 21:42:54 +02:00 |
|
Éloi Rivard
|
4ce9f77a14
|
tests: use time-travel instead of freezegun
|
2024-05-02 10:26:32 +02:00 |
|
Éloi Rivard
|
69019763d4
|
feat: group member removal can be achieved from the group edition page
|
2024-04-28 19:47:57 +02:00 |
|
Éloi Rivard
|
69b565e1ad
|
refactor: LDAP backend tolerates double deletions
|
2024-04-28 16:18:36 +02:00 |
|
Éloi Rivard
|
c10a33da6d
|
tests: fix unit tests with pytest-xdist
|
2024-04-28 09:22:59 +02:00 |
|
Éloi Rivard
|
288ad161d3
|
tests: test mail attachments mimetypes
|
2024-04-27 14:36:34 +02:00 |
|
Éloi Rivard
|
ebcaaeaded
|
tests: fix GHA
For some reasons, webp mimetypes failed to be guessed on GHA.
|
2024-04-27 14:06:20 +02:00 |
|
Éloi Rivard
|
dc89a20b11
|
chore: configure ruff
|
2024-04-23 22:12:04 +02:00 |
|
Éloi Rivard
|
afa0a6ff1e
|
feat: env_prefix create_app variable can select the environment var prefix
|
2024-04-22 18:10:49 +02:00 |
|
Éloi Rivard
|
7fc887a492
|
feat: ENV_FILE configuration variable can customize the .env file
|
2024-04-22 16:37:31 +02:00 |
|
Éloi Rivard
|
69617c1005
|
tests: use only use Model.identifier when this is pertinent
|
2024-04-17 15:50:39 +02:00 |
|
Éloi Rivard
|
acf8acf29f
|
fix: locked users cannot use OIDC authorization codes
|
2024-04-17 13:05:14 +02:00 |
|
Éloi Rivard
|
6180e5fce2
|
tests: rename tests in test_authorization_code_flow.py
|
2024-04-17 12:58:58 +02:00 |
|
Éloi Rivard
|
354a406966
|
tests: move token expiration tests in their own file
|
2024-04-17 12:56:35 +02:00 |
|
Éloi Rivard
|
b6659f47e7
|
tests: refactor test_refresh_token
|
2024-04-17 12:42:26 +02:00 |
|
Éloi Rivard
|
ba394af338
|
tests: refactor test_cannot_refresh_token_for_locked_users
|
2024-04-17 12:23:54 +02:00 |
|
Éloi Rivard
|
fc8c0da912
|
fix: locked users cannot use refresh tokens
|
2024-04-17 12:07:11 +02:00 |
|
Éloi Rivard
|
31423cde1a
|
refactor: split oidc.authorize endpoint in several smaller functions
|
2024-04-17 11:56:44 +02:00 |
|
Éloi Rivard
|
ce890ca0ad
|
tests: use pytest-lazy-fixtureS instead of pytest-lazy-fixture
|
2024-04-16 18:33:58 +02:00 |
|
Éloi Rivard
|
1080952a75
|
tests: speed up unit tests by caching the jinja bytecode between tests
|
2024-04-16 12:46:53 +02:00 |
|
Éloi Rivard
|
f9989a960b
|
feat: locked users cannot be impersonated
|
2024-04-12 12:12:08 +02:00 |
|
Éloi Rivard
|
565d57a887
|
tests: split test_account.py
|
2024-04-12 11:23:51 +02:00 |
|
Éloi Rivard
|
6e26656cc4
|
tests: move test_model_references_set_unsaved_object to the ldap tests directory
|
2024-04-12 10:49:56 +02:00 |
|
Éloi Rivard
|
4037c296cf
|
fix: JAVASCRIPT and HTMX configuration settings were ignored
|
2024-04-09 12:07:00 +02:00 |
|
Éloi Rivard
|
920395c27f
|
feat: sign in/out events are logged in #177
|
2024-04-09 10:04:26 +02:00 |
|
Éloi Rivard
|
053156ec18
|
feat: additional messages on password endpoint errors
when attempt_login is not found on the session, add a warning to be
displayed on the login page after redirection
|
2024-04-09 09:20:38 +02:00 |
|
Éloi Rivard
|
5aaccca4cf
|
fix: display an error message when trying to remove the last user from a group
|
2024-04-08 14:44:15 +02:00 |
|
Éloi Rivard
|
fe2665ae32
|
fix: LDAP user group removal
|
2024-04-08 14:15:28 +02:00 |
|
Éloi Rivard
|
fbbcd2fe78
|
fix: saving an object with the LDAP backend keeps the objectClass un-managed by Canaille
|
2024-04-08 10:29:47 +02:00 |
|
Éloi Rivard
|
88832b5b3b
|
refactor: move User.check_password and User.set_password methods to Backend
|
2024-04-07 20:17:15 +02:00 |
|
Éloi Rivard
|
5a6ce24074
|
refactor: move User.get_from_login method to Backend
|
2024-04-07 20:17:15 +02:00 |
|
Éloi Rivard
|
e9c4f4c1c9
|
refactor: differenciate between login and username in forms
|
2024-04-07 19:50:26 +02:00 |
|
Éloi Rivard
|
2cab4bfa66
|
refactor: use User.get instead of User.get_from_login when this is pertinent
|
2024-04-07 18:46:08 +02:00 |
|
Éloi Rivard
|
e339d1169d
|
refactor: User.has_password factorization
|
2024-04-07 18:33:43 +02:00 |
|
Éloi Rivard
|
1fbb074cc5
|
refactor: user permissions lazy loading
|
2024-04-07 15:21:32 +02:00 |
|
Éloi Rivard
|
30bd71c5b5
|
tests: fix coverage
|
2024-04-07 09:33:56 +02:00 |
|
Éloi Rivard
|
f113188368
|
refactor: factorize match_filter in the main User class
|
2024-04-07 01:25:44 +02:00 |
|
Éloi Rivard
|
75837fa207
|
refactor: model attributes are walked from the top to the bottom
|
2024-04-06 22:46:11 +02:00 |
|
Éloi Rivard
|
ec7a721336
|
refactor: ldap objects id attribute is based on entryUUID instead of dn
|
2024-04-05 15:35:49 +02:00 |
|
Éloi Rivard
|
7b054bb571
|
refactor: ldap backend use a server control to re-read objects after update
|
2024-04-05 14:34:48 +02:00 |
|
Éloi Rivard
|
18e3f8cde5
|
refactor: split the base model class in two
|
2024-04-01 18:55:05 +02:00 |
|
Éloi Rivard
|
c1b901261f
|
tests: uncomment some assertions
|
2024-04-01 18:38:12 +02:00 |
|
Éloi Rivard
|
efe3a3c4c4
|
refactor: assume ACL have default values
|
2024-03-30 17:21:40 +01:00 |
|
Éloi Rivard
|
dd7768e0d2
|
tests: no OIDC test outside the OIDC zone
|
2024-03-29 17:34:08 +01:00 |
|
Éloi Rivard
|
ea220e8a93
|
fix: pytest skip decorator
|
2024-03-29 17:17:59 +01:00 |
|
Éloi Rivard
|
bfae3fbe18
|
doc: pydantic-settings nested secret directories are not ready yet
https://github.com/pydantic/pydantic-settings/issues/154
|
2024-03-29 13:57:03 +01:00 |
|
Éloi Rivard
|
8625318341
|
feat: use pydantic to validate the configuration
|
2024-03-28 17:44:26 +01:00 |
|
Éloi Rivard
|
ffa12b0f71
|
feat: created and last_modified model attributes
|
2024-03-27 13:57:38 +01:00 |
|
Éloi Rivard
|
dc81832159
|
feat: usedefault python logging configuration format
|
2024-03-15 20:12:07 +01:00 |
|
Éloi Rivard
|
4edffcaa9f
|
chore: use isort instead of reoder-python-imports
|
2024-03-15 19:58:37 +01:00 |
|
Éloi Rivard
|
bd57d69765
|
chore: pre-commit update
|
2024-03-07 18:52:23 +01:00 |
|
Éloi Rivard
|
395b6ab4f3
|
chore: add docformatter pre-commit
|
2023-12-28 18:31:57 +01:00 |
|
Éloi Rivard
|
e8b620588e
|
refactor: LDAP backend initialization
|
2023-12-27 10:57:22 +01:00 |
|
Éloi Rivard
|
a237fa0198
|
chore: pre-commit update
|
2023-12-26 01:13:11 +01:00 |
|
Éloi Rivard
|
a4a381d088
|
refactor: gather endpoints in a 'endpoints' directory
|
2023-12-26 00:30:19 +01:00 |
|
Éloi Rivard
|
38038d8db9
|
refactor: use 'url_for' in templates instead of static urls
|
2023-12-25 20:15:21 +01:00 |
|
Éloi Rivard
|
5c11ebf0d3
|
feat: ldap connection is lazilly opened
|
2023-12-25 14:26:08 +01:00 |
|
Éloi Rivard
|
d0dbaa588c
|
refactor: no more explicit conn argument in the LDAP backend
|
2023-12-25 14:03:47 +01:00 |
|
Éloi Rivard
|
95882c737b
|
fix: LDAP backend connection error display
|
2023-12-25 13:56:57 +01:00 |
|
Éloi Rivard
|
772a364128
|
fix: group field error prevented the registration form validation
|
2023-12-24 12:05:29 +01:00 |
|
Éloi Rivard
|
06b60e1747
|
fix: post_logout_redirect_uris was ignored during OIDC dynamic registration
|
2023-12-23 21:32:31 +01:00 |
|
Éloi Rivard
|
c847ef9284
|
feat: OIDC prompt=create implementation
|
2023-12-23 19:37:48 +01:00 |
|
Éloi Rivard
|
577bca360e
|
tests: renamed other_client fixture in trusted_client
|
2023-12-23 19:37:27 +01:00 |
|
Éloi Rivard
|
521ed75f18
|
fix: correctly set up Client audience during OIDC dynamic registration
|
2023-12-23 19:37:14 +01:00 |
|
Éloi Rivard
|
0d4174de43
|
tests: fix OIDC well-known tests
|
2023-12-23 17:24:03 +01:00 |
|