Skip to content

Commit 256a539

Browse files
committed
feat(files_external): allow delegated admins to search applicable users/groups
Signed-off-by: Tatjana Kaschperko Lindt <kaschperko-lindt@strato.de>
1 parent e6f6711 commit 256a539

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

apps/files_external/ajax/applicable.php

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,19 @@
1212
\OC_JSON::checkAppEnabled('files_external');
1313
\OC_JSON::callCheck();
1414

15-
\OC_JSON::checkAdminUser();
15+
$currentUser = \OC::$server->getUserSession()->getUser();
16+
if ($currentUser === null) {
17+
\OC_JSON::error(['message' => 'Not logged in']);
18+
exit();
19+
}
20+
$groupManager = \OC::$server->getGroupManager();
21+
$authorizedGroupMapper = \OC::$server->get(\OC\Settings\AuthorizedGroupMapper::class);
22+
$isAdmin = $groupManager->isAdmin($currentUser->getUID());
23+
$isDelegated = in_array(\OCA\Files_External\Settings\Admin::class, $authorizedGroupMapper->findAllClassesForUser($currentUser), true);
24+
if (!$isAdmin && !$isDelegated) {
25+
\OC_JSON::error(['message' => 'Not authorized']);
26+
exit();
27+
}
1628

1729
$pattern = '';
1830
$limit = null;

0 commit comments

Comments
 (0)