Commit graph

464 commits

Author SHA1 Message Date
Éloi Rivard
481da6a02d first login page has its own forms 2022-12-21 00:20:20 +01:00
Éloi Rivard
7fbe544b15 unit tests: check logo presence in mails 2022-12-20 19:45:04 +01:00
Éloi Rivard
e59ab27837 unit tests: app configuration paths 2022-12-16 22:33:09 +01:00
Éloi Rivard
6c41c2a196 unit tests: tested logging to a file 2022-12-16 22:14:46 +01:00
Éloi Rivard
41642f68c6 prevent lazy_gettext execution in unwanted contexts 2022-12-16 19:28:13 +01:00
Camille Daniel
7e71789fad fix post requests in oidc clients views
flash and lazygettext were causing an unexpected bug on post (not get) requests
2022-12-16 19:15:50 +01:00
Éloi Rivard
f086bcd7da Stop caching server metadata 2022-12-15 23:00:58 +01:00
Éloi Rivard
54f63b427d Merge branch 'group-deletion-button' into 'main'
Fixed group deletion button

See merge request yaal/canaille!80
2022-12-15 15:51:20 +00: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
e478034b81 unit tests: client admin deletion 2022-12-13 19:14:25 +01:00
Éloi Rivard
fda205cbf5 ldap_backend: improved coverage 2022-12-13 19:04:33 +01:00
Éloi Rivard
dab82e6466 Removed unnecessary try/except blocks 2022-12-13 18:53:29 +01:00
Éloi Rivard
0440a7ba6e Fixed group deletion button 2022-12-13 18:24:26 +01:00
Éloi Rivard
9a3363a17f unit tests: improved flaskutils coverage 2022-12-11 22:49:32 +01:00
Éloi Rivard
118af82409 Fixes an authlib jwk warning 2022-12-11 22:27:54 +01:00
Éloi Rivard
c02ea791be removed unused method in the oauth authorization class 2022-12-10 21:18:17 +01:00
Éloi Rivard
449231abbe unit tests: improved token introspection coverage 2022-12-10 21:10:18 +01:00
Éloi Rivard
812d04a571 unit tests: improved token revokation coverage 2022-12-10 21:02:51 +01:00
Éloi Rivard
6875d0c15e Session vars are always lists 2022-12-10 20:47:47 +01:00
Éloi Rivard
8932b390ba test consent removal with arleady revoked tokens 2022-12-10 11:24:53 +01:00
Éloi Rivard
fa3d51e32b removed unused method in the client model 2022-12-10 11:00:16 +01:00
Éloi Rivard
164d228980 Ignore untestable blocks 2022-12-10 01:11:33 +01:00
Éloi Rivard
1b53304940 Updated 'users' menu icon 2022-12-10 00:58:09 +01:00
Éloi Rivard
a3418de239 Implemented RFC7592 OAuth Client Registration Management 2022-12-10 00:22:25 +01:00
Éloi Rivard
edbd98e9d2 unit tests: better admin mail debugger testing
There was no test that covered the case where there is an issue when
sending the debug email.
2022-12-04 17:15:54 +01:00
Éloi Rivard
ecc969e3d5 index page unit tests 2022-12-04 12:57:59 +01:00
Éloi Rivard
4cb577839a client admin: fixed client URI display on client list 2022-12-04 12:01:10 +01:00
Éloi Rivard
a9240aa189 Updated translations 2022-12-04 11:56:51 +01:00
Éloi Rivard
9bf9c43677 Demo displays user preferred locale 2022-12-04 11:53:37 +01:00
Éloi Rivard
9e75ef3478 Users can choose their favourite display name 2022-12-02 18:48:21 +01:00
Éloi Rivard
f6f9509222 about page: link to pypi.org 2022-11-20 23:18:49 +01:00
Éloi Rivard
07ed17376f Removed timezone block
Since this is not supported at the moment.
2022-11-20 23:12:55 +01:00
Éloi Rivard
bb0daf34d7 LDAP 'preferredLanguage' attribute support 2022-11-20 22:52:47 +01:00
Éloi Rivard
2a018510d8 unit tests: ignore sentry blocks in coverage 2022-11-20 22:34:05 +01:00
Éloi Rivard
77ae9df2a9 Issuer 'ISS' configuration option is not mandatory anymore 2022-11-17 18:10:40 +01:00
Éloi Rivard
154ec9fcd2 FROM_ADDR configuration option is not mandatory anymore 2022-11-16 19:26:33 +01:00
Éloi Rivard
0ae12cedd6 client admin: use stackable buttons 2022-11-16 18:23:06 +01:00
Éloi Rivard
c7df0cca32 profile edition: redirect after form submission to avoid double submissions 2022-11-16 18:19:24 +01:00
Éloi Rivard
32a626ee4b group admin: redirect after form submission to avoid double submissions 2022-11-16 17:55:24 +01:00
Éloi Rivard
be4a51d72a client admin: redirect after form submission to avoid double submissions 2022-11-16 17:50:38 +01:00
Éloi Rivard
93e5fbc5d0 client admin: use toggle box for the 'preconsent' field 2022-11-16 17:42:14 +01:00
Éloi Rivard
62b62b684f Fixed client preconsent disabling 2022-11-16 17:36:16 +01:00
Éloi Rivard
e3028f375c Dynamically generate the server metadata.
OAUTH2 and OIDC server metadata are now dynamically generated.
2022-11-16 10:20:32 +01:00
Éloi Rivard
ba88f8e44a rfc7591: fixed software statement support 2022-11-15 19:04:42 +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
14ae18c48a profile modal refactoring 2022-11-15 12:27:09 +01:00
Laurent GAY
9ca52d9f33 correction about installation of ldif in LDAP 2022-11-15 12:13:49 +01:00
Laurent GAY
44055f9469 CSS with customize logo 2022-11-15 11:44:54 +01:00
Laurent GAY
b7bd7fe643 Client: client_secret not show -> bad attribut name 2022-11-14 18:22:37 +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
221f4615e3 Added a CSS so the profile password initialization box is always displayed. 2022-11-09 18:03:28 +01:00
Éloi Rivard
1946f283fc Added 'code_challenge_methods_supported' in well-known configuration 2022-11-06 17:13:12 +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
bbd4a3e92e Fixed a typo 2022-11-01 18:15:17 +01:00
Éloi Rivard
4163d2eb13 Stop using the deprecated FLASK_ENV environment variable 2022-11-01 12:56:07 +01:00
Éloi Rivard
fdb8714094 Fixed a bug happening during RP initiated logout on clients without post_logout_redirect_uri defined 2022-10-26 18:09:02 +02:00
Éloi Rivard
6facd248a9 Fixed a bug on the contacts field in the admin client form following the LDAP schema update of 0.0.12 2022-10-26 17:44:50 +02:00
Éloi Rivard
5d5b0a411c Removed an unused permission 2022-10-24 10:30:08 +02:00
Éloi Rivard
4f729caf2e Implemented dynamic client registration 2022-10-24 10:00:32 +02:00
Éloi Rivard
659efaf7ef Variable renaming 2022-10-21 17:03:38 +02:00
Éloi Rivard
6ee9929f6b Fixed style 2022-10-14 09:36:08 +02:00
Éloi Rivard
00ffffeef5 Bumped to FomanticUI 2.9.0 2022-10-10 09:55:44 +02:00
Éloi Rivard
77aff593d4 Refactoring: file renaming 2022-10-06 13:32:41 +02:00
Éloi Rivard
0584cad0f5 Fixed well_known URLs 2022-10-03 19:32:39 +02:00
Éloi Rivard
e45ad6e21c Implemented a basic WebFinger endpoint. 2022-10-03 18:42:08 +02:00
Éloi Rivard
28adc08795 Commands does not executed ldap setup and teardown in testing context 2022-10-03 13:25:13 +02:00
Éloi Rivard
c14cd90ad3 Fixed CI 2022-08-01 09:54:53 +02:00
Funelie
b5e8e6cf2a editing dropdown color 2022-08-01 09:51:23 +02:00
Funelie
07f7ffb6ff fixing tags color in tables 2022-08-01 09:07:27 +02:00
Funelie
8580ca8e6f message cards and contrast editing 2022-07-29 15:50:01 +02:00
Funelie
6390266203 Added built in CSS dark theme 2022-07-29 15:35:38 +02:00
Éloi Rivard
d0962a9a8d Removed a debug print 2022-07-27 17:56:16 +02:00
Éloi Rivard
db0fd2d8ba Fixed end-session when user are already disconnected 2022-07-07 16:28:28 +02:00
Éloi Rivard
21a2c306ac Client only return the asked scopes 2022-07-07 16:11:25 +02:00
Éloi Rivard
c8281969d8 Added support for a postalAddress field 2022-07-07 14:46:02 +02:00
Éloi Rivard
bd053c1d38 Updated pre-commit 2022-06-30 11:18:37 +02:00
Éloi Rivard
b0926f2216 Updated canaille homepage to canaille.yaal.coop 2022-06-21 14:30:46 +02:00
Éloi Rivard
95ec09fe54 Implemented RP-initiated logout 2022-06-02 17:56:10 +02:00
Éloi Rivard
386e46c944 Updated dependencies 2022-06-02 15:44:59 +02:00
Éloi Rivard
fddda33446 Removed deprecated babel extensions 2022-06-02 15:41:45 +02:00
Éloi Rivard
1f44153c4f fixed a html title tag in the authorize page 2022-05-20 14:13:21 +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
Stéphane Blondon
5a00c2840b remove messages.mo from repository 2022-05-06 12:32:39 +02:00
Éloi Rivard
a1c4f7a278 Bumped to authlib 1 2022-04-10 17:04:38 +02:00
Éloi Rivard
8217d423ad Added an option to disable self edition 2022-04-06 17:54:39 +02:00
Éloi Rivard
f496617f81 Fixed documentation about HIDE_INVALID_LOGINS 2022-04-06 17:34:30 +02:00
Éloi Rivard
b7b6040a3e Added an option to disable password recovery 2022-04-05 09:56:38 +02:00
Éloi Rivard
b1f21180df updated pre-commit 2022-04-04 17:52:35 +02:00
Éloi Rivard
d597baa415 for better readability, set the flask aborts in their own conditionnal block 2022-04-04 17:52:05 +02:00
emillumine
f95bffadd6 remove 'available_groups' Group classmethod (replaced by already existing 'all' LDAPObject method) 2022-03-14 10:14:02 +01:00
emillumine
ffd85e5ee0 remove commented code 2022-03-14 10:03:05 +01:00
emillumine
8d804616fd add a 'all' utility class method to LDAPObject to retrieve all class instances 2022-03-14 10:03:05 +01:00
emillumine
da1b911172 set User.object_class and Group.object_class based on config when setting ldap models
permit filtering with object_class by default in User.filter() and Group.filter()
avoid having user/group base root in default filter results
2022-03-14 10:03:05 +01:00
emillumine
653e79d7a8 fix dn in case of leading space or special char in id attribute
according to openldap doc, the default is to silently  eliminate  spaces  around  AVA  separators, RDN component separators and RDN separators
https://www.openldap.org/software/man.cgi?query=ldap_str2dn
2022-03-14 10:03:05 +01:00
emillumine
cd1d106248 set cn without leading space when user is created without given name 2022-03-14 10:03:05 +01:00
Éloi Rivard
07d1826905 Fixed some packaging issues 2022-03-08 19:22:52 +01:00
Éloi Rivard
dc835cc149 access token is a jwt 2022-03-04 19:58:10 +01:00
Camille
0db07fa36f fix: groups are saved even when invited user does not have read permission on groups 2022-03-04 18:13:57 +01:00
Camille
a3c4db7a53 fix: handle token not found in token view 2022-03-03 10:05:14 +01:00
sblondon
3016f2504b Fix: spellcheck configuration key 2022-03-01 18:55:02 +00:00
Stéphane Blondon
3f6be51dae fix: tox complains about new-line at end-of-file 2022-02-25 14:11:35 +01:00
Stéphane Blondon
803fadd0e9 fix: better consistency of admin dropdown menu
The dropdown was not always displayed due to lack of 'menuitem' parameter on some calls.
The 'active' and 'dropdown' classes from fomanticUI clash so the dropdown is not displayed when both are added to the `div` tag. As workaround, 'active' class is replaced by a custom 'dropdown-active' class.
2022-02-25 13:58:35 +01:00
Éloi Rivard
b4544ebc54 Updated French translation 2022-02-23 11:00:27 +01:00
Éloi Rivard
3411e27c85 Improved admin token list and code list templates 2022-02-19 17:53:05 +01:00
Éloi Rivard
5746224218 Removed the latest googleapis request laying around 2022-02-18 11:09:24 +01:00
Éloi Rivard
a74d68aee1 AuthorizationCode and Token have a new id parameter 2022-02-16 18:00:30 +01:00
Éloi Rivard
88c9547cc4 Use a custom method to generate access tokens 2022-02-13 18:18:25 +01:00
Éloi Rivard
6e01baf3b0 improved token admin page template, again 2022-02-03 10:04:14 +01:00
Éloi Rivard
7851e8e31f improved token admin page template 2022-02-03 09:51:04 +01:00
sblondon
7c7b0988b8 Spellcheck a word in french translation 2022-02-01 17:41:52 +00:00
Éloi Rivard
9d4bc2d68f mail recipient bugfix 2022-02-01 17:28:11 +01:00
Éloi Rivard
1d0f1e2f24 LdapObject an have attribute name different than the schema 2022-01-18 18:04:25 +01:00
Éloi Rivard
b47f0e0414 mail view refactoring 2022-01-11 21:11:54 +01:00
Éloi Rivard
52e802b34f split oidc code from the rest 2022-01-11 20:31:55 +01:00
Éloi Rivard
ba65eb16a6 do not import sentry if not needed 2022-01-11 18:02:23 +01:00
Stéphane Blondon
4d24962544 surname is required when the user is created or updated 2022-01-07 15:19:05 +01:00
Éloi Rivard
df603e5f17 flask app delayed imports 2022-01-05 16:30:46 +01:00
Éloi Rivard
5a99a48831 Invited users can choose their uid 2022-01-01 18:41:04 +01:00
Camille
db1d011a3b invitations expire after 48h 2022-01-01 10:56:48 +00:00
Éloi Rivard
633bf6ae1f css typo fix 2021-12-31 17:45:46 +01:00
Éloi Rivard
7498b02cfb nicer mails 2021-12-31 17:35:51 +01:00
Éloi Rivard
8a8a47f38b Fixed the mail recipient format 2021-12-31 17:23:33 +01:00
Éloi Rivard
3804a2a4b0 admin views have its own blueprint 2021-12-26 19:59:20 +01:00
Éloi Rivard
d839dd763d admin: email debugging form 2021-12-23 19:21:29 +01:00
Éloi Rivard
e415a4739e Updated translations 2021-12-23 18:48:49 +01:00
emillumine
05d4800f94 fix bug: groups were not saved on user creation 2021-12-22 16:09:03 +01:00
Funelie
380ea74296 fix profile picture on mobiles 2021-12-22 15:03:18 +01:00
Funelie
9b00190a56 moving mail field in profile layout 2021-12-22 11:06:13 +01:00
Funelie
8fe0da0b4b Merge branch 'master' of gitlab.com:yaal/canaille 2021-12-22 11:05:40 +01:00
Funelie
6a1ea2dea7 fix avatar sizing 2021-12-22 10:54:51 +01:00
Éloi Rivard
50af2e3e72 pre-commit tox test 2021-12-20 23:57:27 +01:00
Camille
239d5d3e24 make UI more adaptable to email provider usecase 2021-12-20 16:15:13 +00:00
Éloi Rivard
15640c6912 fixed photo links 2021-12-16 09:23:08 +01:00
emillumine
58abc8728d fix typo in fr translation 2021-12-15 16:58:02 +01:00
Éloi Rivard
07239c48bd Fixed default fields rights 2021-12-13 23:53:41 +01:00
Éloi Rivard
424bde015f dropdown select placeholders 2021-12-13 23:43:45 +01:00
Éloi Rivard
529b297e93 Manage user websites 2021-12-13 23:04:34 +01:00
Éloi Rivard
f4c04d9666 Default configuration and test client use user avatars 2021-12-13 22:50:53 +01:00
Éloi Rivard
951fce2725 JWT mapping use jinja 2021-12-12 16:17:13 +01:00
Éloi Rivard
e83289b77b Photo endpoint to avoid displaying pictures in base64 2021-12-12 15:55:00 +01:00
Éloi Rivard
18e4b0c42c Documentation improvements 2021-12-12 15:38:32 +01:00
Éloi Rivard
04ca88ddcd Client list 2021-12-10 17:30:51 +01:00