Ця документація охоплює функції безпеки, доступні в Cellar API v3.2.0+
Cellar розроблено з пріоритетом безпеки.
На цій сторінці висвітлено функції безпеки, найкращі практики та міркування щодо розгортання.
Безпека завантаження файлів
При використанні API v2 для завантаження файлів, Cellar реалізує кілька заходів безпеки для захисту від поширених векторів атак.
Обмеження розміру файлів
Параметр конфігурації APP_MAX_FILE_SIZE_MB контролює максимальний розмір файлу, який можна завантажити.
Значення за замовчуванням 8 МБ розроблено для:
Підтримки поширених випадків використання (QR-коди, скріншоти, PDF, облікові дані, конфігураційні файли)
Сумісності з розгортаннями AWS Lambda (API Gateway має обмеження у 10 МБ для корисного навантаження)
Запобігання атакам відмови в обслуговуванні через завантаження великих файлів
Балансування використання пам’яті під час шифрування (файли буферуються в пам’яті)
Файли, які вміщуються в 8 МБ:
QR-коди та штрих-коди (< 1 МБ)
Скріншоти та стиснуті зображення (2-5 МБ)
PDF з текстом та зображеннями (1-6 МБ)
Приватні ключі, сертифікати та файли облікових даних (< 1 МБ)
Архіви вихідного коду та конфігураційні файли (1-5 МБ)
Короткі аудіозаписи (1-2 МБ)
Збільшення ліміту:
Для Docker або традиційних серверних розгортань ви можете збільшити ліміт, встановивши вище значення.
Зверніть увагу, що розгортання Lambda обмежені лімітом API Gateway у 10 МБ.
APP_MAX_FILE_SIZE_MB=20# Збільшити до 20 МБ для Docker розгортань
Автоматичний захист
Cellar автоматично застосовує наступні заходи безпеки до завантаження та завантаження файлів:
Підтримуються всі типи файлів без обмежень.
Це забезпечує максимальну гнучкість для користувачів обмінюватися будь-яким типом секрету.
Одержувачі відповідають за безпечну обробку завантажених файлів.
Cellar зосереджується на безпечній передачі та зберіганні, а не на фільтрації вмісту.
Найкращі практики розгортання
При розгортанні Cellar у виробництві розгляньте ці рекомендації щодо безпеки:
1. Використовуйте HTTPS
Завжди розгортайте Cellar за HTTPS у виробництві.
Хоча Cellar шифрує секрети в стані спокою за допомогою вибраного вами механізму криптографії, HTTPS захищає секрети під час передачі між клієнтами та API.
Налаштуйте ваш зворотний проксі або балансувальник навантаження для:
Завершення TLS з дійсними сертифікатами
Примусового перенаправлення HTTPS для HTTP запитів
Використання надійних наборів шифрів (TLS 1.2+)
2. Налаштуйте відповідні обмеження розміру файлів
Встановіть APP_MAX_FILE_SIZE_MB на основі вашого:
Випадку використання: Які типи файлів будуть обмінюватися користувачами?
Середовища розгортання: Ви використовуєте Lambda (ліміт 10 МБ) чи Docker (гнучкий)?
Доступної пам’яті: Файли буферуються в пам’яті під час шифрування
Ємності Redis: Зашифровані файли зберігаються в Redis
3. Моніторинг використання сховища
Cellar зберігає всі дані в Redis.
Моніторте ваш екземпляр Redis, щоб запобігти виснаженню пам’яті:
Відстежуйте загальне використання пам’яті
Налаштуйте сповіщення при наближенні до лімітів пам’яті
Налаштуйте політику Redis maxmemory відповідно
Розгляньте налаштування збереження Redis на основі ваших вимог до довговічності
4. Впровадьте обмеження швидкості
Хоча Cellar реалізує обмеження розміру файлів, розгляньте додавання обмеження швидкості на вашому зворотному проксі або API gateway: