nextcloud / nextcloud/server

"Administrator mode" requested as new feature, to address limitations in maintenance mode

Open
#40,601 0 comments 14 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage enhancement feature: install and update
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

Backgrond

Maintenance mode is a fundamental feature of Nextcloud.

When engaged, the application is not available for normal use from the browser, nor other kinds of clients.

Administrative tasks are accessible, but only from the command line, and only those that involve no database access.

While maintenance mode surely aligns with important use cases, it imposes considerable limitations on available operations.

Many administrative tasks easier to perform from a web application, or require database access, but are also best undertaken when regular client access is disabled.

Regarding which operations an administrator may wish to allow while performing certain maintenance tasks, the distinctions between interaction by web versus console, and between access allowed to database versus not, are not necessarily the most relevant ones in practice.

Request

Proposed is allowing the application to be placed in "administrator mode".

In administrator mode, regular users (those lacking administrative privileges) are blocked from access through a web browser or other client applications. For administrators, operations are blocked if they are regular client requests, such as file transfers, or use of applications.

However, administrators may perform administrative tasks of various kinds through either the web interface or command line, including tasks that access or even modify the database. They may change settings, add or remove applications or users, or access diagnostic features.

Blocking regular use of files and applications is suitable for certain administrative tasks that require transactional integrity.

Notes

The mode may be seen as broadly analogous to single-user mode on Unix-like systems.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by reviewing the existing maintenance-mode behavior and its web, client, and CLI access paths, then define how administrator mode distinguishes administrators from regular users and regular client requests. Done means the mode consistently enforces those access rules across the described interfaces, including database-affecting administrative tasks.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
authorization, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.