diff --git a/apps/files_sharing/lib/Controller/ShareAPIController.php b/apps/files_sharing/lib/Controller/ShareAPIController.php index fafdb1a64cd1b..22b59dd9d771d 100644 --- a/apps/files_sharing/lib/Controller/ShareAPIController.php +++ b/apps/files_sharing/lib/Controller/ShareAPIController.php @@ -460,6 +460,7 @@ public function createShare( ): DataResponse { $share = $this->shareManager->newShare(); + $requestPermissions = $permissions; if ($permissions === null) { $permissions = $this->config->getAppValue('core', 'shareapi_default_permissions', Constants::PERMISSION_ALL); } @@ -558,7 +559,10 @@ public function createShare( Constants::PERMISSION_UPDATE | Constants::PERMISSION_DELETE; } else { - $permissions = Constants::PERMISSION_READ; + // only set default permissions if there was no permissions request param + if ($requestPermissions === null) { + $permissions = Constants::PERMISSION_READ; + } } // TODO: It might make sense to have a dedicated setting to allow/deny converting link shares into federated ones