Commit Graph

886 Commits

Author SHA1 Message Date
Joas Schilling 7db6b487f5
Move Helper to PSR-4 2016-05-25 16:04:58 +02:00
Joas Schilling 391531851c
Move interface to PSR-4 2016-05-25 16:04:58 +02:00
Joas Schilling 3690ce1b36
Move LDAP to PSR-4 2016-05-25 16:04:58 +02:00
Joas Schilling 5b3087d375
Move LDAP Utility to PSR-4 2016-05-25 16:04:57 +02:00
Joas Schilling 6feccccbd5
Move LogWrapper to PSR-4 2016-05-25 16:04:57 +02:00
Joas Schilling e73d811425
Move Proxy to PSR-4 2016-05-25 16:04:57 +02:00
Joas Schilling d16a97a273
lib/user 2016-05-25 16:04:57 +02:00
Joas Schilling d4e828f39e
Move wizard 2016-05-25 16:04:57 +02:00
Joas Schilling 3f5e76162d
Move lib\user to PSR-4 2016-05-25 16:04:56 +02:00
Joas Schilling b7fa527791
Move User_LDAP and User_Proxy to PSR-4 2016-05-25 16:04:56 +02:00
Joas Schilling cbba55a26c
Move Group_LDAP and Group_Proxy to PSR-4 2016-05-25 16:04:56 +02:00
Joas Schilling 4ac283ecd3
Move Command namespace to PSR-4 2016-05-25 16:04:56 +02:00
Joas Schilling 9d61acb27d
Move User_LDAP to PSR-4 2016-05-25 16:04:55 +02:00
Thomas Müller 6321596134 Merge pull request #24052 from owncloud/fix-ldap-cache-race-conditions
Fix LDAP race conditions
2016-04-25 14:55:20 +02:00
Arthur Schiwon 203b0e9cba
on clone Connection, do not take over the existing LDAP resource
For one, it solves potential conflicts when using the resource. For the
other, one on the login check (the only place where a clone happens
currently) we do not need to rebind after confirming the user's login
was successful.
2016-04-22 21:43:41 +02:00
Morris Jobke 62a59854f0
Fix LDAP race conditions
* getFromCache is wrapped in isCached
* inbetween the two calls the cache entry hits it's TTL
* getFromCache returns null
* this fix only checkes if the returned value is null and
  return only non-null values
2016-04-20 21:50:28 +02:00
C. Montero Luque 5911ce530b Merge pull request #23527 from owncloud/fix-21136
disable Paged Search when chunksize is set to 0, fixes #21136
2016-04-14 11:14:19 -04:00
Stefan Weil 16df1c5188 apps: Fix typos (found by codespell) (#23862)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-12 12:52:51 +02:00
Thomas Müller f6b846584b Handle case where the user is not known - fixes #23759 2016-04-04 16:56:59 +02:00
Arthur Schiwon c9587cea76 disable Paged Search when chunksize is set to 0, fixes #21136 2016-03-23 19:47:31 +01:00
Thomas Müller 8442516e10 Merge pull request #23329 from owncloud/fix-21555
Avatar must be saved after login is done and external storages set up…
2016-03-21 09:47:50 +01:00
Arthur Schiwon d8621c78ed Avatar must be saved after login is done and external storages set up properly, fixes #21555 2016-03-16 20:51:03 +01:00
Arthur Schiwon 8e0bd5630c fix writing to cache when fallback server should be used immediately 2016-03-16 14:44:18 +01:00
Arthur Schiwon fe2a506e56 remove deprecated ldap_sort 2016-03-10 13:13:38 +01:00
Arthur Schiwon 5d3183afcd improve log output when no LDAP user was found on login attempt 2016-03-05 00:18:34 +01:00
Arthur Schiwon 82b55c4db9 untangle different user manager instances, fixes #22770 2016-03-02 13:02:43 +01:00
Lukas Reschke c353d51810 Remove Scrutinizer Auto Fixer 2016-03-01 17:48:23 +01:00
Lukas Reschke 933f60e314 Update author information
Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
2016-03-01 17:25:15 +01:00
Arthur Schiwon b9b85e32be take the first result of that array, if present. Fixes 2nd display name to be 'Array', if cache is configured and enabled. 2016-02-24 21:32:03 +01:00
Arthur Schiwon 3a796d1e15 Consolidate getQuota and setQuota methods in User instance 2016-02-09 17:16:43 +01:00
Thomas Müller 69a4cd2898 Merge pull request #22102 from owncloud/ldap_2nddispname-master
[LDAP] add second field for additional/optional display name attribute
2016-02-06 13:27:01 +01:00
Alex Weirig 0d797637f3 code changes for user_ldap Dynamic Group Membership
Added new setting of “Dynamic Group Member URL”
(ldapDynamicGroupMemberURL) - see LDAP settings advanced tab.

Added public function getDynamicGroupMembers.

Updated function _groupMembers.

Updated function getUserGroups.
2016-02-03 21:50:27 +01:00
Arthur Schiwon c1871f5787 Port of test_ldap_2nddispname to master 2016-02-03 13:55:39 +01:00
Morris Jobke e4ad4c7e98 [user_ldap] properly decode cached objects
* fixes #21896
2016-01-29 07:51:16 +01:00
Thomas Müller 77069f5582 Use IUser::setEMailAddress in ldap as well 2016-01-20 15:21:33 +01:00
Thomas Müller aeb89947a2 Introduce IUser::setEMailAddress and add hook mechanism 2016-01-20 14:57:20 +01:00
Thomas Müller dd733d8925 Merge pull request #20804 from owncloud/fix-ldap-process-user-wo-displayname
LDAP: do not attempt to process user records without display name, fi…
2016-01-20 11:33:26 +01:00
Scrutinizer Auto-Fixer 83a8e75614 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2016-01-15 12:54:26 +00:00
Thomas Müller 682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Arthur Schiwon 1ed6132899 LDAP: do not attempt to process user records without display name, fixes fatal error 2016-01-11 11:21:02 +01:00
Ralph Krimmel 26d0f42dac Respect user enumeration
Respect shareapi_allow_share_dialog_user_enumeration in user_ldap filter
generation function to increase search performance in sharing dialog.
2016-01-08 15:32:31 +01:00
Thomas Müller 70b58cf367 Merge pull request #17924 from owncloud/ldap-fix-appending-port
ensure an LDAP URL is used, append the port to the host URL when necessary, and just in one place
2016-01-08 12:34:15 +01:00
Morris Jobke 553a981980 Make LDAP more robust to exceptions and log them properly 2016-01-06 13:46:55 +01:00
Arthur Schiwon e39415c946 fix find DN by UUID for AD 2015-12-14 22:42:27 +01:00
Arthur Schiwon 4020d5b77a look for DN changes before marking a user as deleted 2015-12-11 01:56:53 +01:00
Thomas Müller 000523a7fe Merge pull request #18212 from ryno83/treat_LDAP_users_not_available_by_user_filter_as_deleted
treat LDAP users not available by user filter as deleted
2015-12-07 17:47:10 +01:00
Arthur Schiwon 86fcb08745 wizard should also detect protocol errors, as side effect enforces LDAPv3 2015-12-05 00:43:38 +01:00
Arthur Schiwon a32b002cff always use an LDAP URL when connecting to LDAP 2015-12-05 00:09:15 +01:00
Morris Jobke c60c793cf2 More cleanups of OC_Config usage 2015-12-03 16:41:23 +01:00
Thomas Müller 4978a785fa Merge pull request #18294 from esakol/issue17173
Fix RHDS ldap paged search, Issue #17173
2015-11-24 16:04:23 +01:00
Mario Kolling 46a8eab772 Fix RHDS ldap paged search, Issue #17173
Change-Id: Ic804ea95401a9b49cb2b0866af722aa0d3ee58c5
2015-11-09 10:27:45 -02:00
Arthur Schiwon 133e3fe89d remove uselessly used parameter, read all user attributes also when looking up users in groups 2015-11-06 15:21:56 +01:00
Thomas Müller bf941032a3 Merge pull request #20271 from owncloud/fix-18701
LDAP: attempt to connect to backup server again, if main server is no…
2015-11-06 10:01:06 +01:00
Arthur Schiwon 8eeaf11d41 add port to host only, if an URL is used instead of a plain hostname 2015-11-04 12:34:30 +01:00
Arthur Schiwon 6b866fa917 LDAP: attempt to connect to backup server again, if main server is not available. Fixes #18701 2015-11-03 17:17:00 +01:00
blizzz 83d3c94590 Merge branch 'master' into fix-20151 2015-11-02 13:32:24 +01:00
Arthur Schiwon a2f2ffb8db if a user that is flag as deleted shows up again, remove that flag. Fixes #20090 2015-10-30 19:20:42 +01:00
Arthur Schiwon 16aa339475 add method to count users by loginname and use it for diagnose test, fixes #20151 2015-10-30 18:20:50 +01:00
Arthur Schiwon f96e552164 fix attribute casing to ensure array keys work 2015-10-27 19:10:38 +01:00
Arthur Schiwon e1d61284f8 fix update quota with known value 2015-10-27 18:07:40 +01:00
Lukas Reschke 8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Thomas Müller f50f78dd9b Merge pull request #19795 from owncloud/fix-language-level-compat
Remove arbitrary expression in empty
2015-10-15 16:42:32 +02:00
Joas Schilling 24420e9eb1 Fix doc blocks of LDAP classes 2015-10-15 08:29:35 +02:00
Lukas Reschke 4e5eb3b828 Remove arbitrary expression in empty
Those are only allowed in PHP 5.5, thus making our code incompatible with PHP 5.4

Fixes https://github.com/owncloud/core/issues/19793
2015-10-14 22:35:46 +02:00
Thomas Müller 3f083353c1 Merge pull request #19635 from owncloud/fix-ldap-value-limitation
allow an attribute to return more than one value
2015-10-13 14:09:52 +02:00
Arthur Schiwon e3a148584a adjust fetchList with a single requested attribute accordingly 2015-10-09 20:07:35 +02:00
Arthur Schiwon a876efda50 treat dn as any other attribute when building the search() return array 2015-10-08 21:18:34 +02:00
Arthur Schiwon dd2e887a8d adjust handling changed return array structure from search() and fetchList() 2015-10-08 20:32:15 +02:00
Arthur Schiwon 4a5cecd6fa allow an attribute to return more than one value 2015-10-07 18:57:49 +02:00
Thomas Müller c8021441d0 Merge pull request #19489 from owncloud/fix-18297
fix possible infinite loop when reading groups in the wizard
2015-10-07 14:55:48 +02:00
Thomas Müller 0385a62363 Merge pull request #19597 from owncloud/update-license-headers
update licence headers via script
2015-10-06 11:18:35 +02:00
Morris Jobke b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Arthur Schiwon 353a8e442f fix possible infinite loop when reading groups in the wizard 2015-10-05 19:10:30 +02:00
Arthur Schiwon fc273ac88c trim by default, add unit tests 2015-10-05 13:42:20 +02:00
Lennart Rosam 70ffa2f9f8 Spaces -> Tabs, Update PHP-Doc and function logic 2015-10-05 13:42:20 +02:00
Lennart Rosam b47d15cd20 Remove whitespace from base-DNs 2015-10-05 13:42:20 +02:00
Arthur Schiwon 6d06d1c5a4 LDAP Wizard: do not be picky about credentials when only looking for the port 2015-10-03 00:35:24 +02:00
Arthur Schiwon 0dde79b75b memberOf resembles a DN as well and is actively used 2015-09-28 18:40:01 +02:00
Arthur Schiwon 002b6bf059 do not throw exception when no attribute is specified 2015-09-23 17:27:40 +02:00
Arthur Schiwon 9d03b7c6b7 read all relevant user attributes on login and user search, in one query. saves us some. 2015-09-23 16:38:39 +02:00
Lukas Reschke 36e26c6f09 Use "json_encode" and "json_decode" instead of unserialize 2015-09-02 12:26:37 +02:00
blizzz 642ec8e3ba Merge pull request #18244 from owncloud/fix-issue-17677
Fix 17677 - Remove LDAP case sensitive checkbox
2015-08-24 13:45:15 +02:00
Thomas Müller d9172a1907 Merge pull request #14401 from owncloud/ux-s2s-ldap
allow login names to be used for s2s with LDAP users
2015-08-19 08:31:27 +02:00
Lennart Rosam b91186c503 Fix 17677 2015-08-12 22:18:28 +02:00
Renaud Fortier 3c53a0da27 if define, check the userfilter if the user is still allowed 2015-08-11 11:55:38 -04:00
blizzz 332492548f Merge pull request #17923 from owncloud/fix-17921
Remove Log info when no group filter is set, fixes #17921
2015-07-29 16:12:08 +02:00
blizzz e0d5eb8989 remove unused var 2015-07-29 12:10:33 +02:00
blizzz 81f5672393 Remove Log info when no group filter is set, fixes #17921
The log message is superfluous and too noisy. If an admin decides not to use groups, he does not need to be reminded about it on almost every request.
2015-07-28 11:41:21 +02:00
Arthur Schiwon b37d62d9d3 fix uncaught exception on not permitted file types when setting avatar, fixes #17232 2015-07-27 17:27:00 +02:00
Morris Jobke 933f087d21 Merge pull request #17526 from owncloud/fix-17516
LDAP: when checking group for matching filter, also take base DN into…
2015-07-27 08:38:45 +02:00
Arthur Schiwon 4f910221c4 fix runtime caching in ldap's user manager, fixes #17631 2015-07-17 18:57:56 +02:00
blizzz bfb90d10ed Merge pull request #17046 from nicolas-grekas/fix-16654
Do not use OC*::mb_*_replace(), they are useless
2015-07-16 11:35:25 +02:00
Nicolas Grekas 472d48f6e3 Do not use OC*::mb_*_replace(), they are useless 2015-07-16 11:00:04 +02:00
Arthur Schiwon bfdf39b9bd LDAP: when checking group for matching filter, also take base DN into consideration. Fixes #17516 2015-07-09 12:19:04 +02:00
Thomas Müller 0a23d566ba Merge pull request #17255 from owncloud/fix-17119
[LDAP] Filter user groups obtained by memberof
2015-07-01 00:33:39 +02:00
Arthur Schiwon 8625a8cf23 ensure groups match filter when using memberOf to read users group, refs #17119 2015-06-26 16:42:11 +02:00
Morris Jobke f63915d0c8 update license headers and authors 2015-06-25 14:13:49 +02:00
Thomas Müller 4747c7f509 Merge pull request #16736 from owncloud/utilize-member-of
Utilize memberOf to boost loading time on users page (depending on LDAP server config)
2015-06-10 08:47:53 +02:00
Arthur Schiwon 6f69fab384 port detection needs to take care of now thrown exceptions when LDAP server is not available 2015-06-04 16:28:48 +02:00
Arthur Schiwon 090478a95e if possible, getUserGroups should get memberships using memberOf virtual attribute 2015-06-03 17:38:27 +02:00
Arthur Schiwon 91841bb25d Implement a faster way for checking availability of memberOf. Users tab in the wizard benefits. 2015-06-03 15:23:37 +02:00
Morris Jobke cf2c599218 Merge pull request #16200 from owncloud/kill-globalfilecache
Drop file caching
2015-06-02 09:11:33 +02:00
Arthur Schiwon cdb0689334 handle unallowed auth exception on port detection 2015-05-18 18:14:05 +02:00
Arthur Schiwon 5a56393657 throw exception on LDAP error 1, which we usually do not see and is pretty generic. AD uses is for uses not enlisted in the RFC, like on issues with anonymous binds. we also try to guess this case and show a hint. 2015-05-18 18:14:05 +02:00
Arthur Schiwon b9e5309757 catch unallowed anonymous auth attempt and show specific error 2015-05-18 18:14:05 +02:00
Thomas Müller 8e61ad0872 Merge pull request #15811 from owncloud/exception-on-lost-ldap-connection
throw exception when LDAP Connection was lost
2015-05-15 17:32:07 +02:00
Arthur Schiwon 90611e6594 only use memcache, if available 2015-05-08 13:27:27 +02:00
Arthur Schiwon 57e8b76f48 drop global file cache support, fixes #15621 2015-05-07 14:52:44 +02:00
Arthur Schiwon 0e7fd82e89 cleanup 2015-05-05 14:21:12 +02:00
Arthur Schiwon b96b0063f6 throw exception when LDAP Connection was lost 2015-04-22 15:39:28 +02:00
Arthur Schiwon 66bc8145a9 allow login names to be used for s2s with LDAP users 2015-04-13 11:50:09 +02:00
Jörn Friedrich Dreyer fafecd1c05 fix cherrypicking 2015-04-10 11:08:24 +02:00
Morris Jobke 1427ea78d4 fix typo and comment 2015-04-10 09:12:37 +02:00
Morris Jobke 5626a02d69 throw exception if setup is incomplete 2015-04-10 09:12:37 +02:00
Jörn Friedrich Dreyer 077ab27281 fix_tests
Conflicts:
	apps/user_ldap/tests/user_ldap.php
2015-04-10 09:12:37 +02:00
Jörn Friedrich Dreyer 488405d1ec do not hide exception when ldap server has a hiccup 2015-04-10 09:12:37 +02:00
Arthur Schiwon 60bf934e6f change default value of ldap_tls to 0. It will be detected anyway, but starting with 0 will lead to errors and unconfigurability 2015-04-09 21:05:20 +02:00
Arthur Schiwon b4c96e6ba0 cleanup 2015-04-09 14:01:39 +02:00
Arthur Schiwon 5355c285fc LDAP Wizard Overhaul
wizard refactor

reimplement save spinners and cursor

implement Port detector

introduced detector queue, added base dn detector

disable input fields when detectors are running

introduce spinners for fields that are being updated by detector

cache jq element objects

consolidate processing of detector results in generic / abstract base class

display notification if a detector discovered a problem

don't run base dn detector if a base is configured

reset detector queue on configuration switch

implement functionality check and update of status indicator

document ConfigModel

jsdoc for controller and main view

more documentation

implement the user filter tab view

so far the multiselects get initialized (not filled yet) and the mode can be switched.

mode is also restored.

reintroduce filter switch confirmation in admin XP mode

new detector for user object classes. so we also load user object classes if necessary and are able to save and show the setting.

multiselect trigger save actions now on close only

show spinners automatically, when a detector is running

20k limit for object classes preselection test

adjust wordings, fix grammar

add group (for users tab) detector

also includes wording fixes

error presentation moved from detectors to view, where it belongs

add info label to users page

missing wording changes

show effective LDAP filter in Assisted Mode

add user filter detector

implement count button for users and limit all count actions to 1001 for performance reasons

make port field a bit bigger. not perfect though.

do not detect port automatically

implement login filter tab view

only load features in assisted mode and don't enable assisted fields while in raw mode

add tooltips on login filter checkbox options for better understanding

permanently show filter on login tab

and also compile login filter in assisted mode

test/verify button on login attributes tab, with backend changes.

only run wizard requests if your an active tab. also run compile filter requests when switching to assisted mode

underline toggle filter links to stress that they are clickable

unity user and group tab functionality in common abstract class, add group filter tab view. only detectors and template adjustments left to have group tab implementation complete

add object class and group detector for groups as well as filter composer

show ldap filter permanently on groups tab

introduce input element that can deal better with many groups, will be used with > 40

fix disabling complex group chooser while detection is running

hide complex group chooser on config switch

fix few more issues with complex chooser

make complex group chooser available on Users tab as well

detect base dn improvements/changes:

- do not look for Base DN automatically, offer a button instead
- fix for alternative way to detect a base dn (if agent dn is not given)
- do not trigger filter composers on config switch

Changes with configuration chooser controls

- "New" was removed out of the configuration list
- and split into buttons "add" and "copy"
- delete button is also now an icon

add test button for Base DN

reimplement advanced tab. The save button is gone.

reimplement expert tab

remove unused methods

implement mail attribute detector

implement user display name attribute detection

implement member group association detector

replace text input with textarea for raw filter input

finish functionality check

auto-enable good configurations, as it was before

cleanup

move save confirmation handling to base class, reduces code duplication

enable tabs only if no running save processes are left.

move onConfigLoaded to base class, avoids code duplication

simplify, save LOCs

Test Configuration button to be dealt with in main view as it is a cross-tab element

require detectorQueue in constructor

cleanup

put bootstrap into a function and thus make it testable

get rid of old stuff
2015-04-09 09:47:49 +02:00
Jenkins for ownCloud b585d87d9d Update license headers 2015-03-26 11:44:36 +01:00
Arthur Schiwon f28f7754ae support paged results against 389ds. 2015-03-12 22:47:20 +01:00
Arthur Schiwon 42d3ed47e2 set up paged search when limit is 0 2015-03-05 13:15:21 +01:00
Morris Jobke 06aef4e8b1 Revert "Updating license headers"
This reverts commit 6a1a4880f0.
2015-02-26 11:37:37 +01:00
Lukas Reschke 52495dc995 Merge pull request #13740 from owncloud/fix-12190-2
Include primary groups in user and login filter when restricting group access and also fix user counting in primary groups
2015-02-24 16:37:49 +01:00
Jenkins for ownCloud 6a1a4880f0 Updating license headers 2015-02-23 12:13:59 +01:00
Morris Jobke 1bb6de7c1b Merge pull request #13425 from owncloud/phpdoc_cleanup
Cleanup of PHPDoc return types
2015-02-10 01:14:00 +01:00
Morris Jobke 166c4e266f Reduce log level of bind failed to WARN - fixes #11624 2015-02-03 11:44:28 +01:00
Arthur Schiwon 73600cfdd8 and escape the search term 2015-01-29 00:27:05 +01:00
Arthur Schiwon 323af55b50 inlcude AD primary group in user filter, if a group is selected. fixes #12190 2015-01-28 14:12:12 +01:00
Arthur Schiwon 9cb1ef5675 this must be larger then (>), since buggy behaviour occurs when the parameter is a small number 2015-01-20 17:50:53 +01:00
Robin McCorkell 2b99fc76ec Cleanup of PHPDoc return types 2015-01-16 20:30:43 +00:00
Arthur Schiwon f28235a7ef fix retrieval of user groups 2015-01-12 16:25:11 +01:00
Lukas Reschke a5099b01f9 Merge pull request #12984 from owncloud/ldap-user-cleanup-master
Ldap user cleanup master
2015-01-09 10:47:02 +01:00
Arthur Schiwon c1a79d24c5 fix order of initalizing instance properties, and paremeter order in a method call 2015-01-08 17:45:07 +01:00
Arthur Schiwon c7f273040e fix table name for getList 2015-01-08 14:21:40 +01:00
Arthur Schiwon 9668405ec7 doc fixes and removal of unnecessary use statements 2015-01-07 13:28:56 +01:00
Arthur Schiwon b9235e2a24 inject DB Connection to user manager 2015-01-07 00:52:18 +01:00
Arthur Schiwon 40ecd30fba inject oc config to User_LDAP 2015-01-06 23:28:49 +01:00
Arthur Schiwon e724b78694 smaller fixes: coding style, PHPdoc, typos and few for DI 2015-01-06 17:50:06 +01:00
Lyonel Vincent f94b300602 Be less verbose when using a paged search
Lower the priority from INFO to DEBUG
2014-12-24 16:35:36 +01:00
Lyonel Vincent 5a00b33a90 Be less verbose when disabling SSL cert validation
change log level from WARN to DEBUG
2014-12-24 16:32:27 +01:00
Arthur Schiwon 61ed363f82 planned refactorings for OC 8 2014-12-20 18:28:29 +01:00
Arthur Schiwon 3ca70d647a move from \OC\Preferences to \OCP\IConfig 2014-12-20 16:33:37 +01:00
Arthur Schiwon 144d95de7d basic adjustments for OC 8. I.e. no visible issues, LDAP tests pass. 2014-12-20 16:09:04 +01:00
Arthur Schiwon 4fa39250e7 LDAP User Cleanup: Port from stable7 without further adjustements
LDAP User Cleanup

background job for user clean up

adjust user backend for clean up

register background job

remove dead code

dependency injection

make Helper non-static for proper testing

check whether it is OK to run clean up job. Do not forget to pass arguments.

use correct method to get the config from server

methods can be private, proper indirect testing is given

no automatic user deletion

make limit readable for test purposes

make method less complex

add first tests

let preferences accept limit and offset for getUsersForValue

DI via constructor does not work for background jobs

after detecting, now we have retrieving deleted users and their details

we need this method to be public for now

finalize export method, add missing getter

clean up namespaces and get rid of unnecessary files

helper is not static anymore

cleanup according to scrutinizer

add cli tool to show deleted users

uses are necessary after recent namespace change

also remove user from mappings table on deletion

add occ command to delete users

fix use statement

improve output

big fixes / improvements

PHP doc

return true in userExists early for cleaning up deleted users

bump version

control state and interval with one config.php setting, now ldapUserCleanupInterval. 0 will disable it. enabled by default.

improve doc

rename cli method to be consistent with  others

introduce ldapUserCleanupInterval in sample config

don't show last login as unix epoche start when no  login happend

less log output

consistent namespace for OfflineUser

rename GarbageCollector to DeletedUsersIndex and move it to user subdir

fix unit tests

add tests for deleteUser

more test adjustements

Conflicts:
	apps/user_ldap/ajax/clearMappings.php
	apps/user_ldap/appinfo/app.php
	apps/user_ldap/lib/access.php
	apps/user_ldap/lib/helper.php
	apps/user_ldap/tests/helper.php
	core/register_command.php
	lib/private/preferences.php
	lib/private/user.php

add ldap:check-user to check user existance on the fly

Conflicts:
	apps/user_ldap/lib/helper.php

forgotten file

PHPdoc fixes, no code change

and don't forget to adjust tests
2014-12-19 19:47:54 +01:00
Arthur Schiwon ec0f80fee9 Split mapping from Access and Helper classes into it's own. Fully test them, too.
remove unused methods

split mapping methods off from Access class

fix DB query handling

move 'clear mapping' methods from static helper to new mapping class

add tests

test directly with DB

finishing tests and fix return value from setDNbyUUID

add corresponding class for groups and make abstract test class neutral. helper tests is now obsolete as the tested functions were moved to the new mapper class.

add missing info to PHPDoc

add unmap method

fix namespaces

fix test inheritance

PHPDoc and a small code restructure for scrutinizer, no effective changes

PostgreSQL does not accept LIMIT in DELETE queries

phpdoc fixes, no code changes
2014-12-19 18:26:12 +01:00
Morris Jobke d41082f4d6 first step to drop \OCP\Config:: in favour of IConfig 2014-12-17 11:12:37 +01:00
Arthur Schiwon 0577bb569a add doc 2014-12-08 17:22:52 +01:00
Arthur Schiwon 45443ee28c preserve an asterisk at the start when escaping a search term 2014-12-08 17:19:57 +01:00
Arthur Schiwon ee168a121d Forward port of #12493
add ldap-search command to occ

Conflicts:
	apps/user_ldap/appinfo/register_command.php

LDAP search filter creation changes:

1. do not prepend * wildcard to search terms. Will result in faster search, but
you don't find "foobar"  when looking for "bar"
2. advanced behaviour when search string contains a space and multiple search
attributes are present. The search string is split into single words. The
resulting filter requires that each word at least appears once in any search
attribute. This is supposed to return better results in big LDAPs.

trim search string before passing it on
2014-12-04 19:02:09 +01:00
Arthur Schiwon c07c338c90 fix counting when ldapPagingSize is 0 2014-11-21 14:51:20 +01:00
Arthur Schiwon 6b6147dafd phpdoc and mixed up letters 2014-11-20 18:31:40 +01:00
Arthur Schiwon 4a3fe42b16 a corrected email attribute needs to be saved, not only returned 2014-11-20 18:31:39 +01:00
Arthur Schiwon f9b4f5f4e5 to reassure that selected attributes still work, do not count all matching entries but limit it to 1 in order to make it faster 2014-11-20 18:31:39 +01:00
Arthur Schiwon 71944a59a5 detectors (email, displayname..) are now started in one place, triggered from only 2 places. more reliable structure and flow, saves requests 2014-11-20 18:31:39 +01:00
Arthur Schiwon f725cc66a3 consolidate user count filter in wizard and user back end 2014-11-20 18:31:39 +01:00
Arthur Schiwon cb3af1dce2 detect user display name attribute and return user count depending on its presence 2014-11-20 18:31:39 +01:00
Morris Jobke 081787d6ae Fix infinite loop if count and limit is 0
* otherwise it will always think it hits the limit and need another round to fetch additional results
2014-11-11 12:15:30 +01:00
blizzz b26f11c16f Merge pull request #11362 from mark0n/rm_ldap_conf_cli
Add a CLI command that deletes an LDAP config
2014-11-04 13:19:45 +01:00
blizzz dc9ea893fd Merge pull request #11172 from owncloud/user-ldap-no-bcmath
Fix ldap convertSID2Str() / Remove BCMath dependency
2014-11-03 14:03:26 +01:00
Andreas Fischer d1410b46a9 user_ldap: Reimplement convertSID2Str() without BCMath dependency.
Also explicitly format sub-id integers as unsigned, which is required for
32-bit systems.
2014-11-03 12:07:53 +01:00
Lukas Reschke d060180140 Use function outside of loop
Otherwise the function is executed n times which is a lot of overhead
2014-10-24 12:27:53 +02:00
Arthur Schiwon 4e8c7570d4 make performance less bad. Still far from good, but at least it works 2014-10-17 20:16:04 +02:00
blizzz 8553e04a78 Merge pull request #11478 from owncloud/fix-11448
LDAP: add setting to wizard that disables auto-detection and enables raw mode
2014-10-16 15:35:30 +02:00
Arthur Schiwon ab3535855f more beautiful white spaces 2014-10-08 15:04:29 +02:00
Arthur Schiwon 67292a5345 add checkbox for experienced users to server tab 2014-10-07 16:43:58 +02:00
Arthur Schiwon 6c502e11f8 make scrutinizer happy, very minor changes 2014-10-01 11:55:53 +02:00
Arthur Schiwon f9e085b020 init a new paged search on read operations to satisfy OpenLDAP 2014-09-30 17:00:25 +02:00
Arthur Schiwon 2b9696efae abandond paged search only if PHP supports them 2014-09-30 13:13:52 +02:00
Arthur Schiwon 53ec32807a abandon ongoing paged search before starting a new one 2014-09-30 12:42:37 +02:00
Arthur Schiwon 9a63693227 properly cancel a Paginated Results operation in order to avoid protocol errors, fixes #10526 2014-09-30 12:42:37 +02:00
Martin Konrad fd9b79b218 Add a CLI command that deletes an LDAP config
With this change LDAP configurations can be managed completely from
the command line.
2014-09-30 03:23:00 +02:00
Arthur Schiwon 6041ae6224 dn needs to be fetched to be able to detect memberOf support 2014-09-26 15:36:49 +02:00
Lukas Reschke 45b17207cc Merge pull request #10745 from owncloud/fix-10708-doctrine
Use Doctrine Platform to generate SQL query for table truncation.
2014-09-16 23:56:20 +02:00
Thomas Müller 7e2bff8545 adding unit test to truncate the table 2014-09-16 16:17:25 +02:00
Arthur Schiwon 3c9668f605 if only one attribute is requested, the returned array has 0 as key instead of attribute name. fixes #10888 2014-09-05 14:05:37 +02:00
Robin Appelman d0266c0bf8 Use public api for getting l10n 2014-08-31 10:08:22 +02:00
Andreas Fischer 7458e21f2c Use Doctrine Platform to generate SQL query for table truncation. 2014-08-29 20:53:51 +02:00
Arthur Schiwon 371cab367d trigger email detection by Wizard upon any user filter filter change. before it happenend only upon user automatic list filter creation, but not on manual editing 2014-08-29 11:14:36 +02:00
Arthur Schiwon 34761dabb1 write log message, if original value was changed 2014-08-29 11:14:36 +02:00
Arthur Schiwon f47a4a8c15 add unit test for mail detection 2014-08-29 11:14:35 +02:00
Arthur Schiwon 441c600c90 remove Access as hard dependency, inject it instead 2014-08-29 11:14:16 +02:00
Arthur Schiwon baa49cd58a Wizad: email attribute detection 2014-08-29 11:14:16 +02:00
Arthur Schiwon dbd51d15e1 Port of #8623
set result entry identifier earlier, i.e. before a continue for the same level can happen. otherwise  will always get the same value and we end up in an infinite loop

add unit test to make sure the infinite loop never comes back

Conflicts:
	apps/user_ldap/tests/wizard.php
2014-08-28 11:52:33 +02:00
blizzz 8f7676c762 Merge pull request #10340 from owncloud/fix-9887
better check whether string resembles a DN, fixes #9887
2014-08-18 19:24:41 +02:00
blizzz c46b60e822 Merge pull request #9848 from dupondje/master
Fix memberOf detection. Fixes: #9835
2014-08-11 16:58:30 +02:00
Arthur Schiwon fc6793f2ae better check whether string resembles a DN, fixes #9887 2014-08-11 16:40:41 +02:00
Jean-Louis Dupond e46fc7a18a Fix initializing in #9848 2014-08-11 13:50:13 +02:00
Jean-Louis Dupond fc662917e7 Fix remarks in #9848 2014-08-11 09:15:56 +02:00
Arthur Schiwon 2676e681e9 ldap_ prefix will be added in invokeLDAPMethod(), having it would lead to a unexisting function, fixes #9829 2014-08-07 17:15:36 +02:00
Jean-Louis Dupond 71f3326035 Fix memberOf detection. Fixes: #9835 2014-07-24 14:18:41 +02:00
blizzz 1d520108c5 Merge pull request #9576 from owncloud/bcmath-check
LDAP Active Directory Primary Groups support depends on bcmath module
2014-07-18 19:15:36 +02:00
Arthur Schiwon 537468f4c4 make tests deal with missing bcmath 2014-07-11 14:08:19 +02:00
Arthur Schiwon ebee3543ce warn and continue gracefully if bcmath is not installed 2014-07-10 21:26:31 +02:00
Philippe Jung 79a108c116 [Issue #9559] identifiers uid=xxx must be considered as user DN and not as owncloud users 2014-07-10 14:27:31 +02:00
Arthur Schiwon da490bdbbe support for AD primary groups
support for primary groups

actually the problem is only known on AD, it is only needed to take care of their attributes

adjust to ADs special behaviour

this change was not intended

cache the SID value so it is not requested over and over again

theres only one, use singular

we are access

add tests for new Access methods

add tests for new Group methods

address scrutinizer findings, mostly doc

call ldap_explode_dn from ldap wrapper, enables tests without php5-ldap

PHP Doc

yo dawg, i heard you like backslashes … php doc fix

PHPDoc updated and typos fixed while reviewing
2014-07-08 21:32:21 +02:00
Arthur Schiwon ef7ab856f6 fix instantiation of Access class 2014-06-27 18:49:11 +02:00
Arthur Schiwon 89f2691515 adjust access constructor to master 2014-06-25 11:46:21 +02:00
Arthur Schiwon 452efa5fab Port of LDAP Wizard: get correct total no of users, groups and complete list of groups on big setups #9002
fix PHPdoc

Conflicts:
	apps/user_ldap/lib/connection.php

add method to count groups on LDAP

Conflicts:
	apps/user_ldap/lib/access.php

LDAP Wizard: count users and groups with the power of paged search

Conflicts:
	apps/user_ldap/lib/wizard.php

consolidate requirement check

fix PHPdoc

Conflicts:
	apps/user_ldap/lib/access.php

Wizard: get really all groups from LDAP by power of Paged Search

Conflicts:
	apps/user_ldap/lib/wizard.php

make all this work in an early configuration state in the wizard by marking  the config active and ignoring the validation state.

Conflicts:
	apps/user_ldap/lib/connection.php

simplify two methods a bit, because they are not used for group search anymore

Conflicts:
	apps/user_ldap/lib/wizard.php

remove unused vars; increase scrutinizer happiness
2014-06-25 11:45:55 +02:00
Arthur Schiwon 93edacb357 Backport subset of #4179, re-established Oracle compatibility for LDAP
Conflicts:
	apps/user_ldap/lib/access.php
2014-06-20 20:49:34 +02:00
Arthur Schiwon 928945ec7e fix typo in var name 2014-06-05 16:16:08 +02:00
Thomas Müller 9e31118675 Merge pull request #8842 from owncloud/ldap_cli_methods
command line tools to see, modify and test existing LDAP configurations
2014-06-04 09:37:04 +02:00
Arthur Schiwon e962999896 get rid of @read in PHP doc after rebase 2014-06-03 13:01:14 +02:00
Arthur Schiwon f9a9085faf class descriptions 2014-06-03 12:59:10 +02:00
Arthur Schiwon 5336e9a156 newlines 2014-06-03 12:59:10 +02:00
Arthur Schiwon 342e1fd3bf port of PR #8038 2014-06-03 12:59:10 +02:00
Arthur Schiwon 11f7823e1b precaution: lowercase string for comparison 2014-06-03 12:59:10 +02:00
Arthur Schiwon 6d64d7ec3f LDAP: put out fetching of user meta data into a fully tested class of its own and update them (mail, quota, etc.) directly after mapping. Fixes #7785 properly on master 2014-06-03 12:59:09 +02:00
Arthur Schiwon 4bfb162558 command line tools to see, modify and test existing LDAP configurations 2014-06-03 12:35:18 +02:00
Morris Jobke dc36d30953 Remove all occurences of @brief and @returns from PHPDoc
* test case added to avoid adding them later
2014-05-19 17:50:53 +02:00
Robin McCorkell e7aebc5c32 Fix whitespace issues 2014-05-16 22:23:36 +01:00
Robin McCorkell a17f9111a0 PHPDoc fixes for user_ldap 2014-05-16 22:21:57 +01:00
Robin McCorkell c4f1de63a8 Fix PHPDoc in /apps 2014-05-16 22:21:57 +01:00
Thomas Müller 408189b7e4 Merge pull request #8556 from owncloud/kill-legacy-code-master
Kill legacy code master
2014-05-12 20:55:24 +02:00
Lukas Reschke cd7fc5cb80 Use array as type 2014-05-12 19:31:21 +02:00
Thomas Müller 33987eea83 remove legacy aka deprecated code: OC_Cache 2014-05-12 16:23:33 +02:00
Lukas Reschke 2ae1be762c That's bool and not always true 2014-05-11 16:29:59 +02:00
Lukas Reschke 57640742af Use WizardResult|false instead of mixed 2014-05-11 16:28:50 +02:00
Lukas Reschke 416f8b186d Use @return instead of @returns 2014-05-11 16:27:18 +02:00
Lukas Reschke fc8be5abc3 Use proper PHPDoc and variable names in the LDAP lib
My IDE was so sad about this that it marked the whole file in red and yellow and forced me to fix this.
2014-05-11 15:17:27 +02:00
blizzz 645ecb7644 Merge pull request #6297 from leo-b/fix_ldap_errors
only check ldap_errno if an ldap_* function actually fails
2014-04-23 16:26:43 +02:00
Arthur Schiwon c1c2f2c49e add additional comments, PHPdoc and check whether it's really applicable 2014-04-22 18:36:43 +02:00
Arthur Schiwon 1c71d5c444 LDAP: cache display names immediately on retrieval, saves tens of unecessary queries to LDAP server in the share dialog for example 2014-04-22 18:36:37 +02:00
blizzz 36c8dec10a Merge pull request #8220 from owncloud/type-hinting-ldap
Fix PHPdoc in user_ldap
2014-04-17 18:15:40 +02:00
Bart Visscher 81751cb616 Add missing param hint 2014-04-16 17:54:10 +02:00
blizzz f6551d214f Merge pull request #7815 from owncloud/ldap_fix_usercount_master
correct LDAP user count on setup with many users (occ user:report)
2014-04-16 10:36:19 +02:00
Bart Visscher bad41c05b8 Fix PHPdoc in user_ldap
using scrutinizer patch
2014-04-15 21:05:49 +02:00
blizzz 9feebeaf40 Merge pull request #7837 from owncloud/fix_7530
LDAP: fix determining objectclasses takes long
2014-04-09 12:27:17 +02:00
Arthur Schiwon dbebf6bb5e add comment to clearify when a skip in the foreach happens 2014-04-09 12:25:48 +02:00
Arthur Schiwon ee3368d2ad replace hardcoded limit of 400 with user controlled ldapPagingSize value 2014-04-09 11:38:51 +02:00
Arthur Schiwon 2e5adadad7 Put inner loop into own method, let's see whether it makes scrutinizer happier 2014-04-09 11:31:56 +02:00
Arthur Schiwon bdc418d1f9 var count is assigned in the inner loop so it must be checked inside there to be properly used as part of the exit condition of the outer loop 2014-04-09 11:31:56 +02:00
Arthur Schiwon 43402c56dd initialize variable 2014-04-09 11:31:56 +02:00
Arthur Schiwon 40f9875f11 LDAP: fix user report i.e. count for LDAP servers with really many users 2014-04-09 11:31:56 +02:00
Arthur Schiwon 8bb27551bd LDAP: make sure cache key for paged result cookie matches when limit or offset is null or 0 2014-04-09 11:31:56 +02:00
blizzz 3c9f588449 Merge pull request #6221 from leo-b/ldap_get_all_groups
fix updateGroups background job for ldap servers with > 1000 groups
2014-04-07 13:00:32 +02:00
Alexander Bergolth 0d9d70b51c change default ldap paging size to 500 2014-03-28 14:02:19 +01:00
Arthur Schiwon 86d479cb28 Use array_key_exists instead of isset, because the latter returns false if the assigned value is null 2014-03-21 15:29:49 +01:00
Arthur Schiwon 055a09e487 On clone create a new instance of the Configuration
To avide effects on the original instance of Connection when the clone
is modified, for instance on authentication checks.
2014-03-21 15:27:51 +01:00
Arthur Schiwon 4230983e69 define var 2014-03-21 10:10:49 +01:00
Arthur Schiwon a085d7715f fix potential infinite loop when the DN of the first entry was already read. 2014-03-20 22:59:41 +01:00
Arthur Schiwon 561d699ca6 Use the LDAP wrapper for checking resources, needs for proper testing 2014-03-20 22:58:57 +01:00
Arthur Schiwon bd881348e8 Fix wildcard handling and check even less DNs per filter, enough will be looked at anyway 2014-03-20 22:57:50 +01:00
Robin McCorkell 7c3da27bf6 Fix duplicate ipauniqueid 2014-03-20 20:38:06 +00:00
Arthur Schiwon 057c2638e4 LDAP Wizard: when determining objectclasses, we realy do not need to look at every entry. Fixes #7530 2014-03-20 13:58:08 +01:00
Robin McCorkell ca595611f5 Add FreeIPA UUID compatibility, fixes #7796
Ability to use ipauniqueid for the UUID of a user
2014-03-19 20:30:24 +00:00
Alexander Bergolth f850fcfac5 "reset" ldap pagedSearch control by setting it to a high value 2014-03-06 12:23:20 +01:00
root 6585bd5a50 "reset" ldap pagedSearch control by setting it to a high value
call nextEntry via invokeLDAPMethod
2014-03-06 12:07:03 +01:00
root 8fcc29ee8b only check ldap_errno if an ldap_* function actually fails
fix wizard errors
reset search paging right after the search, not before some of the possible next search operations
cookie contains binary characters, don't log it
  (avoids json_encode(): Invalid UTF-8 sequence in argument errors)
2014-03-06 12:07:03 +01:00
root eb59e63c3b revert updateGroups job to use getGroups() instead of getAllGroups() 2014-03-04 19:47:49 +01:00
root 15ef3145f8 Merge branch 'ldap_paging_chunksize' into ldap_get_all_groups 2014-03-04 17:24:46 +01:00
root a5813acb64 add ldap_paging_size config option 2014-03-04 17:23:04 +01:00
root bacda81bf7 use getAllGroup() in the updateGroups background job
needed in active directory deployments with > 1000 groups
2014-03-04 14:17:22 +01:00
Vincent Petry fd5dec0298 Fixed configkey casing for PostgreSQL 2014-03-03 16:15:23 +01:00
VicDeo ec9fe3f57f Merge pull request #6299 from leo-b/ldap_nested_groups
Add LDAP nested groups
2014-02-25 15:41:10 +02:00
blizzz 984ea7b3ff Merge pull request #7205 from owncloud/fix_7153
LDAP: prevent other configuration from being deleted when deleting the f...
2014-02-20 16:22:43 +01:00
Arthur Schiwon c0328b4f0f LDAP: improve compilation of filters 2014-02-19 13:13:01 +01:00
Scrutinizer Auto-Fixer adaee6a5a1 Scrutinizer Auto-Fixes
This patch was automatically generated as part of the following inspection:
https://scrutinizer-ci.com/g/owncloud/core/inspections/cdfecc4e-a37e-4233-8025-f0d7252a8720

Enabled analysis tools:
 - PHP Analyzer
 - JSHint
 - PHP Copy/Paste Detector
 - PHP PDepend
2014-02-19 09:31:54 +01:00
Thomas Müller 9fac95c2ab Merge branch 'master' into scrutinizer_documentation_patches
Conflicts:
	lib/private/appconfig.php
2014-02-14 23:03:27 +01:00
Arthur Schiwon d88c6778ff LDAP: prevent other configuration from being deleted when deleting the first one which has an empty prefix for historical reasons 2014-02-14 15:34:22 +01:00
Arthur Schiwon e156f85bfb Rephrase and clarify log message 2014-02-10 11:29:08 +01:00
Arthur Schiwon e825a008c9 Wizard: disable LDAP referrals, fixes #6670 2014-02-10 11:28:55 +01:00
Arthur Schiwon a908bd5695 throw an info message, when base dn test failed 2014-02-10 11:28:46 +01:00
Arthur Schiwon bc17b40650 LDAP: extend LDAP wrapper search method for sizelimit, improves performance in wizard 2014-02-10 11:28:38 +01:00
Joas Schilling b330d07b51 Fix more documentation failes
Issue #7111
2014-02-08 11:47:55 +01:00
Jörn Friedrich Dreyer 2a6a9a8cef polish documentation based on scrutinizer patches 2014-02-06 17:02:21 +01:00
Robin Appelman 02aa44d055 Merge branch 'master' into memcache-public 2014-01-22 13:19:49 +01:00
Jörn Friedrich Dreyer 21832bc890 user workarount to compare CLOB column with CHAR value 2014-01-21 11:56:34 +01:00
Robin Appelman 729210daa0 Merge branch 'master' into memcache-public
Conflicts:
	apps/user_ldap/lib/connection.php
2014-01-15 13:02:15 +01:00
Arthur Schiwon 25fecb4f25 typo, grammar 2014-01-14 16:33:18 +01:00
Arthur Schiwon 097b6b8be9 LDAP: only read config from database, if configID is given. Not what we want to do when on-the-fly-testing settings from the admin page 2014-01-14 16:33:09 +01:00
Arthur Schiwon bb6bad6b3c remove unused variables 2014-01-14 16:33:02 +01:00
Arthur Schiwon e4b7c6ef10 LDAP: fix TLS detection 2014-01-14 16:32:55 +01:00
Robin Appelman 5d456c7cc2 Merge branch 'master' into memcache-public 2014-01-09 13:54:58 +01:00
Robin Appelman d50c7391d8 Use $server->getMemCacheFactory() in ldap connection 2014-01-09 13:54:50 +01:00
Arthur Schiwon b669e1a3c1 LDAP: implement userCount action. This required to (finally) clean up and refactor the search method, which will have a positive performance impact on paged search. 2014-01-08 12:07:57 +01:00
Arthur Schiwon 1292793c4b LDAP: fix method behind save button on advancend and expert tabs, fixes at least Home Folder setinng 2013-12-13 16:29:42 +01:00
root e1d80b3356 Merge remote branch 'upstream/master' into ldap_nested_groups 2013-12-10 18:57:04 +01:00
blizzz b5939324b0 Merge pull request #6218 from leo-b/fix_ldap_setOption_returncode
correctly propagate the return value of ldap_set_option
2013-12-06 08:54:29 -08:00
root 48e426b589 add support for nested groups 2013-12-06 16:46:52 +01:00
root 54e47b4180 correctly propagate the return value of ldap_set_option
otherwise LDAP_OPT_REFERRALS won't be set to 0 and in turn
active directory paging will stop working
(Operations error on ldap_control_paged_result_response)
2013-12-06 12:04:17 +01:00
Arthur Schiwon 01af3bdb05 LDAP Wizard: return correct var 2013-12-04 18:58:52 +01:00
Arthur Schiwon a10d1977b5 LDAP: set default value for login filter to empty, otherwise the wizard signals completed configuration too early when it might be not correct, i.e. login won't work 2013-12-04 18:57:54 +01:00
Arthur Schiwon 9808dee149 LDAP Wizard: don't send ldap_tls change back to the interface as the element was removed, for it is detected fully automatically. Resolves an JS error and thus an ever-spinning spinner 2013-12-04 18:57:32 +01:00
blizzz 34704eded6 Merge pull request #5955 from owncloud/fix5863
LDAP Wizard: Add raw login filter to corresponding tab for consistency, fix behaviour on raw filter input
2013-11-27 00:30:15 -08:00
Arthur Schiwon 03375d6c52 LDAP: username2dn should only return DNs that belong to the current LDAP server. Might be not perfect. Easy perfect solution would increase communication with LDAP server. Let's see if it is good enough 2013-11-25 22:08:11 +01:00
Arthur Schiwon 3955388f20 LDAP: proxy: configurable return to determine when to try the next LDAP server and when to return (multi server setup) 2013-11-25 22:05:00 +01:00
Arthur Schiwon 54f0deff2a LDAP: get user photo from LDAP and set it as avatar if available 2013-11-22 13:25:20 +01:00
Arthur Schiwon dd5e1092c7 LDAP Wizard: add objectclass for group detection in Zimbra 2013-11-21 11:20:31 +01:00
Arthur Schiwon ff9ecc8a51 LDAP Wizard: proper behaviour for raw filter input. remember the editing mode and compose filter only when desired. 2013-11-19 23:58:08 +01:00
Thomas Müller 1e863cd959 Merge pull request #5700 from owncloud/ldapWizSetDisplayNames
LDAP Wizard: do not forget to set display name attributes for user and g...
2013-11-15 01:12:54 -08:00
Arthur Schiwon da61c6ef72 LDAP Wizard: determine port without credentials. don't hide the port input field 2013-11-11 15:16:54 +01:00
Arthur Schiwon ea9f392f4e LDAP Wizard: improve check for Agent DN and Credentials 2013-11-11 13:36:28 +01:00
Arthur Schiwon 95a5ff63b8 LDAP: resolve namespace harakiri, fixes background job 2013-11-06 16:25:31 +01:00
Arthur Schiwon fc040755c1 LDAP Wizard: do not forget to set display name attributes for user and group, makes Test Connection succeed 2013-11-05 13:19:32 +01:00
VicDeo 4e9a23dffe Excpetion->Exception 2013-11-01 12:19:44 +03:00
Thomas Müller ffb0e14d7b replacing ownCloud by theme-able name or avoid it's usage 2013-10-29 23:29:16 +01:00
Arthur Schiwon 81dbe7dab7 Port PR #5457 to master 2013-10-25 14:15:05 +02:00
Donald Buczek 3fc232370e make sure the shared ldap connection is rebound to the configured user after being used for password checking. 2013-10-25 11:12:18 +02:00
Arthur Schiwon c48157e3b8 LDAP: don't validate unconfigured (new) LDAP server configs, fixes #5518 2013-10-24 20:26:05 +02:00
Arthur Schiwon 20f46602bd LDAP: when multiline values are passed as array, do not try to preg_split them. Fixes #5521 2013-10-24 14:27:33 +02:00
Arthur Schiwon 6284e95e2b typo, fixes #5517 2013-10-24 14:16:58 +02:00
Arthur Schiwon 30c0f5dee6 LDAP Wizard: proper strings and translations for user and group count text 2013-10-23 12:20:13 +02:00
Arthur Schiwon d78a80a689 merge master with resolved conflicts 2013-10-23 12:01:45 +02:00
Arthur Schiwon e61d961efb LDAP: Fix base-comparison with multibyte characters, fixes #5081. Thanks to @sfyang 2013-10-19 00:51:37 +02:00
Arthur Schiwon 17010e8f58 Don't set Base User and Base Group when Base DN was detected, would case problems but does not provide any benefit. also make sure that empty string is saved instead of false for multiline values 2013-10-17 20:58:43 +02:00
Arthur Schiwon 6acd01d9f2 resolve merge conflicts from rebase 2013-10-17 19:40:59 +02:00
Arthur Schiwon f64ae75107 LDAP Wizard: fix couple more or less nasty bugs aka polishing 2013-10-17 19:13:28 +02:00
Arthur Schiwon 109ddde944 Wizard: autodetection of group-member-assoc attribute 2013-10-17 19:13:28 +02:00
Arthur Schiwon 5606b60f36 LDAP: set displayname as default attribute for user display name 2013-10-17 19:13:28 +02:00
Arthur Schiwon b2ccb712e2 Ldap Wizard: Group Filter configuration 2013-10-17 19:13:28 +02:00
Arthur Schiwon 7c6a9c2256 Ldap Wizard: Login filter UI, detection of username attribute, composing of login filter 2013-10-17 19:13:28 +02:00
Arthur Schiwon e903db7887 LDAP Wizard: create user list filter, show number of user that will have access to OC 2013-10-17 19:13:28 +02:00
Arthur Schiwon 5c99645f7d Cleanup code, sort results 2013-10-17 19:13:27 +02:00
Arthur Schiwon 162bfb231a Ldap Wizard: find out whether server supports memberOf in LDAP Filter and disable group chooser if not 2013-10-17 19:13:27 +02:00
Arthur Schiwon e87b091536 cleanup and coding style 2013-10-17 19:13:27 +02:00
Arthur Schiwon 87bd5a2bbb cleanup, doc and todo 2013-10-17 19:13:27 +02:00
Arthur Schiwon 3cafcc2d47 LDAP Wizard: add detection, load and save of LDAP groups for filter purposes 2013-10-17 19:13:27 +02:00
Arthur Schiwon 5425511259 Remove debug output 2013-10-17 19:13:27 +02:00
Arthur Schiwon 3b1822cf91 LDAP Wizard: add detection, load and save of LDAP objectClasses for filter purposes 2013-10-17 19:13:27 +02:00
Arthur Schiwon 8290929aa6 LDAP Wizard: autodetect base DN 2013-10-17 19:13:14 +02:00
Arthur Schiwon 7c60384f20 ignore autodetect-attribute on public save method 2013-10-17 19:13:14 +02:00
Arthur Schiwon 3fe400a3ca Simplify WizardResult 2013-10-17 19:13:14 +02:00
Arthur Schiwon 53db1fe5ac First stage of new Wizard, neither feature complete nor ready 2013-10-17 19:13:14 +02:00
Arthur Schiwon 652caa1c88 LDAP: move Configuration out of Connection into class of its own. The new wizard requires it. 2013-10-17 19:13:14 +02:00
Arthur Schiwon 02f292d0fd Doc fix 2013-10-17 19:01:08 +02:00
Arthur Schiwon 0c837cefb6 LDAP: allow different UUID attributes for groups and users 2013-10-04 11:47:40 +02:00
Arthur Schiwon a1aff3e8a1 LDAP: don't throw exceptions in the wrapper, errors are handled in the code. nevertheless, log unexpected errors 2013-09-27 13:34:16 +02:00
Arthur Schiwon 81cf4a22ef LDAP: coding style 2013-09-27 13:34:15 +02:00
Arthur Schiwon bb162b1f94 LDAP: get rid of some PHP Warnings 2013-09-27 13:34:15 +02:00
Arthur Schiwon d4f92494a2 LDAP: make Access be a dependency to the user and group backend instead of inheriting it. 2013-09-27 13:34:15 +02:00
Arthur Schiwon f04aa1af5d LDAP: don't check var type when you can specify the type in the parameter list 2013-09-27 13:34:15 +02:00
Arthur Schiwon b9cd22cf78 LDAP: use wrapper, not direct function call 2013-09-27 13:34:15 +02:00
Arthur Schiwon 5090ca3eb4 LDAP: add phpdoc 2013-09-27 13:34:15 +02:00
Arthur Schiwon 6e850e0bee LDAP: establish wrapper interface to allow proper mocking 2013-09-27 13:34:15 +02:00
Arthur Schiwon 52454e39b7 LDAP: move is_resource check to ldap wrapper to make it mockable 2013-09-27 13:34:15 +02:00
Arthur Schiwon d34fbf3a86 LDAP: move PHP LDAP functions calls to an LDAP Wrapper for better isolation and mock testing 2013-09-27 13:34:15 +02:00
Arthur Schiwon 1a020e0696 Resolve merge conflict 2013-09-27 13:34:15 +02:00
Arthur Schiwon 321c514782 LDAP: case insensitive replace for more robustness 2013-08-27 22:23:48 +02:00
Arthur Schiwon c482512e23 LDAP: fix wrong hook name 2013-08-22 00:00:33 +02:00
Kondou c7af26ec84 Merge pull request #4497 from owncloud/newlines_at_eof_kondou
Add newlines at the end of files
2013-08-18 07:16:15 -07:00
Bart Visscher dda5eb2530 Merge pull request #4486 from owncloud/ldap_adjust_cache
LDAP: use memcache if available
2013-08-18 02:50:41 -07:00
kondou 9e8a6b704d Add _many_ newlines at the end of files 2013-08-18 11:06:59 +02:00
Jan-Christoph Borchardt ce9103d522 Merge pull request #4426 from owncloud/ldap_settings_design
Ldap settings design
2013-08-18 01:52:51 -07:00
Arthur Schiwon f41c4312ff LDAP: use memcache if available 2013-08-17 17:22:54 +02:00
Arthur Schiwon c538ac3081 LDAP: only connect to LDAP once on login 2013-08-17 12:16:51 +02:00
Arthur Schiwon 479f893f6d LDAP: Show Host name in configuration drop down 2013-08-15 15:55:06 +02:00
Arthur Schiwon f6d133955e LDAP: fix background job, resolves #3528 2013-07-19 18:41:29 +02:00
Arthur Schiwon 5387e5c354 LDAP: even better check for emptiness, fixes #3815 2013-07-10 11:39:47 +02:00
Jörn Friedrich Dreyer 88fc410c19 fix numRows usage in user_ldap 2013-06-24 16:29:58 +02:00
Arthur Schiwon 4976f2e0d3 LDAP: append port when URL is passed in LDAP Host configuration, fixes #2600 2013-06-04 10:32:54 +02:00
Robin Appelman 251527c6e6 merge master into backgroundjob 2013-06-02 20:12:44 +02:00
blizzz 1656cc2e7c Merge pull request #3565 from owncloud/fix_ldap_sqlite_n_js
Fix ldap sqlite n js
2013-05-31 12:17:46 -07:00
blizzz eafb241068 Merge pull request #3562 from owncloud/fix_ldap_offline_host_handling
Fix ldap offline host handling
2013-05-31 11:10:33 -07:00
Arthur Schiwon 2ff9677cd1 LDAP: sqlite compatibility for emptyiing tables 2013-05-31 20:07:13 +02:00
Arthur Schiwon bd7771867b LDAP: fix generation of alternate internal name on conflicts. Use also smaller number for better user experience on e.g. *DAV links 2013-05-30 16:55:21 +02:00
Arthur Schiwon 86d72b9a61 LDAP: fix possible recursion 2013-05-25 11:03:58 +02:00
Arthur Schiwon bfa715768a LDAP: fix handling when LDAP Host is offline 2013-05-25 11:02:51 +02:00
Arthur Schiwon beaa10b823 Merge branch 'master' into ldap_configurable_username_n_uuid 2013-05-13 12:41:22 +02:00
Arthur Schiwon 796ee8c4c0 LDAP: Implement clear mappings functionality 2013-05-08 17:47:07 +02:00
Arthur Schiwon 3f1717d3d5 LDAP: implement UUID and internal username override 2013-05-08 14:56:52 +02:00
Arthur Schiwon c9b3da5bbc LDAP: better variable name 2013-05-08 14:55:56 +02:00
Arthur Schiwon bc23010670 LDAP: implement r+w for new settings 2013-05-08 14:05:08 +02:00
Bart Visscher 175633d380 Merge pull request #3050 from owncloud/===_and_!==_in_user_ldap-app
Use === and !== in user_ldap app
2013-05-07 12:45:43 -07:00
Arthur Schiwon d659d8e193 LDAP: do not reset UUID attribute setting when guid is detected 2013-05-06 10:17:52 +02:00
Arthur Schiwon 1e2b872160 LDAP: cachekey in set method needs to match with that one from get 2013-05-03 15:13:37 +02:00
Arthur Schiwon 22a8e7ad55 LDAP: remove restriction from group names to be in line with core behaviour again 2013-05-03 14:11:06 +02:00
Robin Appelman 7948341a86 Rework background job system 2013-04-20 23:27:46 +02:00
kondou d6b13ccd12 Use !== and === in user_ldap app – Part 2 2013-04-20 22:46:37 +02:00
Arthur Schiwon 0f4e02b6fc LDAP: avoid irritating log output 2013-03-19 14:40:30 +01:00
Arthur Schiwon 504f5f229f LDAP: remove unnecessary func call, was a leftover from earlier refactor 2013-03-19 14:40:05 +01:00
Arthur Schiwon f38932fb80 LDAP: specify appid when selecting from appconfig 2013-03-19 14:39:56 +01:00
Arthur Schiwon 1e07801c95 LDAP: compatibility with Novell eDirectory UUID 2013-03-11 13:30:06 +01:00
Arthur Schiwon 055fadd10d LDAP: escape some more chars for proper search filter, fixes #1673 2013-03-05 14:33:20 +01:00
Arthur Schiwon b08894ba77 LDAP: error codes can be negative, too 2013-03-05 13:47:03 +01:00
Brice Maron dbb9b68331 Fix quoting of query for user_ldap ref #1983 2013-03-02 16:26:15 +01:00
Arthur Schiwon 64551ee06f LDAP: sort users on server-side 2013-02-26 22:27:09 +01:00
Frank Karlitschek f50be25704 Merge pull request #1864 from owncloud/fix_display_default
LDAP: simplify default for user home settings, fixes wrong display of de...
2013-02-25 08:23:32 -08:00
Arthur Schiwon e4e915fa3b LDAP: simplify default for user home settings, fixes wrong display of default value in settings 2013-02-22 21:26:07 +01:00
Bart Visscher bb75dfc021 Whitespace fixes 2013-02-22 19:05:36 +01:00
Bernhard Posselt 90939c8f12 Merge pull request #1708 from owncloud/style-cleanup-user_ldap
Style cleanup user_ldap
2013-02-17 07:02:45 -08:00
Arthur Schiwon a28df74ee5 LDAP: check array with isset first to avoid warnings about undefined index 2013-02-16 02:33:19 +01:00
Bart Visscher 92a36ca8b8 Join short comment lines 2013-02-15 15:45:34 +01:00
Bart Visscher 1ef2ecd6e8 Style cleanup user_ldap 2013-02-14 22:16:48 +01:00
Bart Visscher cd35d257bb Fix NoSpaceAfterComma and SpaceBeforeComma 2013-02-14 08:36:26 +01:00
Bart Visscher 5c4a804ddb Fix SpaceBeforeOpenBrace errors 2013-02-14 08:36:26 +01:00
Arthur Schiwon 1e45453da2 LDAP: format dn before using it, not other way round. fixes #1605 2013-02-13 14:49:18 +01:00
blizzz b6ee118841 Merge pull request #1604 from owncloud/fix_ldap_internalname_generation
Improve generation of interal user names resp. group display names
2013-02-12 03:37:40 -08:00
Arthur Schiwon afc9fe419a adjust copyright 2013-02-10 21:53:27 +01:00
Arthur Schiwon dbb4be903c LDAP: change generation of internal names. Use UUID for users. Change to sequential numbers for groups as they are still used as display names 2013-02-10 21:52:57 +01:00
Frank Karlitschek 764409117a Merge pull request #1493 from owncloud/fix_ldap_stored_homedir
Fix ldap stored homedir
2013-02-11 02:20:03 -08:00
Arthur Schiwon 15e383fd01 Typo 2013-02-07 16:05:45 +01:00
Arthur Schiwon 781d247b39 LDAP: better detect timeouts. do not try to reconnect. do not try to bind when connection failed. makes ownCloud more responsive, esp. with multiple server connections configured 2013-02-06 14:32:00 +01:00
Arthur Schiwon e122fdbcb6 LDAP: when ldaps and tls are configured, disable the latter one - they do not work together. ldaps already creates a secure connection. 2013-02-06 14:30:17 +01:00
Arthur Schiwon af2acadc66 LDAP: fix settings handling of homeFolderNamingRule option 2013-02-06 13:04:35 +01:00
Arthur Schiwon afacaf8bc2 string fragment was added by accident and does not belong here 2013-01-31 18:00:07 +01:00
Thomas Mueller 19714151e2 spell check 2013-01-31 17:53:01 +01:00
Thomas Mueller 5862f3d140 spell check 2013-01-31 17:51:59 +01:00
Arthur Schiwon 1a854454d6 LDAP: avoid attempts to save null as configvalue 2013-01-31 02:00:29 +01:00
Arthur Schiwon b5ed8b2751 LDAP: fix wrong index 2013-01-31 01:46:54 +01:00
Arthur Schiwon b3b0544e17 LDAP: make it possible to define attributes that should be considered on searches 2013-01-31 01:46:34 +01:00
Arthur Schiwon e8db1e884e LDAP: some inline documentation 2013-01-30 03:44:11 +01:00
Arthur Schiwon 19867b1d08 LDAP: make sure app meta data is not deleted from database when deleting configuration with empty prefix 2013-01-30 02:39:44 +01:00
Arthur Schiwon 2749a14171 LDAP: make it possible to enable/disable server configurations 2013-01-24 22:39:05 +01:00
Arthur Schiwon 5b9e181198 LDAP: implement deleteConfiguration feature 2013-01-24 14:11:53 +01:00
Arthur Schiwon 3bf38c7a84 LDAP: add missing new LDAP Helper 2013-01-24 13:01:43 +01:00
Arthur Schiwon 319dcd45e1 LDAP: Clear cache on saving settings 2013-01-24 12:44:30 +01:00
Arthur Schiwon b979bf6f1c LDAP: fix default 2013-01-23 23:46:55 +01:00
Arthur Schiwon 83d9e1e2f0 make sure that Configuration is read when getConfiguration is called. And give back the appropriate result. 2013-01-23 23:40:21 +01:00
Arthur Schiwon 10876aba89 fix more config keys for save settings handling 2013-01-20 18:30:14 +01:00
Arthur Schiwon 0c3466325b fix continue in switch, add another key to skip 2013-01-20 18:27:39 +01:00
Arthur Schiwon 6d84aa93d3 Ajaxifiy Settings Save 2013-01-20 18:02:44 +01:00
Arthur Schiwon 229a25f41a fix mixed key and value 2013-01-18 13:53:26 +01:00
Arthur Schiwon 229d484200 LDAP: gather defaults in one place, simplify readConfiguration 2013-01-18 13:35:40 +01:00
Arthur Schiwon d8be83029b make sure port is used as backup port if not specified. documentation. determine connection error earlier. 2013-01-17 13:56:37 +01:00
Arthur Schiwon 59a6068246 fix undeclared variable 2013-01-17 13:46:32 +01:00
Arthur Schiwon 3d56cf3a5b LDAP: add support for backup/replica servers 2013-01-17 13:31:14 +01:00
Arthur Schiwon 4699f36e44 LDAP: fix read configuration, remove unnecessary debug output 2013-01-16 14:58:49 +01:00
Arthur Schiwon ad1113c2cb LDAP: fix parameter passed not as expected 2013-01-16 14:56:57 +01:00
Arthur Schiwon 09c54722a8 add LDAP User and Group proxies to suppoer multiple servers 2013-01-11 18:13:22 +01:00
Arthur Schiwon fab5817f67 documentation for the Connection constructor 2013-01-10 23:34:24 +01:00
Arthur Schiwon 0784bcb8d7 introduce configPrefix to allow settings for multiple LDAP servers 2013-01-10 23:30:26 +01:00
Arthur Schiwon 4a8c25eef5 dechex not necessary, do not waste time with it 2013-01-08 19:25:19 +01:00
Arthur Schiwon 19fa78d1ee Code style 2013-01-08 19:00:49 +01:00
Arthur Schiwon ec1caa7d35 support LDAP search using multiple base DNs also with paged results, implements #395 2013-01-04 23:57:55 +01:00
Arthur Schiwon 81489ad860 support multiple base DNs 2013-01-03 21:38:53 +01:00
Arthur Schiwon 3b82be5e64 Base DNs will be used as array, now, to support usage of multiple DNs 2013-01-03 21:18:21 +01:00
Bart Visscher df7d6cb26c More style fixes 2012-12-15 00:43:46 +01:00
Bart Visscher 68562dafb4 More whitespace fixes 2012-12-15 00:43:46 +01:00
Bart Visscher f39454ed12 Fix "Line indented incorrectly" 2012-12-15 00:43:46 +01:00
Bart Visscher 8256650da8 Fix "No space found after comma in function call" 2012-12-15 00:43:46 +01:00
blizzz 680ff3a51b Merge pull request #584 from wardragon/ldap_access_userExists_fix
Really fix OCP\Share::shareItem with LDAP users
2012-12-12 16:59:43 -08:00
Lorenzo M. Catucci de34f771c2 Exclude LDAP backend from global user searches
triggered by itself.
2012-12-07 17:19:30 +01:00
Arthur Schiwon 4cb760a924 LDAP: ldap_explode_dn escaped too much, fix it by manual replacement. Fixes different problems, esp. with non-ascii characters in the dn (#631) 2012-12-03 12:55:42 +01:00
Arthur Schiwon 495a8da354 port 95cee0e from stable45 2012-11-21 19:29:56 +01:00
Arthur Schiwon aebd4fd32d port dd694b5 from stable45 2012-11-21 19:28:29 +01:00
Arthur Schiwon 24e13419a3 LDAP: escape values in the DN, fixes #419 2012-11-21 19:25:10 +01:00
Arthur Schiwon d79e9a2da7 LDAP: cherrypick objectGUID handling from stable45, was part of PR 344 2012-11-12 17:00:23 +01:00
Arthur Schiwon 6339e71bdc LDAP: fix typo in config value handling. 2012-11-06 20:16:37 +01:00
blizzz 64ac208fb2 Merge pull request #258 from wardragon/ldap_existence_check_no_refactor
LDAP: improved object existence check
2012-11-06 07:24:15 -08:00
Lorenzo M. Catucci ca24f4767b Return an empty array on succesful existence check 2012-11-05 17:35:09 +01:00
Lorenzo M. Catucci 510191db68 Return true or false from readAttribute if $attr is empty
This way, readAttribute can act as an existence checker.
2012-11-05 15:38:49 +01:00
Felix Moeller 30d7993e01 Checkstyle fixes: NoSpaceAfterComma 2012-11-04 11:10:46 +01:00
Felix Moeller afadf93d31 Checkstyle: many fixes 2012-11-02 19:53:02 +01:00
Arthur Schiwon 3f85432df9 LDAP: make filter in readAttribute configurable 2012-10-27 19:43:07 +02:00
Arthur Schiwon 5b3c9518dc LDAP: improve slicing 2012-10-27 17:46:01 +02:00
Arthur Schiwon 33aa630af3 LDAP: add error handling for failed searches 2012-10-27 17:46:01 +02:00
Arthur Schiwon b942c1253e remove TODO comment, it's done 2012-10-27 17:46:01 +02:00
Arthur Schiwon 605281da9b LDAP: let result processing in Access::search slice the array for not-paginated search. getUsers e.g. does not need to take care of it anymore. adjustments in group_ldap to follow. 2012-10-27 12:19:08 +02:00
Arthur Schiwon ee6fc22d4b LDAP: sourced out paged search init into initPagedSearch method, making search slicker again 2012-10-27 12:19:08 +02:00