diff options
author | Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> | 2019-03-26 17:48:30 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-26 17:48:30 +0000 |
commit | bbd244c7b202319f7642f151e099761024327fa2 (patch) | |
tree | 82d41828c5c4ee06f3e129730559eb242a29f836 /docs | |
parent | Use the state event amount for userdir import batching, not room count (#4944) (diff) | |
download | synapse-bbd244c7b202319f7642f151e099761024327fa2.tar.xz |
Support 3PID login in password providers (#4931)
Adds a new method, check_3pid_auth, which gives password providers the chance to allow authentication with third-party identifiers such as email or msisdn.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/password_auth_providers.rst | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/docs/password_auth_providers.rst b/docs/password_auth_providers.rst index d8a7b61cdc..6149ba7458 100644 --- a/docs/password_auth_providers.rst +++ b/docs/password_auth_providers.rst @@ -75,6 +75,20 @@ Password auth provider classes may optionally provide the following methods. result from the ``/login`` call (including ``access_token``, ``device_id``, etc.) +``someprovider.check_3pid_auth``\(*medium*, *address*, *password*) + + This method, if implemented, is called when a user attempts to register or + log in with a third party identifier, such as email. It is passed the + medium (ex. "email"), an address (ex. "jdoe@example.com") and the user's + password. + + The method should return a Twisted ``Deferred`` object, which resolves to + a ``str`` containing the user's (canonical) User ID if authentication was + successful, and ``None`` if not. + + As with ``check_auth``, the ``Deferred`` may alternatively resolve to a + ``(user_id, callback)`` tuple. + ``someprovider.check_password``\(*user_id*, *password*) This method provides a simpler interface than ``get_supported_login_types`` |