Éloi Rivard
|
733625e2bc
|
feat: SQL migrations with flask-alembic
|
2025-01-10 12:32:18 +01:00 |
|
Éloi Rivard
|
2049d4e929
|
feat: CLI commands can dump hashed passwords
|
2025-01-09 09:36:42 +01:00 |
|
Éloi Rivard
|
fdf8f1e550
|
fix: SQL backend password scheme loading
Use Backend.instance instead of flask.current_app, so it allows the
backend to be loaded independently from the Flask context.
|
2025-01-08 16:53:11 +01:00 |
|
sebastien yaal
|
de541fc8ca
|
password-hashing-configuration
|
2025-01-08 09:25:06 +00:00 |
|
sebastien
|
0fb3d588b9
|
adds password expiry policy with a new method on User class
|
2024-12-19 11:20:26 +01:00 |
|
Félix Rohrlich
|
80ef1741a7
|
feat : Added intruder lockout login delay
|
2024-12-10 14:23:11 +01:00 |
|
Félix Rohrlich
|
6d48ce9043
|
feat: Added email OTP authentication
|
2024-12-10 11:27:18 +01:00 |
|
Félix Rohrlich
|
b01e8323d8
|
feat : Added HOTP authentication and CLI Multi-factor authentication reset
|
2024-12-10 11:27:18 +01:00 |
|
Félix Rohrlich
|
74e0c8d635
|
feat : Added time one-time password (TOTP) authentication
|
2024-12-10 11:27:18 +01:00 |
|
Éloi Rivard
|
e576a51554
|
doc: avoid ending sentences with ::
|
2024-12-08 11:36:38 +01:00 |
|
Éloi Rivard
|
5bc438d21d
|
feat: implement OIDC client_credentials flow
|
2024-12-06 15:09:25 +01:00 |
|
Éloi Rivard
|
0b51b01031
|
refactor: apply ruff migrations for python 3.10+
|
2024-10-28 09:13:00 +01:00 |
|
Éloi Rivard
|
4e99eaecea
|
tests: remove SQLAlchemy warnings on double deletions
|
2024-05-07 16:19:50 +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
|
ccde88b1bf
|
refactor: BackendModel.get() is now Backend.instance
|
2024-05-03 21:46:28 +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
|
256566df94
|
refactor: Model identifier_attributes are fixed.
|
2024-04-22 20:04:24 +02:00 |
|
Éloi Rivard
|
fecfcfa8f3
|
refactor: factorize Model.__html__
|
2024-04-07 20:23:43 +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
|
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
|
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
|
fe809161ff
|
refactor: factorized User.load_permissions
|
2024-04-06 19:22:47 +02:00 |
|
Éloi Rivard
|
47ef573917
|
refactor: fix coverage
|
2024-04-05 15:59:17 +02:00 |
|
Éloi Rivard
|
18e3f8cde5
|
refactor: split the base model class in two
|
2024-04-01 18:55:05 +02:00 |
|
Éloi Rivard
|
0363a0a76e
|
refactor: remove unused var
|
2024-04-01 15:02:26 +02:00 |
|
Éloi Rivard
|
fbd0d3029e
|
refactor: rename User read/write/permissions attributes
|
2024-04-01 14:59:56 +02:00 |
|
Éloi Rivard
|
0a2d3d4629
|
fix: permissions loading with the SQL backend
|
2024-03-31 00:07:16 +01:00 |
|
Éloi Rivard
|
58b967a43e
|
refactor: reliably detect the model attribute cardinality
|
2024-03-30 23:39:09 +01:00 |
|
Éloi Rivard
|
efe3a3c4c4
|
refactor: assume ACL have default values
|
2024-03-30 17:21:40 +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
|
4edffcaa9f
|
chore: use isort instead of reoder-python-imports
|
2024-03-15 19:58:37 +01:00 |
|
Éloi Rivard
|
e8b620588e
|
refactor: LDAP backend initialization
|
2023-12-27 10:57:22 +01:00 |
|
Éloi Rivard
|
3255eaa31c
|
fix: a crash when no ACL was defined
|
2023-12-15 10:50:53 +01:00 |
|
Éloi Rivard
|
a7e574f754
|
feat: use sqlalchemy-utils PasswordType to store and hash user passwords
|
2023-12-01 09:29:59 +01:00 |
|
Éloi Rivard
|
969f3e980c
|
fix: password comparision was too permissive on login
|
2023-11-28 18:10:47 +01:00 |
|
Éloi Rivard
|
27639081f0
|
feat: implement sqlalchemy backend
Co-authored-by: Loan Robert <loan@yaal.coop>
|
2023-11-24 13:57:46 +01:00 |
|