nextcloud / nextcloud/server

External Storage - Block Desktop Clients from seeing Shares

Open
#57,056 3 comments 7 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

[!TIP]

Help move this idea forward
  • Use the 👍 reaction to show support for this feature.
  • Avoid commenting unless you have relevant information to add; unnecessary comments create noise for subscribers.
  • Subscribe to receive notifications about status changes and new comments.

Is your feature request related to a problem? Please describe.

I am attempting to find a method to block Desktop clients from using shares mounted via External Storage. Something server-side would be best so my clients don't need to do anything as I have some network shares set up automatically for them.

I personally prefer to use Virtual Files on a couple of our PCs, I find this easier for others when managing the available space on their drives and it puts their entire file list in one place for easier access which also includes files in the root. Unfortunately with this option I can not prevent directories that are included with External Storage.

This can cause a few other issues:
Very long and intensive "syncs" due to the shares usually being very large repositories.
Constant client and server connections/syncing as some of these directories can update often but might rarely be accessed by the client.
Security concerns of data to a network share being synced (virtual or not) when on an "unknown" network.

I've also attempted to use the File Access Control flow but not only did this cause the client to keep trying to sync but the tags would need to be added by each user.

Describe the solution you'd like

The best one in my view, add an option within the External Storage settings to mark a share for exclusion from different client user agents. This won't come up as "denied access" and instead just not show up in the file list of the folder sync connection options. This could also work for both admin and person settings to automatically added shares would have it or ones the user might add separately.

Describe alternatives you've considered

Alternatively, a setting from within the file list to mark a folder (or even also a file) as "hide from client" (and let the user select what clients they have linked already) so it doesn't show up there. I like this less because I specifically want to control this for my clients and not rely on them to do it. But this could be a bonus for general files and not just External Storage.

Not a server side thing so this issue would need to move, but allow the desktop clients to deselect folders when using the Virtual Files option. The desktop client already shows a different icon so it seems to understand these are from External Storage. An option to blanket ignore them (or any specific directory for that matter) would be nice.

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, tests, or entry points are named. Start by locating the External Storage settings and the server-side handling of file listings for desktop clients; clarify whether exclusion is controlled per share, user, or client type, and consider the existing alternatives before defining completion.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
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.