Commit Graph

863 Commits

Author SHA1 Message Date
Arthur Schiwon 46ae746379 do not try to search after the last page
- saves an LDAP requests in these cases
- prevents a Protocol Error logged on < 7.3 API (for backports)

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-04-27 17:41:58 +00:00
Arthur Schiwon d78b213310
adds ldap user:reset command
- allows to delete data of existing LDAP users, which otherwise is safe
  guarded
- ensures that the user is not being deleted on LDAP through a plugin

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-03-25 13:36:16 +01:00
blizzz 6ee39e204f
Merge pull request #25844 from nextcloud/backport/25757/stable20
[stable20] fix detecting cyclic group memberships
2021-03-03 10:43:21 +01:00
Arthur Schiwon 4b9037e849 do not die after LDAP auth failed with expired acc
- some servers return error code 53

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-03-02 20:40:06 +00:00
Arthur Schiwon ce6d64b122 fix detecting cyclic group memberships
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-03-01 11:13:14 +00:00
Arthur Schiwon 02ae52bb5b
really use known groups
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-02-17 13:51:08 +01:00
Arthur Schiwon 71a762b3a7 fix parameter provided as string not array
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-28 19:40:13 +00:00
Robin Appelman b38149edaa extend ILDAPProvider to allow reading arbitrairy ldap attributes for users
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-22 13:33:32 +00:00
Arthur Schiwon 9d8b597605 silence log message
- this appears too often (in some configurations) when qualifying group
members which do not meet the criteria

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-21 21:09:57 +00:00
Arthur Schiwon 5dd7665f21
silence psalm false positive
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-14 13:04:02 +01:00
Arthur Schiwon b0ea654653
respect DB limits limit per statement and query
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-14 13:03:36 +01:00
Arthur Schiwon cca1fb792b check number of members after potential resolving of rdns
- the type check is not necessary anymore for the return type of
  _groupMembers()

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 21:37:54 +00:00
Arthur Schiwon 213464afca use faster and less hungry foreach
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 21:37:51 +00:00
Tobias Perschon 250c7535cd moved the array_reduce to fix large search case
also added some additional comments and renamed some vars to make it intuitive whats in them

Signed-off-by: Tobias Perschon <tobias@perschon.at>
2020-12-15 21:37:49 +00:00
Arthur Schiwon d818975d84 flatten result array as expected by following code
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 21:37:47 +00:00
Arthur Schiwon 59f9183ea1
fix potentially passing null to events where IUser is expected
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-11-04 11:59:09 +01:00
Morris Jobke 0207d34d57 Document the backend registered events of LDAP
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-29 13:08:13 +00:00
Arthur Schiwon 37301a5378
fixes determining whether former user is a share owner
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-10-26 14:00:57 +01:00
Arthur Schiwon 71c34876a6
split instantiation from business logic in OfflineUser
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-10-26 13:54:03 +01:00
Arthur Schiwon 7fad750a2d tame psalm. why does it ignore '@property'?
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-10-19 13:37:23 +00:00
Arthur Schiwon fbfac673c9 when nesting is not enabled, the group filter can be applied right away
- helps performance, but skipping unnecessary entries
- reduces reoccuring info-level log output against groups that do not
  qualify ("no or empty name")

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-10-19 13:37:22 +00:00
Arthur Schiwon b95e63b8da
announce added user and group backend later as there might be interdeps
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-09-11 00:14:06 +02:00
Arthur Schiwon 263f5bd1d9
switch to typed event for LDAPs user added to group case
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-09-10 12:57:10 +02:00
Christoph Wurst 1f7f93a695
Update license headers for Nextcloud 20 (again)
There are still lots of outdated headers, so time for another round of
updates.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-09-07 14:37:44 +02:00
Arthur Schiwon aa2d754d5c
add repair step to clean up DB off lastFeatureRefresh entries in user prefs
- also removes related app setting "updateAttributesInterval"

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-09-04 12:59:57 +02:00
Arthur Schiwon 699871dcb0
these code bits were part of old logic that was already refactored out
- only references were in unit tests

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-09-04 12:56:43 +02:00
Christoph Wurst 2a054e6c04
Update the license headers for Nextcloud 20
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-08-24 14:54:25 +02:00
Morris Jobke fedf9c69d9
Use matching parameter names form interfaces and implementations
Found by Psalm 3.14.1

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-19 18:16:35 +02:00
Arthur Schiwon 44cad1756c
provide event class to LDAP loaded event to fix deprecation message
* and also dispatch the typed event as current approach to it

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-08-12 15:38:47 +02:00
Arthur Schiwon 5257efc5f2
remove logging message carrying no valuable information
the exception caught is not an error, but due to valid configuration and
code flow is expecting this. For an admin it is confusing, and it carries
no information worth for debugging.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-08-12 09:10:23 +02:00
Arthur Schiwon 7eb6d8df0a
do not flip available state to unavailable, allow empty results
- the detection relies that the first, requested result is not empty
- it might be empty though – groups without members
- protect switching from available to unavailable
  - switching the other way around was also not envisaged either

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-08-11 19:03:27 +02:00
Arthur Schiwon 7ea262dba0
LDAP: shortcut in reading nested group members when IN_CHAIN is available
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-08-11 18:22:11 +02:00
Morris Jobke 548576ec10
Merge pull request #22176 from nextcloud/debt/noid/table-render-too-many-arguments
Remove unexpected argument
2020-08-11 09:44:28 +02:00
Daniel Kesselberg 7b68f0f326
Remove unexpected argument
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-08-10 22:36:30 +02:00
Arthur Schiwon 7c07f0c7f3
use break not continue in switch to avoid warning
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-08-10 17:34:11 +02:00
blizzz 579c7073f3
Merge pull request #16737 from tofuSCHNITZEL/feature-zimbraldap
new Group-Member association attribute (zimbraMailForwardingAddress)
2020-08-07 22:20:50 +00:00
Tobias Perschon 551d904bb0
added "zimbraMailForwardingAddress" as a Group-Member association attribute to enable the use of Zimbra Distribution Lists as groups in nextcloud when connecting to a zimbra LDAP
Signed-off-by: Tobias Perschon <tobias@perschon.at>

fix cs:check

Signed-off-by: Tobias Perschon <tobias@perschon.at>

Update apps/user_ldap/lib/Group_LDAP.php

Co-authored-by: blizzz <blizzz@arthur-schiwon.de>
Signed-off-by: Tobias Perschon <tobias@perschon.at>
2020-08-07 23:30:44 +02:00
Morris Jobke 54726d5934
Merge pull request #21738 from nextcloud/techdebt/14552/migrate-OC_Group-post_removeFromGroup
Migrate OC_Group post_removeFromGroup hook to actual event object
2020-08-07 17:46:00 +02:00
Morris Jobke 36ee37ec0a
Migrate OC_Group post_removeFromGroup hook to actual event object
Ref #14552

This adds a BeforeUserRemovedEvent to the LDAP backend because it was missing. It's not really before, but we don't have the before state.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-30 10:21:08 +02:00
Arthur Schiwon d3501be851
reset the cookie internally in new API when abandoning paged results op
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-07-29 17:48:56 +02:00
Morris Jobke 7870ca0663
Use the proper IAppContainer and IServerContainer type hints to know which code runs with which container
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-21 20:44:05 +02:00
Christoph Wurst 91e7f12088
Adjust apps' code to use the ContainerInterface
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-07-21 20:43:18 +02:00
Christoph Wurst 35e966c38d
Migrate LDAP to the PSR container
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-07-16 15:57:17 +02:00
Morris Jobke f42e557fa1
Use IBootstrap for the app user_ldap
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-14 04:47:54 +02:00
Morris Jobke 3203286f52
Do not use custom DI object names for user_ldap
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-13 17:22:19 +02:00
Morris Jobke 7ad0381e5c
Merge pull request #21639 from nextcloud/techdebt/noid/move-away-from-database-xml
Move away from database xml
2020-07-06 22:42:39 +02:00
Joas Schilling 556e23e681
Move user_ldap to migrations
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-07-06 16:42:14 +02:00
Morris Jobke d72d9ff1f4
Merge pull request #21171 from nextcloud/enh/noid/tidy-up-group-ldap
tidy up Group_LDAP
2020-07-06 14:00:27 +02:00
Joas Schilling d7c0b9cced
Also always return in app commands
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-26 15:12:11 +02:00
Arthur Schiwon b8bef4ded0
fix strings being passed where arrays where expected
also brought type hints up to internal API level

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-06-24 23:34:37 +02:00