Support Bot Password authentication#6728
Support Bot Password authentication#6728Kota-Jagadeesh wants to merge 8 commits intocommons-app:mainfrom
Conversation
|
hi @sivaraam! got the reply from tthe mailing list, and they confirmed our approach is good to go!
|
|
their exact replies in the mailing list :
Yes, bot passwords were originally meant as a backwards compatibility mechanism for old bots using the action=login endpoint. (Modern bots are encouraged to use OAuth instead, but for mobile apps the support for that is not so great, so bot passwords are probably still the least bad option. We hope to improve that soon.)
For Wikimedia wikis, yes. In general, it is configurable, so I guess it's theoretically possible some wiki out there would still have it enabled. |
|
also, i have implemented the idea about the permissions! > it's good that not letting the users log in if they don't have the right privileges. I will update the PR in the evening after my college ends. |
|
✅ Generated APK variants! |
|
hi @sivaraam, i updated thhe pr to make the authentication flow much more better, including the permissions validation you suggested! 🙂
i also attached the screen recording below showing all the test cases:
please review the changes when you have a chance and let me know if anything needs adjusting! :) screen record clip : Screenrecorder-2026-03-13-20-42-19-415.mp4 |
|
Wonderful, @Kota-Jagadeesh Let's check and get this merged soon :-) |
Description (required)
Fixes #6714
What changes did you make and why?
because the standard
clientloginAPI rejects bot passwords, users with WebAuthn/2FA are currently locked out of the app. To fix this:postBotLogInRetrofit endpoint using theaction=loginAPI.LoginClientto check if a username contains an@symbol, dynamically sending bot users to the new endpoint and regular users toclientlogin.LoginResponseusingJsonElementto handle the bot login responses.Note: Leaving this as a draft while I wait for the mailing list confirmation regarding the API endpoints
Tests performed (required)
Tested
ProdDebugonRedmi Note 13 Prowith API level35.clientloginand handle 2FA blocks as expected.Screenshots (for UI changes only)
N/A - No ui changes yet!