О подписанных URL-адресах, внутри они работают примерно одинаково и генерируют URL более или менее одинаково.Облачное хранилище имеет встроенный CDN, поэтому достаточно использовать подписанный URL-адрес облачного хранилища.
С подписанным URL-адресом пользователям не нужно вносить в белый список пользователей, вы только отправляете им URL-адрес, и они имеют к нему доступ дляограниченное время.
Для вашего варианта использования подписанные URL-адреса могут быть не лучшим вариантом, поскольку они имеют ограниченный срок службы, поэтому я предлагаю сделать так, чтобы ваши пользователи входили в ваше приложение с использованием собственной логики приложения, а не IAMили просто получить доступ к приложению без входа в систему (если в нем нет необходимости), а затем заставить приложение обрабатывать запросы пользователей к объектам облачного хранилища через служебную учетную запись (IAM):
user
(не Google / Google) входит в систему app
(вход в приложение, а не IAM)
user
запрашивает объект, представленный app
без внутренних данных (путь сегмента и т. д.)
app
использует собственную служебную учетную запись (IAM) для запроса объекта на Cloud Storage
Cloud Storage
передает объект приложению, приложение пользователю
UЕсли вы воспользуетесь этим обходным путем, вы все равно можете использовать URL-адреса, сохраненные в вашей базе данных.Если вы хотите использовать подписанный URL, вы должны постоянно изменять базу данных, что не является оптимальным.
Вы можете использовать this для аутентификации из вашего приложения в облачном хранилище, ограничивая доступтолько на учетную запись службы вашего приложения.Вы можете установить служебную учетную запись неявно или явно .