d25580239e
The summary and description only said "Run OCC Commands in a web terminal" and did not mention the SQL mode, the confirmation and blocking rules, the admin-only access or the limitations.
60 lines
3.4 KiB
XML
60 lines
3.4 KiB
XML
<?xml version="1.0"?>
|
|
<info xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:noNamespaceSchemaLocation="https://apps.nextcloud.com/schema/apps/info.xsd">
|
|
<id>extended_occweb</id>
|
|
<name>Extended OCC Web</name>
|
|
<summary>Run occ commands and SQL queries from a web terminal (admins only)</summary>
|
|
<description><![CDATA[A terminal in the browser for Nextcloud administrators: run occ commands and query the database without shell access to the server. Handy on Nextcloud All-in-One (AIO) and other container setups, where occ otherwise needs `docker exec`.
|
|
|
|
**occ mode**
|
|
|
|
- Run any occ command, with tab completion of command names and colored output.
|
|
- Every command is logged with the user who ran it, in the Nextcloud log and, when enabled, in the admin_audit log.
|
|
|
|
**SQL mode** (type `sql`)
|
|
|
|
- Run SQL against the Nextcloud database. Statements separated by `;` run as one batch on one connection, and the batch is rolled back if a statement fails.
|
|
- Results are shown as tables (up to 1000 rows per query).
|
|
- Statements that change data or the schema ask for confirmation before the batch runs. Reading or writing files on the database server and starting programs through SQL are blocked.
|
|
- Ready-made scripts: type `templates`, for example to look up or completely delete a local user. A template only fills the command line; nothing runs until you review it and press Enter.
|
|
|
|
**Security**
|
|
|
|
- Only members of the Nextcloud admin group can use the app; every request is checked and CSRF-protected.
|
|
- Treat access to it like shell access to the server, and run the database as a user without superuser or server file/program rights. See the Security section in the README.
|
|
|
|
**Limitations**
|
|
|
|
- Not an interactive terminal: long-running commands (like `files:scan` on a large instance) time out, and commands that ask questions cannot be answered (use `-n`).]]></description>
|
|
<version>0.4.5</version>
|
|
<licence>agpl</licence>
|
|
<author mail="dillard.blom@ensembia.com" >Dillard Blom</author>
|
|
<namespace>OCCWeb</namespace>
|
|
<category>tools</category>
|
|
<website>https://github.com/dillardblom/occweb</website>
|
|
<bugs>https://github.com/dillardblom/occweb/issues</bugs>
|
|
<repository>https://github.com/dillardblom/occweb</repository>
|
|
<screenshot>https://github.com/dillardblom/occweb/raw/main/appinfo/screenshot.png</screenshot>
|
|
<screenshot>https://github.com/dillardblom/occweb/raw/main/appinfo/screenshot-welcome.png</screenshot>
|
|
<dependencies>
|
|
<!-- min-version and max-version must equal the lowest/highest NC core
|
|
versions this fork has actually been verified on (via testbak/,
|
|
see its README) - never inherited from upstream or guessed at
|
|
either end. min-version was 30 pre-testbak, unverified since the
|
|
app-id rename/jQuery fixes - narrowed to 32 (2026-09-27) once 30/31
|
|
turned out to never have been re-tested and 32 was confirmed
|
|
working. Test against the next major's beta and bump max-version
|
|
BEFORE it goes final, so occ:upgrade never has to fall back to
|
|
auto-disabling the app. -->
|
|
<nextcloud min-version="32" max-version="35"/>
|
|
</dependencies>
|
|
<navigations>
|
|
<navigation role="admin">
|
|
<name>OCC Web</name>
|
|
<route>extended_occweb.occ.index</route>
|
|
<icon>app.svg</icon>
|
|
<type>link</type>
|
|
</navigation>
|
|
</navigations>
|
|
</info>
|