Commit graph

431 commits

Author SHA1 Message Date
Ferdinand Thiessen
832f79ac93
chore: apply code style
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-30 19:04:59 +02:00
provokateurin
d44b42fd24
Revert "refactor: add migration for email setting"
This reverts commit e7859f0dac.

Signed-off-by: provokateurin <kate@provokateurin.de>
2025-04-07 10:23:23 +02:00
Ferdinand Thiessen
8ab28350f9 refactor: add migration for email setting
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-03 16:12:55 +02:00
provokateurin
8a8d6addfb fix(settings): Handle email change restriction separately from display name change restriction
Co-authored-by: provokateurin <kate@provokateurin.de>
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Louis <louis@chmn.me>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-03 16:12:55 +02:00
Christoph Wurst
181561771b
fix(session): Only mark sessions of permanent tokens as app passwords
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-04-03 10:15:11 +02:00
Côme Chilliet
107c18dff2
chore: Remove now unused methods from User manager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-31 15:39:35 +02:00
Côme Chilliet
d3bc8b771c
fix: Correctly count disabled users for SAML groups subadmins
If too many users return -1 as for LDAP so that link is shown

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-31 15:39:05 +02:00
Louis Chemineau
822761af70 chore: Refactor callForSeenUsers to use getSeenUsers
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-03-31 11:00:59 +00:00
Louis Chemineau
97d1295ff2 feat: Implement getSeenUsers to iterate over users
This method uses an iterator.
This is lighter on resources and gives more control to the caller

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-03-31 11:00:59 +00:00
Cleopatra Enjeck M.
22fa59b378 fix: use mb_strtolower to convert login name
Signed-off-by: Cleopatra Enjeck M. <patrathewhiz@gmail.com>
2025-03-05 06:20:52 +00:00
Cleopatra Enjeck M.
9dbf067f31 fix: Improve string comparison
Signed-off-by: Cleopatra Enjeck M. <patrathewhiz@gmail.com>
2025-03-05 06:20:52 +00:00
Cleopatra Enjeck M.
dc68d66945 fix: Use case insensitive check when validating login name
Signed-off-by: Cleopatra Enjeck M. <patrathewhiz@gmail.com>
2025-03-05 06:20:52 +00:00
provokateurin
a7f5b452d1
fix(BackgroundJobs): Adjust intervals and time sensitivities
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-11-25 08:38:58 +01:00
Benjamin Gaussorgues
0cd1eeb509
fix(sharding): typo in addOrderBy
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-10-30 11:43:38 +01:00
Benjamin Gaussorgues
9a7ee321fa
fix(users): improve recently active search
- Remove DISTINCT clause to fix PgSQL
- Join user table only if necessary
- Don't show people who never connected in active list
- Add test

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-10-30 10:17:03 +01:00
Ferdinand Thiessen
198c2d3d68
fix: Skip users that still exist in backend
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-08 21:02:20 +02:00
Ferdinand Thiessen
7dd85e15b9
fix: Make user removal more resilient
Currently there is a problem if an exception is thrown in `User::delete`,
because at that point the user is already removed from the backend,
but not all data is deleted.

There is no way to recover from this state, as the user is gone no information is available anymore.
This means the data is still available on the server but can not removed by any API anymore.

The solution here is to first set a flag and backup the user home,
this can be used to recover failed user deletions in a way the delete can be re-tried.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-08 21:02:07 +02:00
Louis Chemineau
9a34a6c4c4
fix(users): Don't crash if disabled user is missing in the database
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-09-23 18:06:38 +02:00
Ferdinand Thiessen
0563757ea4 fix(SetupCheck): Properly check public access to data directory
When checking for public (web) access to the data directory the status is not enough
as you might have a webserver that forwards to e.g. a login page.
So instead check that the content of the file matches.

For this the `.ncdata` file (renamed from `.ocdata`¹) has minimal text content
to allow checking.

¹The file was renamed from the legacy `.ocdata`, there is a repair step to remove the old one.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-08 22:08:42 +02:00
Arthur Schiwon
6a783d9b08
fix(Session): avoid race conditions on clustered setups
- re-stablishes old behaviour with cache to return null instead of throwing
  an InvalidTokenException when the token is cached as non-existing
- token invalidation and re-generation are bundled in a DB transaction now

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-07-10 13:28:33 +02:00
Pytal
3a97dbf248
Merge pull request #46123 from nextcloud/feat/user-password-hash
feat: Allow getting/setting the password hash of a user
2024-07-09 08:00:01 -07:00
Christopher Ng
c390ae94ff feat: Validate password hash
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-08 16:31:42 -07:00
Christopher Ng
dba00560d2 perf: Return cached password hash
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-08 16:30:52 -07:00
Christopher Ng
34d97d45cf feat: Allow getting/setting the password hash of a user
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-08 16:30:52 -07:00
Christopher Ng
a330f4c9d5 feat: Implement IPasswordHashBackend in database user backend
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-07-08 16:30:52 -07:00
yemkareems
4eba967d63 fix: getLastLoggedInUsers moved from AllConfig/IConfig to IUserManager/Manager
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
ae95e46787 fix: limit and fixLimit removed. negative limit handled in controller. removed getUsersSortedByLastLogin from Manager and instead used the config in controller
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
ceedfb4616 fix: removed default limit of 25. if null is given all users are fetched or if limit is given limit number of users are fetched
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
cfafbc8415 fix: removed references to old disabled users code. refactored query as per getDisplayNames function. limit and offset added to query. default limit set to 25.
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
afa51365ff fix: removed the params related to sortMode and order since it sorts by lastLogin
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
5b249df686 fix: doc blocks added
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
695bd042d7 fix: search and searchDisplayNames reverted to how it was initially as sort and order are not required here
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
dc6e8c9c0a fix: search and searchDisplayNames reverted to how it was initially as sort and order are not required here
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
4cb85f7c9e fix: rebased the branch with master and resolved conflicts
fix: added a new endpoint users/recent and getting users based on last login info in the same. Reverted old code that was breaking LDAP

Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
76c875a588 fix: change orderBy and sort to sortMode and sortOrder. default it to uid asc. enable email search by changing query
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
33b38c6573 fix: cs fix and psalm ci related changes
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
c8c68c3510 fix: sort the user getDisplayNames based on lastLogin. Default sort order is lastLogin DESC
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
87a8013ee3 feat: cs fix run on the changed files and default order by last_login desc. Also last_login sort logic changed
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
yemkareems
0ee676cd51 feat: add ability to sort users by last_login, uid or displayName. one of these needs to be passed as orderBy and sort can be ASC or DESC
Signed-off-by: yemkareems <yemkareems@gmail.com>
2024-07-08 15:42:55 +05:30
Hamza Mahjoubi
85a3b27cf9 Fix: Make out of office replacement nullable
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-07-03 12:31:53 +02:00
Hamza Mahjoubi
a9774741e8 Feat: Allow users to select another user as their out-of-office replacement
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-07-01 15:10:16 +02:00
John Molakvoæ
95dc7729fb
Merge pull request #40147 from summersab/refactor/OC-Server-getNotificationManager 2024-05-31 19:09:38 +02:00
John Molakvoæ
84789222b1
chore: php lint fix import
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-05-30 18:38:02 +02:00
John Molakvoæ
65ad1d0abe
Merge branch 'master' into refactor/OC-Server-getNotificationManager
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-05-30 14:33:12 +02:00
John Molakvoæ
cc7e6e5e4c
Merge branch 'master' into refactor/OC-Server-getCsrfTokenManager
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-05-30 14:29:21 +02:00
Daniel
fca38e12c8
Merge pull request #45411 from nextcloud/fix/auth/selective-token-activity-update
fix(auth): Update authtoken activity selectively
2024-05-29 12:05:45 +02:00
Andy Scherzinger
dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00
Côme Chilliet
8044edf309
fix: Also search in email field for disabled users
To match what is done for Database backend for enabled users

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-05-23 09:09:20 +02:00
Côme Chilliet
6d56f3557d
feat: Add back searching in disabled user list
When disabled users where moved to their own endpoint we overlooked
 search, so adding it back.
The search is done case-insensitive in uid and display name.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-05-23 09:08:31 +02:00
Christoph Wurst
bcc02a3c71
fix(auth): Update authtoken activity selectively
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-05-21 07:55:01 +02:00