nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
26.94k stars 4.02k forks source link

When S3 is mounted, all users can see each other`s files #13565

Closed mistletoe91 closed 4 years ago

mistletoe91 commented 5 years ago

Steps to reproduce

  1. Mount a S3 bucket through admin user
  2. Login as User A, create a folder "testa"
  3. Login as User B. User B can see folder "testa"

Expected behaviour

Each user should have theiw own space in bucket Bucket1/userA Bucket1/userB

Actual behaviour

Just like local disk the external disk should produce same behaviour. i.e. each user have their own space in bucket. I cannot create 100s of buckets, 1 per user because AWS has soft limit of 100 buckets and 1000 hard limit.

Server configuration

Operating system: Ubuntu

Web server: LAMP

Database: Mysql PHP version: 5.7 Nextcloud version: (see Nextcloud admin page)

Updated from an older Nextcloud/ownCloud or fresh install:

Where did you install Nextcloud from:

Signing status:

Signing status ``` Login as admin user into your Nextcloud and access http://example.com/index.php/settings/integrity/failed paste the results here. ```

List of activated apps:

App list ``` If you have access to your command line run e.g.: sudo -u www-data php occ app:list from within your Nextcloud installation folder ```

Nextcloud configuration:

Config report ``` If you have access to your command line run e.g.: sudo -u www-data php occ config:list system from within your Nextcloud installation folder or Insert your config.php content here. Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …) ```

Are you using external storage, if yes which one: local/smb/sftp/...

Are you using encryption: yes/no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...

LDAP configuration (delete this part if not used)

LDAP config ``` With access to your command line run e.g.: sudo -u www-data php occ ldap:show-config from within your Nextcloud installation folder Without access to your command line download the data/owncloud.db to your local computer or access your SQL server remotely and run the select query: SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap'; Eventually replace sensitive data as the name/IP-address of your LDAP server or groups. ```

Client configuration

Browser:

Operating system:

Logs

Web server error log

Web server error log ``` Insert your webserver log here ```

Nextcloud log (data/nextcloud.log)

Nextcloud log ``` Insert your Nextcloud log here ```

Browser log

Browser log ``` Insert your browser log here, this could for example include: a) The javascript console log b) The network log c) ... ```
ulyssesdotcodes commented 5 years ago

Seeing this happen. Is there a fix?

kesselb commented 5 years ago

Seeing this happen. Is there a fix?

No. I see to workarounds:

1) Use object storage to store user files on s3. 2) Access control might work for simpler use cases.

ulyssesdotcodes commented 5 years ago

Object storage is exactly what I needed, thanks.

On Sat, Aug 24, 2019, 18:00 Daniel Kesselberg notifications@github.com wrote:

Seeing this happen. Is there a fix?

No. I see to workarounds:

  1. Use object storage https://docs.nextcloud.com/server/16/admin_manual/configuration_files/primary_storage.html to store user files on s3.
  2. Access control https://docs.nextcloud.com/server/16/admin_manual/file_workflows/access_control.html might work for simpler use cases.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/nextcloud/server/issues/13565?email_source=notifications&email_token=AADVTU3R6KVX7H7A7NLC653QGGVOLA5CNFSM4GPVWKJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5CIHJI#issuecomment-524583845, or mute the thread https://github.com/notifications/unsubscribe-auth/AADVTUY5KH2JZYJQFT7CXYLQGGVOLANCNFSM4GPVWKJA .

kesselb commented 4 years ago

I cannot create 100s of buckets, 1 per user because AWS has soft limit of 100 buckets and 1000 hard limit.

Yes. For such setups we recommend object storage.