Commit graph

57 commits

Author SHA1 Message Date
Éloi Rivard
b29d125f09 Fixed client edition page 2023-03-09 23:09:44 +01:00
Éloi Rivard
fbf449edd6 LDAPObject fuzzy search 2023-03-09 19:31:59 +01:00
Éloi Rivard
091270df53 LDAPObject pagination performance improvements
Creates a LDAPObjectQuery class that is returned by LDAPObject.filter
This avoids to create objects for each ldap result, but only for the
asked slice. It also store the whole results length so `len` calls are
a bit faster.
2023-03-09 19:31:59 +01:00
Éloi Rivard
990c624c32 Save one LDAP connection when calling save() 2023-03-09 13:00:17 +01:00
Éloi Rivard
d0f6c341f3 LDAPObject refactoring 2023-03-09 01:14:07 +01:00
Éloi Rivard
53581404ab LDAPObject dn attributes are automatically initialized 2023-03-08 23:53:53 +01:00
Éloi Rivard
d201d6f617 Lazy conversion of LDAP to python format for LDAPObject attributes 2023-03-08 18:54:27 +01:00
Éloi Rivard
0eaa5e1319 LDAPObject.query can take non string values 2023-03-08 18:50:34 +01:00
Éloi Rivard
7e42467bfc Renamed LDAPObject.rdn in LDAPObject.rdn_attribute 2023-03-08 18:50:33 +01:00
Éloi Rivard
5d9a41f18b Delayed LDAPObject may and must initialization 2023-03-08 00:53:27 +01:00
Éloi Rivard
edd7873cea Fixed unit tests coverage 2023-03-07 20:10:21 +01:00
Éloi Rivard
84c10f8205 update_ldap_attributes is a classmethod 2023-03-07 18:05:00 +01:00
Éloi Rivard
c5b11d2fb3 Merge LDAPObject.all and LDAPObject.filter in LDAPObject.query 2023-03-07 17:58:27 +01:00
Éloi Rivard
cc65d78719 Renames LDAPObject.ldap in LDAPObject.ldap_connection 2023-03-07 17:55:32 +01:00
Éloi Rivard
333cbec201 LDAPObject __eq__ method checks if attributes exist 2023-03-07 17:42:46 +01:00
Éloi Rivard
0cdbcbc2fa Removed debug prints 2023-01-30 20:01:22 +01:00
Éloi Rivard
b059e6e719 Client deletion also delete related objects 2023-01-30 19:58:25 +01:00
Éloi Rivard
02f03685de Added FAX_IMAGE to the LDAP syntax list 2023-01-24 22:33:59 +01:00
Éloi Rivard
e145a7acc8 Renamed LDAPObject 'id' attribute in 'rdn' 2023-01-24 18:32:44 +01:00
Éloi Rivard
019d99d89e LDAPObject refactoring 2023-01-24 18:27:20 +01:00
Éloi Rivard
6e2659ac54 LDAPObject refactorings
filter sets the LDAP attributes in .attrs
__init__ sets the LDAP attributes in .changes
2023-01-24 18:00:25 +01:00
Éloi Rivard
a0f3e951dc LDAPObject delayed self.may and self.must initializations 2023-01-24 17:56:25 +01:00
Éloi Rivard
6ebc74ccaa LDAPObject assumes every LDAP attribute is a list 2023-01-24 17:54:11 +01:00
Éloi Rivard
4f23dd07df Fixed a misnamed variable in LDAPObject 2023-01-22 22:58:18 +01:00
Éloi Rivard
b7eb995d4f Reorderded LDAPObject methods 2023-01-22 20:29:33 +01:00
Éloi Rivard
bb264fefa1 Avoid calls to ldap_object_attributes() outside the ldap_backend
module.
2023-01-22 20:08:25 +01:00
Éloi Rivard
7cb2da3ca3 refactoring: start to split the canaille installation between submodules 2022-12-29 02:11:56 +01:00
Éloi Rivard
32f6595c02 objectClass is not mandatory for User and Group creation 2022-12-29 00:29:26 +01:00
Éloi Rivard
1efe6c8879 coverage: ignore some teardown branching 2022-12-27 22:16:21 +01:00
Éloi Rivard
234eeacb6a ldapobject: minor refactoring 2022-12-27 21:10:53 +01:00
Éloi Rivard
45246c25aa removed useless guards for LDAP timeout 2022-12-27 20:25:59 +01:00
Éloi Rivard
482f949c09 Fixed LDAP operational attributes handling 2022-12-15 12:41:31 +01:00
Éloi Rivard
7c6fd25524 Add nonce to the claims_supported server metadata list 2022-12-15 11:59:00 +01:00
Éloi Rivard
a39e76ee08 fix User and Group base dn 2022-12-15 11:53:51 +01:00
Éloi Rivard
eac4437351 unit tests: improved ldap utils coverage 2022-12-15 00:22:37 +01:00
Éloi Rivard
2773f1c34c unit tests: ldap filter tests 2022-12-15 00:15:10 +01:00
Éloi Rivard
a621fc1163 unit tests: ldap utils 2022-12-15 00:03:01 +01:00
Éloi Rivard
42a0e3e3d8 extracted conversion utilities from LDAPObject class 2022-12-14 21:18:51 +01:00
Éloi Rivard
f9df8300ce unit tests: ldap objects repr 2022-12-14 21:06:59 +01:00
Éloi Rivard
fda205cbf5 ldap_backend: improved coverage 2022-12-13 19:04:33 +01:00
Éloi Rivard
164d228980 Ignore untestable blocks 2022-12-10 01:11:33 +01:00
Éloi Rivard
62b62b684f Fixed client preconsent disabling 2022-11-16 17:36:16 +01:00
Éloi Rivard
239cf6bcc7 Refactored LDAPObject
- delete attributes when value is [None]
- ability to set attributes other than those contained in MAY and MUST
  because some operational attributes does not appear in those
- Make python datetime.min match the minimum LDAP date
- Use enums to store LDAP syntaxes
2022-11-15 12:33:45 +01:00
Éloi Rivard
660b143b45 LDAPObject: fixed a bug in python <-> ldap attributes conversion.
This should fix the CI.
2022-11-14 18:15:34 +01:00
Éloi Rivard
791e2c8362 LDAP backends loads the operational attributes when it reads an object in the directory 2022-11-01 21:05:36 +01:00
Éloi Rivard
659efaf7ef Variable renaming 2022-10-21 17:03:38 +02:00
Éloi Rivard
95ec09fe54 Implemented RP-initiated logout 2022-06-02 17:56:10 +02:00
Éloi Rivard
11a750d238 Refactored tests so ldap connection is not a mandatory argument anymore for most LDAPObject methods 2022-05-18 16:55:37 +02:00
Éloi Rivard
9a22352958 setup_ldap_models takes a config parameter instead of an app parameter 2022-05-18 13:44:54 +02:00
emillumine
ffd85e5ee0 remove commented code 2022-03-14 10:03:05 +01:00