Как оптимально предоставить доступ к файлам в мультиюзеровской системе?
Добрый день, вопрос скорее всего банальный.
Но хотел бы узнать как принято подобное реализовывать.
Есть чат компании, в котором можно отправлять фотографии и файлы.
Фотографий в чате имеют пред просмотр.
Вижу два варианта реализации обеспечения доступа к файлам, тем кто имеет доступ.
1. На стороне сервера сделать прослойку которая будет проверять права на доступ к файлу, делать запрос к S3/Google storage, получить и отправлять данные клиенту. (возможно кешировать на сервере и чистить со временем)
2. При генерации сообщений чата, генерировать временные ссылки для доступа (час например) и получать данные на прямую у S3/google storage.
у перового варианта больше нагрузка на сервер, а по второму плохое ощущение, мол будут проблемы... (кеш, и какое будет поведение при истечении времени... перегенерация ссылки по мере использования....)