Steps to reproduce
- Create a file
- Share a file with user "test" with no edit permissions
- Rename the file from "test" user
Expected behaviour
There should be an error while renaming the file saying that it is not permitted
Actual behaviour
The file is renamed but only "test" user can see the new name plus on "test" user hand the file is still linked to the original, but with a different name. "test" user can upload / create a new file with the same name of the original copy of the renamed file.
This causes great incompatibility between shared files.
PS: This only happens inside the user's root folder, using a path like "/testFolder/file.txt" the rename operation will not be permitted.
Server configuration
Operating system: Debian Jessie
Web server: Apache
Database: MySQL
PHP version: 5.6
ownCloud version: 9.0.10
Updated from an older ownCloud or fresh install: Fresh Install
Where did you install ownCloud from: apt-get install owncloud
Signing status (ownCloud 9.0 and above):
Integrity checker has been disabled. Integrity cannot be verified.
The content of config/config.php:
<?php
$CONFIG = array (
'instanceid' => 'ocqj61oqaehe',
'passwordsalt' => '0xqgzQQTZYpO4B8OKmZAYDlm8CIzXK',
'secret' => 'hHWwwfz7bF2e+Uux3pCwxyC2S5A/8jYr/GgT6OZ9Pr3cRrV7',
'trusted_domains' =>
array (
0 => 'example.it',
),
'datadirectory' => '/var/owncloud',
'version' => '9.0.10.2',
'version.hide' => true,
'dbtype' => 'mysql',
'dbhost' => '--',
'dbname' => '--',
'dbuser' => '--',
'dbpassword' => '--',
'dbtableprefix' => 'oc_',
'installed' => true,
'memcache.local' => '\\OC\\Memcache\\Redis',
'filelocking.enabled' => 'true',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'localhost',
'port' => 6379,
'timeout' => 0,
'dbindex' => 0,
),
'mail_from_address' => '--',
'mail_smtpmode' => 'smtp',
'mail_domain' => 'example.it',
'mail_smtpauthtype' => 'LOGIN',
'mail_smtpauth' => 1,
'mail_smtphost' => '--',
'mail_smtpport' => '25',
'mail_smtpname' => '--',
'mail_smtppassword' => '--',
'knowledgebaseenabled' => false,
'ldapIgnoreNamingRules' => false,
'theme' => 'theme-omaspa',
'default_language' => 'it',
'skeletondirectory' => '/var/owncloud/0-default-files',
'overwritehost' => 'example.it:443',
'overwritewebroot' => '/',
'overwriteprotocol' => 'https',
'htaccess.RewriteBase' => '/',
'trashbin_retention_obligation' => 'auto',
'versions_retention_obligation' => 'D7, auto',
'appcodechecker' => true,
'updatechecker' => true,
'updater.server.url' => 'https://updates.owncloud.com/server/',
'log_type' => 'owncloud',
'logfile' => '/var/log/owncloud.log',
'loglevel' => 4,
'syslog_tag' => 'ownCloud',
'logtimezone' => 'UTC',
'log_query' => false,
'cron_log' => true,
'log_rotate_size' => 1048576,
'customclient_desktop' => '#',
'customclient_android' => '#',
'customclient_ios' => '#',
'appstoreenabled' => true,
'appstoreurl' => 'https://api.owncloud.com/v1',
'appstore.experimental.enabled' => true,
'enable_previews' => true,
'preview_max_x' => NULL,
'preview_max_y' => NULL,
'preview_max_scale_factor' => 10,
'preview_max_filesize_image' => -1,
'maintenance' => false,
'singleuser' => false,
'proxy' => '',
'proxyuserpwd' => '',
);
List of activated apps:
- activity: 2.2.1
- calendar: 1.4.1
- comments: 0.2
- configreport: 0.1.1
- contacts: 1.5.1
- dav: 0.1.6
- external: 1.2
- federatedfilesharing: 0.1.0
- files: 1.4.4
- files_external: 0.5.2
- files_pdfviewer: 0.8.1
- files_sharing: 0.9.1
- files_texteditor: 2.1
- files_trashbin: 0.8.0
- files_versions: 1.2.0
- files_videoplayer: 0.9.8
- gallery: 14.5.0
- notifications: 0.2.3
- onlyoffice: 1.0.5
- ownnote: true
- provisioning_api: 0.4.1
- systemtags: 0.2
- templateeditor: 0.1
- updatenotification: 0.1.0
- user_external: 0.4
- user_ldap: 0.8.0
Are you using external storage, if yes which one: no
Are you using encryption: no
Are you using an external user-backend, if yes which one: no
LDAP configuration (delete this part if not used)
LDAP is configured with personal information that i cannot share here
With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your ownCloud installation folder
Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';
Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.
Client configuration
Browser: Chrome, Firefox, Explorer
Operating system: Windows 10
ownCloud log (data/owncloud.log)
{"reqId":"Igb6lL4k0GeRg\/U5JNQi","remoteAddr":"180.80.10.42","app":"PHP","message":"Trying to get property of non-object at \/var\/www\/owncloud\/lib\/private\/log\/owncloud.php#154","level":3,"time":"2017-06-26T08:11:58+00:00","method":"GET","url":"\/index.phpadmin\/log\/entries?offset=0&count=3","user":"951C129D-A6A8-48ED-9979-EAA7EC1BFD16"}
{"reqId":"8\/MnQn6WJGuWoPxlg5Et","remoteAddr":"180.80.10.42","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('daniele.vit')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T08:20:45+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"Doj+PYHpWu1ANAI8orbz","remoteAddr":"180.80.10.42","app":"onlyoffice","message":"Convertion: 7696 File not found","level":3,"time":"2017-06-26T08:42:28+00:00","method":"GET","url":"\/index.phpoffice\/ajax\/config\/7696","user":"1C4CEE12-DE8B-4FEB-B784-A3A1B207DC3B"}
{"reqId":"fQirGWB6kh99QpsoQ28Z","remoteAddr":"180.80.3.62","app":"PHP","message":"Call to undefined method OC\\Files\\Node\\File::isUpdatable() at \/var\/www\/owncloud\/apps\/onlyoffice\/controller\/callbackcontroller.php#377","level":3,"time":"2017-06-26T09:35:21+00:00","method":"POST","url":"\/index.phpoffice\/track?doc=eEt5a01jbVJWTGU1SS9pUzNKRmgzUzNYQzJ3WVNGSG84aXNCZjZGcWxiOD0\/eyJmaWxlSWQiOjc2OTYsIm93bmVySWQiOiI5NTFDMTI5RC1BNkE4LTQ4RUQtOTk3OS1FQUE3RUMxQkZEMTYiLCJhY3Rpb24iOiJ0cmFjayJ9","user":"--"}
{"reqId":"H0OdooSvdImb+8aiaFXi","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:28:49+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"r+afUD\/P7am83kh7BRcO","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:00+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"i\/QdHF4pab6Rd46f9SV8","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:12+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"BeiuDY7GY2pllLPbWyKN","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:16+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"8guENPWW6ApjQc3aw\/cF","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:26+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"QArJmRzlpiNof2OO7ibj","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:31+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"uN\/uClnh1lBTnfrVwWOK","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:39+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"jsX73GKAEceY2Bda3WGl","remoteAddr":"180.80.1.62","app":"user_ldap","message":"Exception: {\"Exception\":\"Exception\",\"Message\":\"No user available for the given login name.\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php(120): OCA\\\\user_ldap\\\\USER_LDAP->getLDAPUserByLoginName('m.ferrara')\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/manager.php(189): OCA\\\\user_ldap\\\\USER_LDAP->checkPassword(*** username and password replaced ***)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user\\\/session.php(219): OC\\\\User\\\\Manager->checkPassword(*** username and password replaced ***)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/user.php(162): OC\\\\User\\\\Session->login(*** username and password replaced ***)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1113): OC_User::login(*** username and password replaced ***)\\n#5 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(1009): OC::tryFormLogin()\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(971): OC::handleLogin()\\n#7 \\\/var\\\/www\\\/owncloud\\\/index.php(47): OC::handleRequest()\\n#8 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/apps\\\/user_ldap\\\/user_ldap.php\",\"Line\":105}","level":3,"time":"2017-06-26T10:29:46+00:00","method":"POST","url":"\/index.php","user":"--"}
{"reqId":"EUiLgcTtvb+YFL3i8onM","remoteAddr":"180.80.10.42","app":"core","message":"Could not get categories: cURL error 28: Connection timed out after 5000 milliseconds","level":3,"time":"2017-06-26T12:51:40+00:00","method":"GET","url":"\/index.phpigreport\/report","user":"951C129D-A6A8-48ED-9979-EAA7EC1BFD16"}