RocketChat / RocketChat/Rocket.Chat
:ldap rocket chat is picking none if ldap have multiple entries with the id
Open
Nobody has claimed this yet.
area: authentication
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
When a user is logs into the system for the first time and the user has multiple entries in ldap with the same uid, rocket chat chooses none to select as the right one.
Steps to reproduce:
- User logs into the system for the first time with multiple ldap entries.
Expected behavior:
The new user can login.
The system is picking the right entry which not contains the field aliasedObjectName.
Actual behavior:
The user can't login.
Server Setup Information:
- Version of Rocket.Chat Server: 3.13.0
- Operating System: Ubuntu 18.04
- Deployment Method: https://docs.rocket.chat/installation/manual-installation/updating
- Number of Running Instances: 1
- DB Replicaset Oplog:
- NodeJS Version: v12.18.4
- MongoDB Version: 4.0.23
Additional context
- There are multiple entries in the system, but only one contains the needed information. For example, if a new user has 3 entries, 2 are shadow entries which have the field aliasedObjectName with the link to the right entry, which is the third one.
- So my idea is to solve this, iterate over the entries and pick the one without the aliasedObjectName field.
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
No file or test is named in the issue. Start by tracing the TypeScript LDAP first-login flow and inspect how multiple entries are selected; done means a user with shadow entries can log in using the entry without aliasedObjectName.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- authentication, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100