Commit Graph

11 Commits

Author SHA1 Message Date
Patrick Cloke
0b3112123d
Use mock from the stdlib. () 2021-04-09 13:44:38 -04:00
Richard van der Hoff
7eb6e39a8f
Record the SSO Auth Provider in the login token ()
This great big stack of commits is a a whole load of hoop-jumping to make it easier to store additional values in login tokens, and then to actually store the SSO Identity Provider in the login token. (Making use of that data will follow in a subsequent PR.)
2021-03-04 14:44:22 +00:00
Patrick Cloke
6dade80048
Combine the CAS & SAML implementations for required attributes. () 2021-02-11 10:05:15 -05:00
Richard van der Hoff
8aed29dc61
Improve styling and wording of SSO redirect confirm template () 2021-02-01 15:50:56 +00:00
Richard van der Hoff
2ec8ca5e60
Remove SynapseRequest.get_user_agent ()
SynapseRequest is in danger of becoming a bit of a dumping-ground for "useful stuff relating to Requests",
which isn't really its intention (its purpose is to override render, finished and connectionLost to set up the 
LoggingContext and write the right entries to the request log).

Putting utility functions inside SynapseRequest means that lots of our code ends up requiring a
SynapseRequest when there is nothing synapse-specific about the Request at all, and any old
twisted.web.iweb.IRequest will do. This increases code coupling and makes testing more difficult.

In short: move get_user_agent out to a utility function.
2021-01-12 12:34:16 +00:00
Richard van der Hoff
e1b8e37f93
Push login completion down into SsoHandler ()
This is another part of my work towards fixing . It moves some of the logic currently in the SAML and OIDC handlers - in particular the call to `AuthHandler.complete_sso_login` down into the `SsoHandler`.
2020-12-16 20:01:53 +00:00
Richard van der Hoff
01333681bc
Preparatory refactoring of the SamlHandlerTestCase ()
* move simple_async_mock to test_utils

... so that it can be re-used

* Remove references to `SamlHandler._map_saml_response_to_user` from tests

This method is going away, so we can no longer use it as a test point. Instead,
factor out a higher-level method which takes a SAML object, and verify correct
behaviour by mocking out `AuthHandler.complete_sso_login`.

* changelog
2020-12-15 20:56:10 +00:00
Patrick Cloke
6ff34e00d9
Skip the SAML tests if xmlsec1 isn't available. () 2020-12-09 12:23:30 -05:00
Patrick Cloke
22c6c19f91
Fix a regression that mapping providers should be able to redirect users. ()
This was broken in .
2020-12-04 08:25:15 -05:00
Patrick Cloke
8388384a64
Fix a regression when grandfathering SAML users. ()
This was broken in  when abstracting code shared with OIDC.

After this change both SAML and OIDC have a concept of
grandfathering users, but with different implementations.
2020-12-02 07:45:42 -05:00
Patrick Cloke
c21bdc813f
Add basic SAML tests for mapping users. () 2020-12-02 07:09:21 -05:00