Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

synapse requires unspecified user for m.login.password UI auth #5665

Closed

Description

@richvdh

The spec says that the client should submit a dict including an identifier object. In practice, synapse requires you to instead to just submit a user field, so the dict looks like:

{
  "type": "m.login.password",
  "user": "<user_id or user localpart>",
  "password": "<password>",
  "session": "<session ID>"
}

Activity

  1. richvdh commented on Jul 11, 2019

    @richvdh
    MemberAuthor

    Note that riot-web currently relies on the broken impl working (element-hq/element-web#10312)

  2. turt2live commented on Jul 11, 2019

    @turt2live
    Member

    Also applies to threepidCreds on MSISDN (see matrix-org/matrix-react-sdk#3211)

  3. richvdh commented on Aug 28, 2019

    @richvdh
    MemberAuthor

    Note that riot-web currently relies on the broken impl working (element-hq/element-web#10312)

    This is no longer true: riot-web submits both formats, and should continue to work when we fix this.

  4. bmarty commented on Nov 21, 2019

    @bmarty

    FTR RiotX uses the identifier object

  5. dbkr commented on Jan 21, 2020

    @dbkr
    Member

    It's obviously easy to do so, but I'm having to work around this in riot web now.

  6. jcgruenhage commented on May 4, 2020

    @jcgruenhage
    Contributor

    So, riot-web has been sending both user and identifier for a while. Can the user parameter be removed as a requirement and just be optional, so that clients correctly implementing the spec can work with synapse?

  7. jcgruenhage commented on May 4, 2020

    @jcgruenhage
    Contributor

    (Making this optional will not break clients)

  8. anoadragon453 commented on Aug 27, 2020

    @anoadragon453
    Member

    #8182 is one part of this and is currently in review.

  9. changed the title [-]synapse implements m.login.password UI auth incorrectly[/-] [+]synapse requires unspecified `user` for m.login.password UI auth[/+] on Nov 27, 2020
  10. richvdh commented on Nov 27, 2020

    @richvdh
    MemberAuthor

    Also applies to threepidCreds on MSISDN (see matrix-org/matrix-react-sdk#3211)

    @turt2live: please can you help me out here: I can't figure out which endpoint is being called with what parameters, and what the correct behaviour is. (it sounds like a separate problem: better to open a separate issue?)

  11. turt2live commented on Nov 27, 2020

    @turt2live
    Member

    Between that PR and the others (matrix-org/matrix-react-sdk#4667 and company) there's a fairly wide range of endpoints. The threepidCreds thing is most apparent on password resets or anything having UIA and email addresses as a flow. The user thing is most obvious on account deactivation, but can also be a case for changing passwords in the app (not reset, changing) as well.

  12. turt2live commented on Nov 27, 2020

    @turt2live
    Member

    The undocumented user object is more or less at the wrong place compared to the spec, so Synapse just needs to change its lookup. The threepidCreds problem is similar in that it's just spelled wrong between the spec and synapse's expectations.

  13. richvdh commented on Nov 27, 2020

    @richvdh
    MemberAuthor

    @turt2live: ok, to save readers of this issue (including myself) trying to reverse-engineer the problem from react-sdk PRs, please can you try to give some specific examples. The spec says threepidCreds in some places and three_pid_creds in others. What is synapse expecting, and what should it be expecting?

    Again I think this is orthogonal to user so I'd encourage you to open a new issue.

  14. turt2live commented on Nov 27, 2020

    @turt2live
    Member

    I don't have the context to be able to write up that issue anymore, sorry.

  15. richvdh commented on Nov 30, 2020

    @richvdh
    MemberAuthor

    ok, I'm going to fix the user issue and consider threepidCreds an unrelated problem. If you/anyone has more info, please open a new issue.

  16. added a commit that references this issue on Dec 1, 2020
    4d94965
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

A-Spec-Complianceplaces where synapse does not conform to the specz-bug(Deprecated Label)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions