Commit Graph

28 Commits

Author SHA1 Message Date
Max Erenberg 95d083fca1 use our own SPNEGO implementation
continuous-integration/drone/push Build is failing Details
2021-08-21 06:27:33 +00:00
Max Erenberg 2a286579cb Merge branch 'v1' into uwldap_tests 2021-08-19 17:20:47 +00:00
Max Erenberg ecf089c261 Implement Groups API (#6)
This PR implements the /api/groups endpoints.

Closes #2.

Reviewed-on: #6
Co-authored-by: Max Erenberg <merenber@localhost>
Co-committed-by: Max Erenberg <merenber@localhost>
2021-08-19 12:58:59 -04:00
Max Erenberg cc0bc4a638 add tests for Mailman API 2021-08-19 16:14:41 +00:00
Max Erenberg 12a83ce4c0 remove create_sync_response 2021-08-19 05:11:22 +00:00
Max Erenberg 28c55b2fed add tests for UWLDAP API 2021-08-19 04:56:25 +00:00
Max Erenberg 6bf4d75a60 log error message instead of traceback 2021-08-19 00:19:57 +00:00
Max Erenberg 57ab275634 implement /api/groups endpoints 2021-08-18 23:48:17 +00:00
Max Erenberg d78d31eec0 add Kerberos delegation (#5)
This PR adds unconstrained Kerberos delegation to the API.

The client obtains a forwarded TGT and sends it, base64-encoded, in an HTTP header named 'X-KRB5-CRED'. The server reads this credential, creates a new credentials cache for the user, and stores the credential into the new cache. The server can now authenticate to other services (e.g. LDAP) over GSSAPI using the forwarded client's credentials.

Reviewed-on: #5
Co-authored-by: Max Erenberg <merenber@localhost>
Co-committed-by: Max Erenberg <merenber@localhost>
2021-08-18 15:39:14 -04:00
Max Erenberg dd59bea918 add Kerberos delegation 2021-08-18 01:59:24 +00:00
Max Erenberg d82b5a763b use ldap3 instead of python-ldap 2021-08-15 05:04:49 +00:00
Max Erenberg 6cdb41d47b move all tests to top-level folder 2021-08-14 00:11:56 +00:00
Max Erenberg cbf4aa43f8 add tests for uwldap 2021-08-04 20:59:36 +00:00
Max Erenberg 9e4d564a33 move INI file locations 2021-08-04 17:15:06 +00:00
Max Erenberg 3ecf43731f add tests for Group class 2021-08-04 06:33:50 +00:00
Max Erenberg e7bfe36c0b add tests for User class 2021-08-04 05:54:21 +00:00
Max Erenberg 87298e18b3 cast string values in Config 2021-08-04 03:30:19 +00:00
Max Erenberg baeb83b1e2 use ConfigParser 2021-08-03 23:19:33 +00:00
Max Erenberg 4a312378b7 remove mailman transactions 2021-08-03 20:11:13 +00:00
Max Erenberg 96cb2bc808 add updateprograms 2021-08-03 14:09:07 +00:00
Max Erenberg 7c67a07200 use create_sync_response 2021-08-03 03:20:11 +00:00
Max Erenberg c32e565f68 implement renewals and password resets 2021-08-02 08:01:13 +00:00
Max Erenberg da14764687 Merge branch 'v1' of https://git.csclub.uwaterloo.ca/public/pyceo into v1 2021-08-02 07:21:20 +00:00
Max Erenberg ff2ac95d5e add PATCH /api/members/:username endpoint 2021-08-02 07:19:29 +00:00
Max Erenberg 9227552b29 re-send EHLO after STARTTLS 2021-07-31 08:34:06 -04:00
Max Erenberg e966e3f307 add app factory 2021-07-24 21:09:10 +00:00
Max Erenberg 3b78b7ffb4 add MailService and MailmanService 2021-07-24 00:08:22 +00:00
Max Erenberg de0f473881 add base classes for users and groups 2021-07-19 05:47:39 +00:00