Update README.md

This commit is contained in:
Григорий Сафронов 2025-09-12 12:43:22 +00:00
parent 4aa21c23f1
commit 127ff74072

View File

@ -45,6 +45,7 @@
<li><a href="#примеры-команд-субд">Примеры команд субд</a></li>
<li><a href="#обработка-статических-страниц">Обработка статических страниц</a></li>
<li><a href="#http-api">HTTP API</a></li>
<li><a href="#аутентификация">Аутентификация</a></li>
<li><a href="#https">HTTPS</a></li>
<li><a href="#репликация">Репликация</a></li>
<li><a href="#резервное-копирование">Резервное копирование</a></li>
@ -888,6 +889,60 @@ curl -X DELETE http://127.0.0.1:8082/api/delete \
<p align="right">(<a href="#readme-top">К началу</a>)</p>
## Аутентификация
Для повышения безопасности в сервере-приложений falcot используется `Авторизация`.
За параметры авторизации отвечает секция `[security]` в конфигурационном файле `config.toml`
```sh
[security]
require_authentication = false
jwt_secret = "your-secret-key-here"
password_hashing_rounds = 12
```
<br>
Детальное описание параметров секции:
1. **require_authentication = false**
Назначение: Включает/выключает обязательную аутентификацию
Допустимые значения параметра `require_authentication`:
* false - анонимный доступ разрешен (по умолчанию)
* true - требуется аутентификация для всех операций
При установки значения параметра `require_authentication = true` клиенты должны предоставлять JWT токен. Он содержит информацию о пользователе и правах доступа. Токен проверяется с использованием параметра `jwt_secret` и подписываются секретным ключом для предотвращения подделки.
Без валидного токена операции блокируются. Все токены имеют ограниченное время жизни (обычно несколько часов).
Назначение: Защищает API от несанкционированного доступа
<br>
2. **jwt_secret = "your-secret-key-here"**
Назначение: Секретный ключ для JWT (JSON Web Tokens)
Формат: Произвольная строка, рекомендуется длинная криптостойкая
<br>
3. **password_hashing_rounds = 12**
Назначение: Количество раундов хеширования паролей. Пароли хешируются с указанным количеством раундов, и исходные пароли никогда не хранятся в чистом виде,что обеспечивает защиту от атак перебором даже при утечке базы данных.
Значения: Обычно от 10 до 15 (чем больше - тем безопаснее, но медленнее)
Алгоритм: Вероятно bcrypt (стандарт для безопасного хеширования)
Использование: Защита паролей пользователей в базе данных
Использование:
* Подписание JWT токенов аутентификации
* Верификация подлинности токенов
<br>
ВАЖНО: В продакшене нужно заменить на уникальный сложный ключ
<p align="right">(<a href="#readme-top">К началу</a>)</p>
## HTTPS
Сервер-приложенй falcot поддерживает протоколы https и http2.
@ -1003,6 +1058,7 @@ curl http://localhost:8082/api/status
**2.Проверка разрешенных IP - если список allowed_ips не пустой, проверяется наличие IP в нем**
**3.Если ACL отключен - все подключения разрешены**
**Примеры использования в конфигурации:**
```sh