nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
26.89k stars 4.02k forks source link

Exception: Argument 2 passed to OCA\User_LDAP\Group_LDAP::_groupMembers() must be of the type array or null, string given #27606

Closed ikogan closed 3 years ago

ikogan commented 3 years ago

How to use GitHub

Steps to reproduce

I've seen this in a couple of places but it's most obvious in the following way:

  1. Install the Deck App
  2. Setup LDAP including group membership and nested groups
  3. Share a Deck board with an LDAP group

Expected behaviour

The board should open.

Actual behaviour

The board spins forever with a 500 error in the console, and the following stack trace in the logs:

[deck] Error: Exception: Argument 2 passed to OCA\User_LDAP\Group_LDAP::_groupMembers() must be of the type array or null, string given, called in /var/www/html/apps/user_ldap/lib/Group_LDAP.php on line 283 at <<closure>>

0. /var/www/html/lib/private/AppFramework/App.php line 152
   OC\AppFramework\Http\Dispatcher->dispatch(OCA\Deck\Controller\BoardController {}, "read")
1. /var/www/html/lib/private/Route/Router.php line 308
   OC\AppFramework\App::main("OCA\\Deck\\Controller\\BoardController", "read", OC\AppFramework\ ... {}, {action: null,bo ... "})
2. /var/www/html/lib/base.php line 1008
   OC\Route\Router->match("/apps/deck/boards/5")
3. /var/www/html/index.php line 37
   OC::handleRequest()

GET /apps/deck/boards/5
from {Redacted IP} by {Redacted User} at 2020-12-01T17:29:17+00:00

This exception seems to be caused by:

[PHP] Error: Error: array_key_exists() expects parameter 2 to be array, string given at /var/www/html/apps/user_ldap/lib/Group_LDAP.php#349 at <<closure>>

 0. <<closure>>
    OC\Log\ErrorHandler::onError(2, "array_key_exist ... n", "/var/www/html/a ... p", 349, {dn: "cn={redacted} ... ]})
 1. /var/www/html/apps/user_ldap/lib/Group_LDAP.php line 349
    array_key_exists("uid={redacted-username},cn=use ... g", "u** sensitive parameter replaced ***")
 2. /var/www/html/apps/user_ldap/lib/Group_LDAP.php line 285
    OCA\User_LDAP\Group_LDAP->walkNestedGroups("cn={redacted group cn} ... g", Closure {}, [])
 3. /var/www/html/apps/user_ldap/lib/Group_LDAP.php line 896
    OCA\User_LDAP\Group_LDAP->_groupMembers("cn={redacted group cn} ... g")
 4. /var/www/html/apps/user_ldap/lib/Group_Proxy.php line 157
    OCA\User_LDAP\Group_LDAP->usersInGroup("{redacted group cn}", "", null, 0)
 5. /var/www/html/lib/private/Group/Group.php line 134
    OCA\User_LDAP\Group_Proxy->usersInGroup("{redacted group cn}")
 6. /var/www/html/custom_apps/deck/lib/Service/PermissionService.php line 259
    OC\Group\Group->getUsers()
 7. /var/www/html/custom_apps/deck/lib/Service/BoardService.php line 722
    OCA\Deck\Service\PermissionService->findUsers(5)
 8. /var/www/html/custom_apps/deck/lib/Service/BoardService.php line 192
    OCA\Deck\Service\BoardService->enrichWithUsers(OCA\Deck\Db\Board {id: 5})
 9. /var/www/html/custom_apps/deck/lib/Controller/BoardController.php line 57
    OCA\Deck\Service\BoardService->find("5")
10. /var/www/html/lib/private/AppFramework/Http/Dispatcher.php line 169
    OCA\Deck\Controller\BoardController->read("5")
11. /var/www/html/lib/private/AppFramework/Http/Dispatcher.php line 100
    OC\AppFramework\Http\Dispatcher->executeController(OCA\Deck\Controller\BoardController {}, "read")
12. /var/www/html/lib/private/AppFramework/App.php line 152
    OC\AppFramework\Http\Dispatcher->dispatch(OCA\Deck\Controller\BoardController {}, "read")
13. /var/www/html/lib/private/Route/Router.php line 308
    OC\AppFramework\App::main("OCA\\Deck\\Controller\\BoardController", "read", OC\AppFramework\ ... {}, {action: null,bo ... "})
14. /var/www/html/lib/base.php line 1008
    OC\Route\Router->match("/apps/deck/boards/5")
15. /var/www/html/index.php line 37
    OC::handleRequest()

GET /apps/deck/boards/5
from {redacted} by {redacted} at 2020-12-01T17:29:17+00:00

Note that {redacted group cn} is the same value on all lines.

Server configuration

Operating system: Linux nextcloud-5b959cb44d-hwgrc 3.10.0-1160.6.1.el7.x86_64 nextcloud/server#1 SMP Tue Nov 17 13:59:11 UTC 2020 x86_64 GNU/Linux Debian 10.6

Web server:

Server version: Apache/2.4.38 (Debian)
Server built:   2020-08-25T20:08:29
Server's Module Magic Number: 20120211:84
Server loaded:  APR 1.6.5, APR-UTIL 1.6.1
Compiled using: APR 1.6.5, APR-UTIL 1.6.1
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/etc/apache2"
 -D SUEXEC_BIN="/usr/lib/apache2/suexec"
 -D DEFAULT_PIDLOG="/var/run/apache2.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="mime.types"
 -D SERVER_CONFIG_FILE="apache2.conf"

Database: mariadb Ver 15.1 Distrib 10.5.8-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

PHP version:

PHP 7.4.12 (cli) (built: Nov 18 2020 09:34:43) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.12, Copyright (c), by Zend Technologies

Nextcloud version: (see Nextcloud admin page) 20.0.2

Updated from an older Nextcloud/ownCloud or fresh install: 19.x

Where did you install Nextcloud from: Docker, using upstream container nextcloud:20.0.2

Signing status:

Signing status ``` No errors have been found. ```

List of activated apps:

App list ``` Enabled: - accessibility: 1.6.0 - activity: 2.13.3 - apporder: 0.11.0 - audioplayer: 3.0.0 - audioplayer_editor: 0.3.0 - bookmarks: 4.0.5 - breezedark: 20.0.1 - calendar: 2.1.2 - checksum: 0.4.5 - cloud_federation_api: 1.3.0 - cms_pico: 1.0.10 - comments: 1.10.0 - contacts: 3.4.2 - contactsinteraction: 1.1.0 - cookbook: 0.7.6 - cospend: 1.2.2 - dav: 1.16.1 - deck: 1.2.2 - event_update_notification: 1.1.0 - external: 3.7.1 - extract: 1.2.5 - federatedfilesharing: 1.10.1 - files: 1.15.0 - files_downloadactivity: 1.9.0 - files_external: 1.11.1 - files_pdfviewer: 2.0.1 - files_readmemd: 1.2.0 - files_rightclick: 0.17.0 - files_sharing: 1.12.0 - files_videoplayer: 1.9.0 - firstrunwizard: 2.9.0 - groupfolders: 8.2.0 - logreader: 2.5.0 - lookup_server_connector: 1.8.0 - metadata: 0.12.0 - news: 15.0.6 - nextcloud_announcements: 1.9.0 - notifications: 2.8.0 - oauth2: 1.8.0 - passwords: 2020.11.1 - photos: 1.2.0 - polls: 1.6.2 - privacy: 1.4.0 - provisioning_api: 1.10.0 - recommendations: 0.8.0 - richdocuments: 3.7.10 - serverinfo: 1.10.0 - settings: 1.2.0 - sharebymail: 1.10.0 - sharerenamer: 2.7.3 - side_menu: 1.20.1 - socialsharing_email: 2.1.0 - spreed: 10.0.3 - systemtags: 1.10.0 - tasks: 0.13.6 - text: 3.1.0 - theming: 1.11.0 - twofactor_backupcodes: 1.9.0 - unsplash: 1.1.7 - updatenotification: 1.10.0 - user_ldap: 1.10.2 - user_saml: 3.3.1 - user_status: 1.0.1 - video_converter: 0.1.5 - viewer: 1.4.0 - weather_status: 1.0.0 - whiteboard: 0.0.3 - workflowengine: 2.2.0 Disabled: - admin_audit - dashboard - encryption - federation - files_snapshots - files_trashbin - files_versions - impersonate - maps - occweb - ocr - password_policy - quota_warning - sharingpath - support - survey_client - telephoneprovider - user_usage_report ```

Nextcloud configuration:

Config report ``` { "system": { "htaccess.RewriteBase": "\/", "memcache.local": "\\OC\\Memcache\\APCu", "memcache.distributed": "\\OC\\Memcache\\Redis", "memcache.locking": "\\OC\\Memcache\\Redis", "redis": { "host": "***REMOVED SENSITIVE VALUE***", "port": 6379 }, "apps_paths": [ { "path": "\/var\/www\/html\/apps", "url": "\/apps", "writable": false }, { "path": "\/var\/www\/html\/custom_apps", "url": "\/custom_apps", "writable": true } ], "instanceid": "***REMOVED SENSITIVE VALUE***", "passwordsalt": "***REMOVED SENSITIVE VALUE***", "secret": "***REMOVED SENSITIVE VALUE***", "trusted_domains": [ "***REMOVED SENSITIVE VALUE***", "nextcloud.nextcloud.svc.cluster.local" ], "trusted_proxies": "***REMOVED SENSITIVE VALUE***", "datadirectory": "***REMOVED SENSITIVE VALUE***", "overwrite.cli.url": "https:\/\/***REMOVED SENSITIVE VALUE***", "overwriteprotocol": "https", "dbtype": "mysql", "version": "20.0.2.2", "dbname": "***REMOVED SENSITIVE VALUE***", "dbhost": "***REMOVED SENSITIVE VALUE***", "dbport": "", "dbtableprefix": "oc_", "mysql.utf8mb4": true, "dbuser": "***REMOVED SENSITIVE VALUE***", "dbpassword": "***REMOVED SENSITIVE VALUE***", "installed": true, "mail_smtpmode": "smtp", "mail_smtpauthtype": "LOGIN", "mail_smtpsecure": "ssl", "mail_from_address": "***REMOVED SENSITIVE VALUE***", "mail_domain": "***REMOVED SENSITIVE VALUE***", "mail_smtpauth": 1, "mail_smtphost": "***REMOVED SENSITIVE VALUE***", "mail_smtpport": "587", "mail_smtpname": "***REMOVED SENSITIVE VALUE***", "mail_smtppassword": "***REMOVED SENSITIVE VALUE***", "ldapIgnoreNamingRules": false, "ldapProviderFactory": "\\OCA\\User_LDAP\\LDAPProviderFactory", "maintenance": false, "allow_user_to_change_display_name": false, "loglevel": 0, "theme": "", "part_file_in_storage": true, "app_install_overwrite": [ "files_markdown", "files_readmemd", "uploaddetails", "sharerenamer", "folderplayer", "breezedark", "telephoneprovider", "calendar", "checksum", "cookbook" ], "blacklisted_files": [ ".htaccess", ".zfs" ], "updater.release.channel": "stable" } } ```

Are you using external storage, if yes which one: local/smb/sftp/... sftp

Are you using encryption: yes/no no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/... LDAP

LDAP configuration (delete this part if not used)

LDAP config ``` +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ | Configuration | | +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ | hasMemberOfFilterSupport | 1 | | homeFolderNamingRule | | | lastJpegPhotoLookup | 0 | | ldapAgentName | uid={redacted},cn=sysaccounts,cn=etc,dc={redacted} | | ldapAgentPassword | *** | | ldapAttributesForGroupSearch | | | ldapAttributesForUserSearch | | | ldapBackupHost | | | ldapBackupPort | | | ldapBase | dc={redacted} | | ldapBaseGroups | cn=groups,cn=accounts,dc={redacted} | | ldapBaseUsers | cn=users,cn=accounts,{redacted} | | ldapCacheTTL | 600 | | ldapConfigurationActive | 1 | | ldapDefaultPPolicyDN | | | ldapDynamicGroupMemberURL | | | ldapEmailAttribute | mail | | ldapExperiencedAdmin | 0 | | ldapExpertUUIDGroupAttr | cn | | ldapExpertUUIDUserAttr | uid | | ldapExpertUsernameAttr | | | ldapExtStorageHomeAttribute | | | ldapGidNumber | gidNumber | | ldapGroupDisplayName | cn | | ldapGroupFilter | (&(|(objectclass=ipausergroup))) | | ldapGroupFilterGroups | | | ldapGroupFilterMode | 0 | | ldapGroupFilterObjectclass | ipausergroup | | ldapGroupMemberAssocAttr | member | | ldapHost | ldaps://{redacted} | | ldapIgnoreNamingRules | | | ldapLoginFilter | (&(&(|(objectclass=posixAccount))(|(memberof=cn={redacted},cn=groups,cn=accounts,dc={redacted})))(uid=%uid)) | | ldapLoginFilterAttributes | | | ldapLoginFilterEmail | 0 | | ldapLoginFilterMode | 0 | | ldapLoginFilterUsername | 1 | | ldapMatchingRuleInChainState | unknown | | ldapNestedGroups | 1 | | ldapOverrideMainServer | | | ldapPagingSize | 500 | | ldapPort | 636 | | ldapQuotaAttribute | | | ldapQuotaDefault | | | ldapTLS | 0 | | ldapUserAvatarRule | default | | ldapUserDisplayName | displayname | | ldapUserDisplayName2 | | | ldapUserFilter | (&(|(objectclass=posixAccount))(|(memberof=cn={redacted},cn=groups,cn=accounts,dc=gaea,dc=mythicnet,dc=org))) | | ldapUserFilterGroups | cloud-users | | ldapUserFilterMode | 0 | | ldapUserFilterObjectclass | posixAccount | | ldapUuidGroupAttribute | auto | | ldapUuidUserAttribute | auto | | turnOffCertCheck | 0 | | turnOnPasswordChange | 0 | | useMemberOfToDetectMembership | 1 | +-------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ ```

Client configuration

Browser: Version 87.0.4280.66 (Official Build) (64-bit)

Operating system: Linux 5.4.0-56-generic nextcloud/server#62-Ubuntu SMP Mon Nov 23 19:20:19 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux Ubunto 20.04

Logs

Web server error log

Web server error log ``` 2020-12-01 13:17:51 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:51 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)" -- | --   |   | 2020-12-01 13:17:50 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:50 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:49 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:48 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:48 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:47 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:47 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:46 | {redacted}:80 10.42.1.0 - - [01/Dec/2020:18:17:46 +0000] "GET /apps/deck/boards/5 HTTP/1.1" 500 2119 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36"   |   | 2020-12-01 13:17:46 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:46 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:45 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:45 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:44 | {redacted}:80 127.0.0.1 - - [01/Dec/2020:18:17:44 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.38 (Debian) PHP/7.4.12 (internal dummy connection)"   |   | 2020-12-01 13:17:43 | {redacted}:80 10.42.1.0 - - [01/Dec/2020:18:17:43 +0000] "GET /apps/side_menu/js/config HTTP/1.1" 200 946 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" ```

Nextcloud log (data/nextcloud.log)

Nextcloud log ``` {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter objectClass=*, base cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}, attr [\"primarygrouptoken\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Requested attribute primarygrouptoken not found for cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter objectClass=*, base cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}, attr [\"gidnumber\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter (&(&(&(|(objectclass=posixAccount))(|(memberof=cn={redacted required group},cn=groups,cn=accounts,dc={redacted})))(displayname=*))(gidNumber={redacted gid})), base cn=users,cn=accounts,dc={redacted}, attr [\"displayname\",\"dn\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter (&(&(|(objectclass=posixAccount))(|(memberof=cn={redacted required group},cn=groups,cn=accounts,dc={redacted})))(displayname=*)(memberof:1.2.840.113556.1.4.1941:=cn={redacted group cn},cn=groups,cn=accounts,dc={redacted})), base cn=users,cn=accounts,dc={redacted}, attr [\"entryuuid\",\"nsuniqueid\",\"objectguid\",\"guid\",\"ipauniqueid\",\"dn\",\"uid\",\"samaccountname\",\"memberof\",\"mail\",\"displayname\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"PHP","method":"GET","url":"/apps/deck/boards/5","message":{"Exception":"Error","Message":"ldap_search(): Search: Critical extension is unavailable at /var/www/html/apps/user_ldap/lib/LDAP.php#341","Code":0,"Trace":[{"file":"/var/www/html/apps/user_ldap/lib/LDAP.php","line":229,"function":"onError","class":"OC\\Log\\ErrorHandler","type":"::","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"function":"OCA\\User_LDAP\\{closure}","class":"OCA\\User_LDAP\\LDAP","type":"->","args":["*** sensitive parameters replaced ***"]},{"function":"ldap_search","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/LDAP.php","line":341,"function":"call_user_func_array","args":["ldap_search",["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]]},{"file":"/var/www/html/apps/user_ldap/lib/LDAP.php","line":234,"function":"invokeLDAPMethod","class":"OCA\\User_LDAP\\LDAP","type":"->","args":["*** sensitive parameters replaced ***"]},{"function":"search","class":"OCA\\User_LDAP\\LDAP","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1094,"function":"call_user_func_array","args":[[{"__class__":"OCA\\User_LDAP\\LDAP"},"*** sensitive parameter replaced ***"],["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1098,"function":"OCA\\User_LDAP\\{closure}","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1151,"function":"invokeLDAPMethod","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1323,"function":"executeSearch","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***",500,null]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":991,"function":"search","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***",null,null]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":875,"function":"searchUsers","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***",null,null]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":263,"function":"fetchListOfUsers","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":896,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_Proxy.php","line":157,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["{redacted group name}","",null,"*** sensitive parameter replaced ***"]},{"file":"/var/www/html/lib/private/Group/Group.php","line":134,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_Proxy","type":"->","args":["{redacted group name}"]},{"file":"/var/www/html/custom_apps/deck/lib/Service/PermissionService.php","line":259,"function":"getUsers","class":"OC\\Group\\Group","type":"->","args":[]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":722,"function":"findUsers","class":"OCA\\Deck\\Service\\PermissionService","type":"->","args":[5]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":192,"function":"enrichWithUsers","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":[{"id":5,"__class__":"OCA\\Deck\\Db\\Board"}]},{"file":"/var/www/html/custom_apps/deck/lib/Controller/BoardController.php","line":57,"function":"find","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":169,"function":"read","class":"OCA\\Deck\\Controller\\BoardController","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/lib/private/Log/ErrorHandler.php","Line":91,"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"LDAP error Critical extension is unavailable (12) after calling ldap_search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Attempt for Paging? 1","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter objectClass=*, base cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}, attr [\"member\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter (&(&(|(objectclass=posixAccount))(|(memberof=cn={redacted required group},cn=groups,cn=accounts,dc={redacted})))(displayname=*)(memberof:1.2.840.113556.1.4.1941:=uid={second redacted username},cn=users,cn=accounts,dc={redacted})), base cn=users,cn=accounts,dc={redacted}, attr [\"entryuuid\",\"nsuniqueid\",\"objectguid\",\"guid\",\"ipauniqueid\",\"dn\",\"uid\",\"samaccountname\",\"memberof\",\"mail\",\"displayname\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"PHP","method":"GET","url":"/apps/deck/boards/5","message":{"Exception":"Error","Message":"ldap_search(): Search: Critical extension is unavailable at /var/www/html/apps/user_ldap/lib/LDAP.php#341","Code":0,"Trace":[{"file":"/var/www/html/apps/user_ldap/lib/LDAP.php","line":229,"function":"onError","class":"OC\\Log\\ErrorHandler","type":"::","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"function":"OCA\\User_LDAP\\{closure}","class":"OCA\\User_LDAP\\LDAP","type":"->","args":["*** sensitive parameters replaced ***"]},{"function":"ldap_search","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/LDAP.php","line":341,"function":"call_user_func_array","args":["ldap_search",["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]]},{"file":"/var/www/html/apps/user_ldap/lib/LDAP.php","line":234,"function":"invokeLDAPMethod","class":"OCA\\User_LDAP\\LDAP","type":"->","args":["*** sensitive parameters replaced ***"]},{"function":"search","class":"OCA\\User_LDAP\\LDAP","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1094,"function":"call_user_func_array","args":[[{"__class__":"OCA\\User_LDAP\\LDAP"},"*** sensitive parameter replaced ***"],["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1098,"function":"OCA\\User_LDAP\\{closure}","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1151,"function":"invokeLDAPMethod","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":1323,"function":"executeSearch","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***",500,null]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":991,"function":"search","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***","*** sensitive parameter replaced ***",null,null]},{"file":"/var/www/html/apps/user_ldap/lib/Access.php","line":875,"function":"searchUsers","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***",null,null]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":263,"function":"fetchListOfUsers","class":"OCA\\User_LDAP\\Access","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":283,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":353,"function":"OCA\\User_LDAP\\{closure}","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":285,"function":"walkNestedGroups","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}",{"__class__":"Closure"},[]]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":896,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_Proxy.php","line":157,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["{redacted group name}","",null,"*** sensitive parameter replaced ***"]},{"file":"/var/www/html/lib/private/Group/Group.php","line":134,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_Proxy","type":"->","args":["{redacted group name}"]},{"file":"/var/www/html/custom_apps/deck/lib/Service/PermissionService.php","line":259,"function":"getUsers","class":"OC\\Group\\Group","type":"->","args":[]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":722,"function":"findUsers","class":"OCA\\Deck\\Service\\PermissionService","type":"->","args":[5]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":192,"function":"enrichWithUsers","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":[{"id":5,"__class__":"OCA\\Deck\\Db\\Board"}]},{"file":"/var/www/html/custom_apps/deck/lib/Controller/BoardController.php","line":57,"function":"find","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":169,"function":"read","class":"OCA\\Deck\\Controller\\BoardController","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/lib/private/Log/ErrorHandler.php","Line":91,"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"LDAP error Critical extension is unavailable (12) after calling ldap_search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Attempt for Paging? 1","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"PHP","method":"GET","url":"/apps/deck/boards/5","message":{"Exception":"Error","Message":"Illegal string offset 'uid={second redacted username},cn=users,cn=accounts,dc={redacted}' at /var/www/html/apps/user_ldap/lib/Group_LDAP.php#279","Code":0,"Trace":[{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":279,"function":"onError","class":"OC\\Log\\ErrorHandler","type":"::","args":[2,"Illegal string offset 'uid={second redacted username},cn=users,cn=accounts,dc={redacted}'","/var/www/html/apps/user_ldap/lib/Group_LDAP.php",279,{"dnGroup":"*** sensitive parameter replaced ***","seen":"*** sensitive parameter replaced ***","allMembers":[],"cacheKey":"_groupMembersuid={second redacted username},cn=users,cn=accounts,dc={redacted}","groupMembers":null,"attemptedLdapMatchingRuleInChain":true,"filter":"(&(&(|(objectclass=posixAccount))(|(memberof=cn={redacted required group},cn=groups,cn=accounts,dc={redacted})))(displayname=*)(memberof:1.2.840.113556.1.4.1941:=uid={second redacted username},cn=users,cn=accounts,dc={redacted}))","memberRecords":[],"result":[]}]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":283,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["*** sensitive parameter replaced ***","*** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":353,"function":"OCA\\User_LDAP\\{closure}","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":285,"function":"walkNestedGroups","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}",{"__class__":"Closure"},[]]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":896,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_Proxy.php","line":157,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["{redacted group name}","",null,0]},{"file":"/var/www/html/lib/private/Group/Group.php","line":134,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_Proxy","type":"->","args":["{redacted group name}"]},{"file":"/var/www/html/custom_apps/deck/lib/Service/PermissionService.php","line":259,"function":"getUsers","class":"OC\\Group\\Group","type":"->","args":[]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":722,"function":"findUsers","class":"OCA\\Deck\\Service\\PermissionService","type":"->","args":[5]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":192,"function":"enrichWithUsers","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":[{"id":5,"__class__":"OCA\\Deck\\Db\\Board"}]},{"file":"/var/www/html/custom_apps/deck/lib/Controller/BoardController.php","line":57,"function":"find","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":169,"function":"read","class":"OCA\\Deck\\Controller\\BoardController","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/lib/private/Log/ErrorHandler.php","Line":91,"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"initializing paged search for filter objectClass=*, base uid={second redacted username},cn=users,cn=accounts,dc={redacted}, attr [\"member\"], limit 500, offset 0","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Ready for a paged search","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_ldap","method":"GET","url":"/apps/deck/boards/5","message":"Requested attribute member not found for uid={second redacted username},cn=users,cn=accounts,dc={redacted}","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"PHP","method":"GET","url":"/apps/deck/boards/5","message":{"Exception":"Error","Message":"Illegal string offset 'uid={second redacted username},cn=users,cn=accounts,dc={redacted}' at /var/www/html/apps/user_ldap/lib/Group_LDAP.php#355","Code":0,"Trace":[{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":355,"function":"onError","class":"OC\\Log\\ErrorHandler","type":"::","args":[2,"Illegal string offset 'uid={second redacted username},cn=users,cn=accounts,dc={redacted}'","/var/www/html/apps/user_ldap/lib/Group_LDAP.php",355,{"dn":"cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}","fetcher":{"__class__":"Closure"},"list":[],"nesting":1,"recordMode":false,"seen":"1** sensitive parameter replaced ***","recordDN":"uid={second redacted username},cn=users,cn=accounts,dc={redacted}","record":"uid={second redacted username},cn=users,cn=accounts,dc={redacted}","fetched":[]}]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":285,"function":"walkNestedGroups","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}",{"__class__":"Closure"},[]]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":896,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_Proxy.php","line":157,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["{redacted group name}","",null,0]},{"file":"/var/www/html/lib/private/Group/Group.php","line":134,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_Proxy","type":"->","args":["{redacted group name}"]},{"file":"/var/www/html/custom_apps/deck/lib/Service/PermissionService.php","line":259,"function":"getUsers","class":"OC\\Group\\Group","type":"->","args":[]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":722,"function":"findUsers","class":"OCA\\Deck\\Service\\PermissionService","type":"->","args":[5]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":192,"function":"enrichWithUsers","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":[{"id":5,"__class__":"OCA\\Deck\\Db\\Board"}]},{"file":"/var/www/html/custom_apps/deck/lib/Controller/BoardController.php","line":57,"function":"find","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":169,"function":"read","class":"OCA\\Deck\\Controller\\BoardController","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/lib/private/Log/ErrorHandler.php","Line":91,"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"PHP","method":"GET","url":"/apps/deck/boards/5","message":{"Exception":"Error","Message":"array_keys() expects parameter 1 to be array, string given at /var/www/html/apps/user_ldap/lib/Group_LDAP.php#358","Code":0,"Trace":[{"function":"onError","class":"OC\\Log\\ErrorHandler","type":"::","args":[2,"array_keys() expects parameter 1 to be array, string given","/var/www/html/apps/user_ldap/lib/Group_LDAP.php",358,{"dn":"cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}","fetcher":{"__class__":"Closure"},"list":[],"nesting":1,"recordMode":false,"seen":"u** sensitive parameter replaced ***","recordDN":"uid={second redacted username},cn=users,cn=accounts,dc={redacted}","record":null,"fetched":[]}]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":358,"function":"array_keys","args":["u** sensitive parameter replaced ***"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":285,"function":"walkNestedGroups","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}",{"__class__":"Closure"},[]]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":896,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_Proxy.php","line":157,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["{redacted group name}","",null,0]},{"file":"/var/www/html/lib/private/Group/Group.php","line":134,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_Proxy","type":"->","args":["{redacted group name}"]},{"file":"/var/www/html/custom_apps/deck/lib/Service/PermissionService.php","line":259,"function":"getUsers","class":"OC\\Group\\Group","type":"->","args":[]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":722,"function":"findUsers","class":"OCA\\Deck\\Service\\PermissionService","type":"->","args":[5]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":192,"function":"enrichWithUsers","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":[{"id":5,"__class__":"OCA\\Deck\\Db\\Board"}]},{"file":"/var/www/html/custom_apps/deck/lib/Controller/BoardController.php","line":57,"function":"find","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":169,"function":"read","class":"OCA\\Deck\\Controller\\BoardController","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/lib/private/Log/ErrorHandler.php","Line":91,"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"Uvn7mSCh8JobOgTRqsx1","level":3,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"deck","method":"GET","url":"/apps/deck/boards/5","message":{"Exception":"Exception","Message":"Return value of OCA\\User_LDAP\\Group_LDAP::walkNestedGroups() must be of the type array, null returned","Code":0,"Trace":[{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","Line":110,"Previous":{"Exception":"TypeError","Message":"Return value of OCA\\User_LDAP\\Group_LDAP::walkNestedGroups() must be of the type array, null returned","Code":0,"Trace":[{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":285,"function":"walkNestedGroups","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}",{"__class__":"Closure"},[]]},{"file":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","line":896,"function":"_groupMembers","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["cn={redacted group cn},cn=groups,cn=accounts,dc={redacted}"]},{"file":"/var/www/html/apps/user_ldap/lib/Group_Proxy.php","line":157,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_LDAP","type":"->","args":["{redacted group name}","",null,0]},{"file":"/var/www/html/lib/private/Group/Group.php","line":134,"function":"usersInGroup","class":"OCA\\User_LDAP\\Group_Proxy","type":"->","args":["{redacted group name}"]},{"file":"/var/www/html/custom_apps/deck/lib/Service/PermissionService.php","line":259,"function":"getUsers","class":"OC\\Group\\Group","type":"->","args":[]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":722,"function":"findUsers","class":"OCA\\Deck\\Service\\PermissionService","type":"->","args":[5]},{"file":"/var/www/html/custom_apps/deck/lib/Service/BoardService.php","line":192,"function":"enrichWithUsers","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":[{"id":5,"__class__":"OCA\\Deck\\Db\\Board"}]},{"file":"/var/www/html/custom_apps/deck/lib/Controller/BoardController.php","line":57,"function":"find","class":"OCA\\Deck\\Service\\BoardService","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":169,"function":"read","class":"OCA\\Deck\\Controller\\BoardController","type":"->","args":["5"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":100,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":152,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Deck\\Controller\\BoardController"},"read"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":308,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Deck\\Controller\\BoardController","read",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"action":null,"boardId":"5","_route":"deck.board.read"}]},{"file":"/var/www/html/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/deck/boards/5"]},{"file":"/var/www/html/index.php","line":37,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/apps/user_ldap/lib/Group_LDAP.php","Line":358},"CustomMessage":"--"},"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"OSy7waacvQwbSUuYXFef","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"user_saml","method":"GET","url":"/ocs/v2.php/search/providers?from=%2Fapps%2Fdeck%2F","message":"/appinfo/app.php is deprecated, use \\OCP\\AppFramework\\Bootstrap\\IBootstrap on the application class instead.","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} {"reqId":"OSy7waacvQwbSUuYXFef","level":0,"time":"2020-12-01T18:23:17+00:00","remoteAddr":"127.0.0.1","user":"{redacted username}","app":"apporder","method":"GET","url":"/ocs/v2.php/search/providers?from=%2Fapps%2Fdeck%2F","message":"/appinfo/app.php is deprecated, use \\OCP\\AppFramework\\Bootstrap\\IBootstrap on the application class instead.","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36","version":"20.0.2.2"} ```

Browser log

Browser log ``` Failed to load resource: the server responded with a status of 500 () 7globals.js:60 jQuery is deprecated: The global jQuery is deprecated. It will be updated to v3.x in Nextcloud 21. In later versions of Nextcloud it might be removed completely. Please ship your own. ie @ globals.js:60 globals.js:60 $ is deprecated: The global jQuery is deprecated. It will be updated to v3.x in Nextcloud 21. In later versions of Nextcloud it might be removed completely. Please ship your own. ie @ globals.js:60 session-heartbeat.js:97 session heartbeat polling started Board.vue:137 Error: Request failed with status code 500 at e.exports (createError.js:16) at e.exports (settle.js:17) at XMLHttpRequest.p.onreadystatechange (xhr.js:62) (anonymous) @ Board.vue:137 main.js:63 TypeError: Cannot read property 'id' of null at a.stacksByBoard (Board.vue:112) at mn.get (vue.runtime.esm.js:4479) at mn.evaluate (vue.runtime.esm.js:4584) at a.stacksByBoard (vue.runtime.esm.js:4836) at a.isEmpty (Board.vue:118) at mn.get (vue.runtime.esm.js:4479) at mn.evaluate (vue.runtime.esm.js:4584) at a.isEmpty (vue.runtime.esm.js:4836) at a. (Board.vue?1667:1) at a.e._render (vue.runtime.esm.js:3548) ```
gonzalezjj commented 3 years ago

I believe had the same issue, although I did not need to install any additional app. User membership under [Users -> Everyone] was displayed correctly due to the LDAP server memberOf overlay, which resolves group membership recursively. When displaying the individual groups under [Users -> ], however, the list was empty and the error described above was logged. This issue stopped showing up on NC 20.0.5 when I disabled nested groups, so the problem seems to be in the algorithm that recursively resolves the members. In case it's relevant: I'm using FreeIPA as a backend (389 DS LDAP server).

juliushaertl commented 3 years ago

The upper part of the stack trace looks unrelated to deck, as we there only call to get all users of a group, so maybe this rings a bell for @blizzz

[PHP] Error: Error: array_key_exists() expects parameter 2 to be array, string given at /var/www/html/apps/user_ldap/lib/Group_LDAP.php#349 at <<closure>>

 0. <<closure>>
    OC\Log\ErrorHandler::onError(2, "array_key_exist ... n", "/var/www/html/a ... p", 349, {dn: "cn={redacted} ... ]})
 1. /var/www/html/apps/user_ldap/lib/Group_LDAP.php line 349
    array_key_exists("uid={redacted-username},cn=use ... g", "u** sensitive parameter replaced ***")
 2. /var/www/html/apps/user_ldap/lib/Group_LDAP.php line 285
    OCA\User_LDAP\Group_LDAP->walkNestedGroups("cn={redacted group cn} ... g", Closure {}, [])
 3. /var/www/html/apps/user_ldap/lib/Group_LDAP.php line 896
    OCA\User_LDAP\Group_LDAP->_groupMembers("cn={redacted group cn} ... g")
 4. /var/www/html/apps/user_ldap/lib/Group_Proxy.php line 157
    OCA\User_LDAP\Group_LDAP->usersInGroup("{redacted group cn}", "", null, 0)
 5. /var/www/html/lib/private/Group/Group.php line 134
    OCA\User_LDAP\Group_Proxy->usersInGroup("{redacted group cn}")
 6. /var/www/html/custom_apps/deck/lib/Service/PermissionService.php line 259
szaimen commented 3 years ago

Is this Issue still valid in NC21.0.4? If not, please close this issue. Thanks! :)

ghost commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity and seems to be missing some essential information. It will be closed if no further activity occurs. Thank you for your contributions.