Non-ASCII identifiers for usernames (not GUI names)
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 36.9k
- Forks
- 5.2k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 713
Description
Currently, usernames can only consist of ASCII characters, but this poses a problem for email login. SMTPUTF8 allows email addresses with non-ASCII characters in the local part that cannot be converted using Punnycode or similar methods.
To protect existing systems, the default behavior for username validation could remain unchanged, and an opt-in option could allow usernames to be non-ASCII-compliant (as well as -bad-name in Linux user management).
My use case:
I want to switch from OneDrive to Nextcloud at my company, and as an IT service provider, I also want to help other companies migrate to Nextcloud, but because of this username restriction, that’s not an option for me right now (we already use email addresses with non-ASCII characters).
Update:
Patch: unicode-benutzernamen.patch
ótzï@test-System-Product-Name:~/Schreibtisch/nextcloud/nextcloud-docker-dev$ docker compose exec nextcloud occ user:add jürgen
Warning: The account ID contains non-ASCII characters. This requires the "allow_unicode_usernames" system config flag and may break external storage, LDAP, federation, clients or apps that expect ASCII-only account IDs.
Enter password:
Confirm password:
The account "jürgen" was created successfully
Profiler output available at http://nextcloud.local/index.php/apps/profiler/profiler/db/SNNzx6eW5aQz7mRIeBUO/
ótzï@test-System-Product-Name:~/Schreibtisch/nextcloud/nextcloud-docker-dev$
I've already done a bit of testing and created a patch—it's doable. Here are a few screenshots
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 with the occ user:add entry point and the allow_unicode_usernames system configuration flag shown in the issue. Review the attached patch and determine the affected username validation and account-ID paths; done means opt-in non-ASCII usernames work while the default remains unchanged and the compatibility warning is preserved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- authentication
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100