RocketChat / RocketChat/Rocket.Chat
"Users must use Two Factor Authentication" setting does not work
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
As in the title, "Users must use Two Factor Authentication" setting does not work.
Steps to reproduce:
- Enabled "Users must use Two Factor Authentication" setting on the "user" role.
- Created new user with "user" role.
- Able to log in with the new user and do everything without setting up 2FA.
- Nothing is enforced.
Expected behavior:
- Server disallows any action till 2FA is set up.
- When user logs in or refreshes the page, some 2FA related setup flow pops up.
Actual behavior:
Nothing, user can do everything without ever setting up 2FA,
Server Setup Information:
- Version of Rocket.Chat Server: 5.4.0
- Operating System: ubuntu 22.04
- Deployment Method: manual
- Number of Running Instances: 1
- DB Replicaset Oplog: enabled
- NodeJS Version: 14.21.2
- MongoDB Version: 6.0.3
Client Setup Information
Not sure what this means, accessing from browser.
Relevant logs:
Few other issues mention error logs in browser or server, but no error logs seen in this case.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue with the "Users must use Two Factor Authentication" setting enabled for the user role, then trace the existing 2FA enforcement flow. Done means a newly created user cannot perform normal actions or proceed without completing 2FA setup, and the behavior is covered by a regression test.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- authentication, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100