feat(debyltech-cloud): limit customers to Files, Activity and signing
Nothing was group-restricted, so customers saw Dashboard, Photos, Office and the rest, plus Nextcloud's first-run and promo apps. - Disable for everyone: firstrunwizard, recommendations, related_resources, weather_status, survey_client, support, app_api, contactsinteraction, photos. A refused disable now fails the play (occ exits 0 on "can't be disabled"). - Restrict dashboard and office to staff. defaultapp=dashboard,files so staff land on the dashboard and customers fall through to Files. - libresign groups_request_sign pinned to staff and asserted in verify. LibreSign itself is deliberately NOT group-restricted: that also blocks anonymous requests and would break public signing links. - profile.enabled=false; lookup_server="" (lookup_server_connector can't be disabled). - README: what customers can open. Checked as a probe customer: apps=files,activity,libresign,text,viewer, lands in Files, can't request signatures; staff land on Dashboard. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
c4fe506860
commit
0cc4c1460e
@@ -165,6 +165,14 @@ foreach ($isolation as $key => $want) {
|
||||
}
|
||||
}
|
||||
|
||||
// Only staff may AUTHOR signature requests (LibreSign cannot be group-
|
||||
// restricted without breaking its public signing links).
|
||||
$requesters = json_decode($appConfig->getValueString('libresign', 'groups_request_sign', ''), true);
|
||||
if ($requesters !== ['{{ cloud_debyltech_staff_group }}']) {
|
||||
$failures[] = 'libresign groups_request_sign is ' . json_encode($requesters)
|
||||
. ' -- expected only the staff group, or customers could send signature requests';
|
||||
}
|
||||
|
||||
$identDocs = $appConfig->getValueString('libresign', 'identification_documents', '');
|
||||
if ($identDocs !== '0') {
|
||||
$failures[] = 'libresign identification_documents is "' . $identDocs
|
||||
|
||||
Reference in New Issue
Block a user