Как разграничивать права доступа и отдавать файлы из файлового хранилища?

Здравствуйте, есть приложение на PHP а так же файловое хранилище Nextcloud, работают между собой через WebDAV.
Вопрос, как реализовать проверку доступа к файлам?

1. Делать это средствами PHP, проверять доступ, скачивать файл через webdav, после чего отдавать пользователю?

Если же надо будет отобразить превью нескольких фотографий их придется сначала скачать через php и вернуть на страницу? Наверное это не производительно, ведь кэш браузера не будет использован в полной мере, как если бы путь к файлу был прямой. Так ли это?

2. Дорабатывать/использовать внутренние решения ролей доступа Nextcloud ? Для того чтобы использовать прямые ссылки.
3. Какая реализация в сервисах yandex, google, как они работают со своими файловыми хранилищами, доступом?

Использовать внешние облачные решения нет возможности.
  • Вопрос задан
  • 437 просмотров
Решения вопроса 1
SlavikF
@SlavikF
Не очень понятно - зачем в вашем приложении Nextcloud работающий через WebDAV?

Какая реализация в сервисах yandex, google, как они работают со своими файловыми хранилищами, доступом?

Современные приложения типично используют object storage (S3 compatible).

Использовать внешние облачные решения нет возможности.

Если хотите хостить сами - то можно MinIO. Можно поставить на тот же самый хост, что и приложение, а можно и развернуть систему из нескольких хостов.

Если же оставаться с Nextcloud, то другой вариант - настроить Nextcloud чтобы он мог отдавать файлы напрямую, без WebDAV, по ссылке, но здесь могут быть вопросы по аутефикации.

как реализовать проверку доступа к файлам?

Не очень понятно - что такое "проверка доступа"?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы