Я оцениваю использование GCP для моего нового проекта, однако я все еще пытаюсь выяснить, как реализовать следующую функцию и какие у нее будут затраты.
TL; DR
Какова лучшая стратегия обслуживания загруженных пользователями мультимедиа из GCP при предоставлении пользователям полного контроля на том, кто будет иметь к ним доступ?
Описание функций
Как пользователь, я хочу загружать некоторые виды мультимедиа (например, изображения, видео и т. Д.) Конфиденциально и безопасно.
Мультимедиа должна быть видна мне и определенной подгруппе пользователей, которымЯ предоставил доступ к.
Никто другой не должен иметь доступ к мультимедиа, даже если он получил URL.
Мультимедийный контент будет отображаться на веб-сайте.
Дилемма
Я хотел бы использовать облачное хранилище для хранения всех носителей, однако я изо всех сил пытаюсь найти подходящее решение для части авторизации.
Насколько я могу судить,функции, связанные с «контролем доступа»На уровне проекта и организации.
На данный момент наиболее близкими являются подписанные URL-адреса, но это не удовлетворяет требованию невозможности доступа к нему, даже если у вас есть URL, даже если срок его действия истекает в ближайшее время.после и, возможно, это может быть хорошим компромиссом.
Еще одна проблема с этим подходом заключается в том, что мультимедиа не может быть кэширована на уровне браузера, что в долгосрочной перспективе может сэкономить довольно большую пропускную способность ...
ДорогоРешение?
Одно решение, которое пришло мне в голову, состоит в том, что я мог бы обслуживать его через экземпляр GCE, поместив туда приложение, которое проверяет пользователя, возможно, через JWT, и затем направить его обратно во время использования соответствующегозаголовки кеша.
Это должно удовлетворить все требования, но я боюсь, что расходы на выход будут стремительно расти: (
Спасибо всем, кто поможет!