Ferdinand Thiessen
78cef3b0e0
Merge pull request #44859 from nextcloud/feat/add-ldap-connection-setup-check
...
feat(user_ldap): Add setup check to verify connection configuration
2024-04-18 13:36:10 +02:00
Côme Chilliet
3ad4bbb096
Merge pull request #44658 from nextcloud/fix/migrate-away-from-resource-type
...
fix: Remove obsolete resource typing
2024-04-16 17:13:07 +02:00
Côme Chilliet
9bf3d5a73a
fix(user_ldap): Remove unicode character from log lines
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-16 17:02:10 +02:00
Côme Chilliet
d546b9ffb9
feat(user_ldap): Add setup check to verify connection configuration
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-16 16:57:21 +02:00
Côme Chilliet
6d7ff2e85a
fix: Fix typing issues related to resource migration
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-09 10:48:27 +02:00
Côme Chilliet
d6a94c60ce
fix: Add missing psalm-assert to isResource
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-09 10:01:47 +02:00
Côme Chilliet
72a0da6d4e
fix: Fix small psalm errors in FTP and LDAP connections
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-09 10:01:47 +02:00
Côme Chilliet
d4229f9f59
fix(user_ldap): Fix tests using wrong types
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-09 10:01:47 +02:00
Côme Chilliet
0f348516d2
fix: Remove obsolete resource typing
...
In PHP>=8.1, LDAP and FTP resources are always typed objects
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-09 10:01:47 +02:00
Arthur Schiwon
55d3a2af9e
docs(LDAP): add info on stored DN form
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-04-05 16:47:55 +02:00
Arthur Schiwon
659125b395
fix(LDAP): escape DN on check-user
...
the DN has to be escaped differently when used as a base and we were
missing it here in the search method call in the check-user command.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-04-05 16:24:27 +02:00
Côme Chilliet
ec5133b739
fix: Apply new coding standard to all files
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-02 14:16:21 +02:00
Côme Chilliet
2874dff773
fix(user_ldap): Early failure for empty password login attempt
...
This avoids user_ldap logging about an invalid configuration with an
empty password when the empty password actually comes from a login
attempt.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-06 16:47:16 +01:00
Côme Chilliet
827269f5b8
Merge pull request #43764 from nextcloud/fix/user_ldap-ignore-unserialize-errors-in-migration
...
fix(user_ldap): Ignore unserialize error in group membership migration
2024-03-06 13:04:20 +01:00
Côme Chilliet
d16334774a
fix(user_ldap): Catch DB Exceptions when updating group memberships
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-06 10:19:38 +01:00
Côme Chilliet
875d0a27b0
fix(user_ldap): Ignore unserialize error in group membership migration
...
The memberships will be checked by the background job later and data
will be added to the table anyway.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-06 10:18:16 +01:00
Joas Schilling
92fc12918e
fix(migrations): Help developers to add description and copyright info
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-03-05 12:56:38 +01:00
F. E Noel Nfebe
3fb1674251
Merge pull request #43461 from nextcloud/fix/get-rid-of-getlogger
...
chore: Migrate away from OC::$server->getLogger
2024-02-14 10:47:22 +01:00
Vincent Petry
839ddaa354
feat: rename users to account or person
...
Replace translated text in most locations
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2024-02-13 21:06:30 +01:00
Côme Chilliet
c0ce272e9c
chore: Migrate away from OC::$server->getLogger
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-02-13 17:32:30 +01:00
Côme Chilliet
303e2febc7
Merge pull request #43387 from nextcloud/fix/migrate-away-from-ilogger-in-jobs
2024-02-08 18:27:44 +01:00
Louis Chemineau
898df41de9
Revert "Merge branch 'master' of github.com:nextcloud/server"
...
This reverts commit d9d60238c7 , reversing
changes made to ba3fdb0cdc .
2024-02-08 15:31:19 +01:00
Côme Chilliet
166773879b
fix!: Migrate jobs away from deprecated interfaces
...
BREAKING CHANGE: Removed ILogFactory::getCustomLogger deprecated method
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-02-08 10:28:29 +01:00
Faraz Samapoor
e6a4ebcc92
Update apps/user_ldap/lib/Command/Search.php
...
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com>
2024-02-06 10:02:11 +01:00
Faraz Samapoor
f03781b509
Refactors user_ldap app commands.
...
To improve code readability.
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com>
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
2024-02-06 10:02:11 +01:00
Côme Chilliet
b2e9e0fa0d
chore: Replace OC::$server->getL10N by OCP\Util::getL10N in lib and some apps
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-02-05 11:16:04 +01:00
Ferdinand Thiessen
b8fbd7721d
fix(user_ldap): Ensure host is a string when checking if ldapi
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-01-26 14:53:32 +01:00
provokateurin
88f7d5bf84
chore(deps): Update openapi-extractor
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-01-18 16:00:18 +01:00
Côme Chilliet
658b20aef5
Fix crash of login in case of duplicated group membership
...
If several LDAP configurations return the same group id for a user it
should still only appear once in the return of getUserGroups
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-01-15 09:39:59 +01:00
Côme Chilliet
6d0f0fc01b
Fix upgrade of user_ldap when oc_group_members contains duplicated uids
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-01-04 11:51:33 +01:00
Arthur Schiwon
ee096f8629
fix(LDAP): ensure stored groups are formatted as simple list
...
With array_unique it is possible that the keys are not in sequential order
but have gaps. json_encode then would store them as associative array,
which later on json_decode would result in a stdClass by default. This is
unexpected and would also contradict the return type hint.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-12-20 17:05:58 +01:00
Pytal
294330454b
Merge pull request #40169 from nextcloud/enh/load-disabled-users-directly
...
enh(settings): Load from disabled users endpoint
2023-12-01 08:42:04 -08:00
Arthur Schiwon
37237dc183
feat(LDAP): warn about demoting a group while promoting another
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-12-01 12:48:24 +01:00
Arthur Schiwon
18e6c9f5bc
enh(LDAP): add occ command to promote an LDAP group to admin
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-12-01 12:48:24 +01:00
Arthur Schiwon
d6b356c63b
enh(LDAP): implement IIsAdmin interface
...
- add configuration to specify one LDAP group acting as admin group (CLI)
- implement `isAdmin()` method, basically relying on inGroup against the
configured group
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-12-01 12:48:24 +01:00
Côme Chilliet
adc43eae9b
Invert parameter order in getDisabledUserList to be consistent
...
This matches what was done in the calls and so fixes getting disabled
user list when there are several backends returning disabled users.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-11-30 17:15:12 -08:00
Joas Schilling
aa5f037af7
chore: apply changes from Nextcloud coding standards 1.1.1
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Arthur Schiwon
d978050666
fix(LDAP): prevent incomplete displaynames…
...
… when reading users from primary groups or gidNumber-based groups
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-11-07 21:02:31 +01:00
Côme Chilliet
6b7d4b67d1
Improve setup checks naming and improve database version check
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-24 11:40:03 +02:00
Côme Chilliet
2e4d1549a4
Change SetupResult API to named constructors
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-19 11:44:03 +02:00
Côme Chilliet
b41b9cf4c0
Small cleanups in SetupCheck classes
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-19 11:43:59 +02:00
Côme Chilliet
0890012e72
Fix SetupChecks/LdapInvalidUuids.php
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-19 11:43:58 +02:00
Carl Schwan
c71e47f5c3
Progress
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2023-10-19 11:43:58 +02:00
Côme Chilliet
8212feefb9
Merge pull request #40367 from nextcloud/fix/user_ldap-update-groups-on-login
...
Fire group membership events from LDAP at login
2023-10-16 10:01:55 +02:00
Côme Chilliet
05efbf11d9
Fix LDAP LoginListener by adding new group relationships to caches before firing the event
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-12 10:13:43 +02:00
Côme Chilliet
800b1b7031
Fire group events at login for LDAP groups
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-12 10:13:43 +02:00
Côme Chilliet
6e38cb197a
Add logging to be able to debug FirstLoginListener
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-12 10:13:42 +02:00
Côme Chilliet
4f2048851c
Move event listener registration to register()
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-12 10:13:42 +02:00
Côme Chilliet
2e52e39aff
Use a standard array for the stateful cache
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-12 10:13:42 +02:00
Côme Chilliet
474b5e1a05
Add FirstLoginListener to accept shares upon first ldap user login
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-10-12 10:13:41 +02:00
Arthur Schiwon
cce8d0a7a5
fix(LDAP): solve race condition reading groups of disappeared LDAP user
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-10-11 15:35:10 +02:00
Arthur Schiwon
c1480aade4
refactor(LDAP): pass IConfig via constructor to Group_LDAP
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-10-10 11:18:57 +02:00
Arthur Schiwon
cb3faad5b5
fix(ldap): store last known user groups
...
- for LDAP user life cycle management
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-10-09 19:46:27 +02:00
Côme Chilliet
9ebcd287ef
Merge pull request #37201 from AaronDewes/fix/ldap-filter-generation
...
Fix: Escape group names for LDAP
2023-10-02 09:49:22 +02:00
Marcel Klehr
7f5b61c66d
Update apps/user_ldap/lib/User/User.php
...
Co-authored-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2023-09-29 13:48:06 +02:00
Marcel Klehr
66f6e94d7d
LDAP: Increase profile picture limit to 512
...
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2023-09-29 12:47:48 +02:00
Hamid Dehnavi
d64bbc8bd3
Convert isset ternary to null coalescing operator
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-09-28 12:18:41 +03:30
jld3103
c2d45cb172
Add single status code descriptions for OpenAPI
...
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-09-27 08:05:21 +02:00
Aaron Dewes
aefa366495
Merge branch 'master' into fix/ldap-filter-generation
2023-09-20 15:38:52 +02:00
Côme Chilliet
7a59d2ec07
Remove deprectated ILogger uses from user_ldap application
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-19 15:22:45 +02:00
Julius Härtl
97dd09c434
Merge pull request #39128 from nextcloud/fix/35319/ldap-missing-avatar
2023-09-11 19:43:18 +02:00
Côme Chilliet
2c8b415c55
Move new methods to a new interface in OCP
...
This avoids breaking compatibility for group backends not based on
ABackend abstract class.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-05 16:56:48 +02:00
Côme Chilliet
a5fa1e7715
Fix psalm errors about groupExists return type
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-05 16:56:48 +02:00
Carl Schwan
3270b7f12e
Add batch methods in user backends
...
This allows for faster group search with significantly less DB traffic
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2023-09-05 16:56:47 +02:00
Anna Larch
5d5134e615
Do not log passwords in debug mode
...
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-08-24 10:39:27 +02:00
Aaron Dewes
16908999ed
Simplify escapeFilterPart
...
Signed-off-by: Aaron Dewes <aaron.dewes@protonmail.com>
2023-08-13 15:43:04 +02:00
Aaron Dewes
13d9494af3
Escape some more values
...
Signed-off-by: Aaron Dewes <aaron.dewes@protonmail.com>
2023-08-13 15:43:04 +02:00
AaronDewes
c42d9d439a
Fix: Escape group names for LDAP
...
Groups may contain special characters (Like "(" or ")") that should be escaped to ensure geenrted queries are correct.
Signed-off-by: AaronDewes <aaron.dewes@protonmail.com>
2023-08-13 15:43:04 +02:00
Côme Chilliet
a0808111b4
Add unique index for user_ldap group memberships
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:37 +02:00
Côme Chilliet
b8a0954f55
Fix check-group --update for deleted groups
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:37 +02:00
Côme Chilliet
5425f7d3bd
Use BIGINT for new table id field
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:36 +02:00
Côme Chilliet
7732de75ee
Removed GroupCreatedEvent/GroupDeletedEvent from UpdateGroupsService
...
This should be handled when mapping groups, not when registering their
members. An empty group may still exist.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:36 +02:00
Côme Chilliet
ad1e487f67
Dispatch UserRemovedEvents for removed groups
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:35 +02:00
Côme Chilliet
c33c40f677
[user_ldap] Small perf improvements suggestion from review
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:35 +02:00
Côme Chilliet
1026b2131c
Fix check-group command for new groups
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:34 +02:00
Côme Chilliet
42448c0d78
Fix getKnownGroups return value
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:34 +02:00
Côme Chilliet
7a14aa748e
Add output to check-group --update command
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:34 +02:00
Côme Chilliet
ce5a4e5b66
Always empty cache before updating a group
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:34 +02:00
Côme Chilliet
1b102ca9b3
Fix errors in UpdateGroupsService.php
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:33 +02:00
Côme Chilliet
ec13f22ae3
Add missing primary key for ldap_group_membership
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:33 +02:00
Côme Chilliet
f9ed48eab9
Add check-group command
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:33 +02:00
Côme Chilliet
2c19aac9e1
Move UpdateGroups methods to a service
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:33 +02:00
Côme Chilliet
34fa4138fb
Add group events to UpdateGroups
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:32 +02:00
Côme Chilliet
d8142b6a5a
Refactor user_ldap group membership to use flat DB
...
Move away from serialized arrays. Also use a QBMapper class for the new table.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-10 10:57:25 +02:00
Côme Chilliet
b155f87a84
Merge pull request #39058 from nextcloud/fix/fix-ldap-filters-for-empty-search
...
Avoid adding (attribute=) part to filter which will confuse LDAP servers
2023-08-08 09:21:20 +02:00
jld3103
61a13bed4d
user_ldap: Add OpenAPI spec
...
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-07-31 12:17:42 +02:00
Joas Schilling
77bc6c32d8
fix(dispatcher): Move remaining simple cases in apps/ folder to IEventDispatcher
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-25 11:19:26 +02:00
Arthur Schiwon
4054a7ddc8
fix(LDAP): add return type hint and description
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 10:46:00 +02:00
Arthur Schiwon
92a082d823
fix(ldap): avatar is not being fetched
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-05 17:13:43 +02:00
Côme Chilliet
b2f01b72fe
Merge pull request #34443 from nextcloud/feat/add-enabled-user-backend
...
Add IProvideEnabledStateBackend interface
2023-07-03 10:19:32 +02:00
Côme Chilliet
189ccc2d72
Add method to list disabled users to IProvideEnabledStateBackend
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-06-29 16:15:12 +02:00
Côme Chilliet
4a0351878c
Avoid adding (attribute=) part to filter which will confuse LDAP servers
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-06-29 10:42:59 +02:00
Arthur Schiwon
2e81a1d839
Merge pull request #38457 from nextcloud/fix/improve-ldap-offset-search-perf
...
Use default page size for jumping to desired offset
2023-06-22 21:46:03 +02:00
Côme Chilliet
b980722e89
Fix paged search when offset is not a multiple of default page size
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-06-20 16:13:59 +02:00
Côme Chilliet
1603cdc8d2
Fix since annotations and add boolean return type for setUserEnabled
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-06-20 15:10:39 +02:00
Faraz Samapoor
b0938b9083
Refactors "strpos" calls in /apps/user_ldap to improve code readability.
...
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com>
2023-06-02 15:26:55 +03:30
Côme Chilliet
add59d2309
Use DI for DeletedUsersIndex and fix tests
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-25 12:18:28 +02:00
Côme Chilliet
b186cffdbe
Use default page size for jumping to desired offset
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-25 11:31:29 +02:00
Côme Chilliet
50ccfb4f5b
[user_ldap] Add per-connection setting for marking remnants as disabled
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-23 16:03:17 +02:00
Côme Chilliet
684a81e4bd
Use the new IProvideEnabledStateBackend interface in user_ldap
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-23 11:25:22 +02:00