Commit Graph

404 Commits

Author SHA1 Message Date
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