быстрое управление доступом к CDN
Я ищу быстрый/дешевый способ реализовать управление доступом к CDN, содержащему изображения.
контекст
Пользователь обычно запрашивает большое количество небольших изображений (задержка не должна превышать 200 мс), а пользователь запрашивает изображения одно за другим.
управление доступом
- Пользователь обновляет разрешение изображения в БД
- Запускается ловушка разрешений и обновляет файл разрешений изображения (добавьте идентификатор пользователя в файл)
- Загрузите/обновите корзину S3 с новым файлом разрешений.
- аннулировать кеш CLOUDFRONT для этого конкретного файла
запрос изображения
- Пользователь отправляет HTTP-запрос для получения изображения СПОСОБ: ПОЛУЧИТЬ URL: URL/image-id.png ЗАГОЛОВОК: Авторизация (содержащий идентификатор пользователя)
- Пограничная лямбда перехватывает запрос, проверяет токен, использует идентификатор изображения для получения файла разрешений изображения и, наконец, проверяет, содержит ли файл идентификатор пользователя.
- Если какие-либо шаги в пункте 2 терпят неудачу, то лямбда возвращает сообщение об ошибке; в противном случае перенаправьте запрос в CDN.
Ребята, что вы думаете? Это ужасная идея?