Project

General

Profile

Actions

Bug #50574

closed

Setting permissions in TSconfig for files is ignored......

Added by Claus Harup almost 11 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
File Abstraction Layer (FAL)
Target version:
Start date:
2013-07-30
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
6.1
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

Adding the following to my editors be_group has no effect in the filelist module:

permissions.file.default {
addFile = 0
readFile = 0
editFile = 0
writeFile = 0
uploadFile = 0
copyFile = 0
moveFile = 0
renameFile = 0
unzipFile = 0
removeFile = 0
addFolder = 0
readFolder = 0
moveFolder = 0
writeFolder = 0
renameFolder = 0
removeFolder = 0
removeSubfolders = 0
}

From TYPO3\CMS\Core\Authentication\BackendUserAuthentication.php I simply cannot see how the configuration for non-admins could be respected:

public function getFilePermissions() {
if (!isset($this->filePermissions)) {
$defaultOptions = array(
'addFile' => TRUE,
// new option
'readFile' => TRUE,
// new option, generic check of the user rights
'editFile' => TRUE,
// new option
'writeFile' => TRUE,
// new option, generic check of the user rights
'uploadFile' => TRUE,
'copyFile' => TRUE,
'moveFile' => TRUE,
'renameFile' => TRUE,
'unzipFile' => TRUE,
'removeFile' => TRUE,
'addFolder' => TRUE,
'readFolder' => TRUE,
// new option,, generic check of the user rights
'moveFolder' => TRUE,
'renameFolder' => TRUE,
'writeFolder' => TRUE,
// new option, generic check of the user rights
'removeFolder' => TRUE,
'removeSubfolders' => TRUE
);
if (!$this->isAdmin()) {
$this->filePermissions = $this->getTSConfig('permissions.file.default');
if (!is_array($this->filePermissions)) {
$oldFileOperationPermissions = $this->getFileoperationPermissions();
// Lower permissions if the old file operation permissions are not set
if ($oldFileOperationPermissions ^ 1) {
$defaultOptions['addFile'] = FALSE;
$defaultOptions['uploadFile'] = FALSE;
$defaultOptions['copyFile'] = FALSE;
$defaultOptions['moveFile'] = FALSE;
$defaultOptions['renameFile'] = FALSE;
$defaultOptions['removeFile'] = FALSE;
}
if ($oldFileOperationPermissions ^ 2) {
$defaultOptions['unzipFile'] = FALSE;
}
if ($oldFileOperationPermissions ^ 4) {
$defaultOptions['addFolder'] = FALSE;
$defaultOptions['moveFolder'] = FALSE;
$defaultOptions['renameFolder'] = FALSE;
$defaultOptions['removeFolder'] = FALSE;
}
if ($oldFileOperationPermissions ^ 8) {
$defaultOptions['copyFolder'] = FALSE;
}
if ($oldFileOperationPermissions ^ 16) {
$defaultOptions['removeSubfolders'] = FALSE;
}
}
}
$this->filePermissions = $defaultOptions;
}
return $this->filePermissions;
}

If I devlog $this->filePermissions after $this->filePermissions = $this->getTSConfig('permissions.file.default');

I get the correct permissions but how should they be respected?!?!?!


Related issues 1 (0 open1 closed)

Related to TYPO3 Core - Bug #84163: File operation permissions set as bitmask in BackendUserGroup modelClosed2018-03-07

Actions
Actions

Also available in: Atom PDF