Closed richvdh closed 3 years ago
This is related to https://github.com/matrix-org/synapse/issues/5665: basically synapse uses "is this a login or a UIA?" to decide whether to look for an identifier
, whereas it should be looking at the login/auth type.
I should be able to implement this via a custom password provider
except I can't, because the custom password provider API takes a "username", so synapse core has to be able to convert the identifier dict to a username.
This code is a bit of a mess generally, but I don't think this is worth tracking.
suppose I create a custom login type
com.example.login_token
(NB a login type as opposed to a UIA authentication type) and say that the login submission should look like this:I should be able to implement this via a custom password provider; however, synapse expects to see an
identifier
in the submission, and will reject the login before passing it to the password provider.