Политики
Контроль транзакций с помощью пользовательских правил с использованием движка политик на основе Rego от 256 Blocks
Движок политик 256 Blocks оценивает каждый запрос на соответствие вашим определенным правилам перед выполнением. Политики написаны на Rego, декларативном языке политик, который позволяет вам определять что должно быть заблокировано, а не как это блокировать.
Два правила
Политики контролируют два независимых решения:
| Правило | Контролирует | По умолчанию |
|---|---|---|
deny | Разрешен ли запрос или заблокирован | false (разрешить) |
denyGasSponsor | Спонсирует ли 256 Blocks плату за газ | false (спонсировать) |
# Блокировать транзакции на сумму более $10,000
deny if {
input.usd_value > 10000
}
# Не спонсировать транзакции на сумму более $100
denyGasSponsor if {
input.usd_value > 100
}Оба правила оцениваются независимо. Запрос может быть разрешен, но не спонсирован, или наоборот.
Уровни политик
Политики оцениваются на трех уровнях:
- Политики платформы - Управляются 256 Blocks, обеспечивают базовую безопасность (например, заблокированные RPC-методы)
- Политики организации - Применяются ко всем конечным точкам в вашей организации
- Политики конечной точки - Применяются только к конкретной конечной точке
Каждый уровень действует как базовый. Если политика более высокого уровня отклоняет запрос, никакая политика более низкого уровня не может его разрешить.
Распространенные случаи использования
- Лимиты расходов - Ограничение стоимости транзакций в долларах США
- Географические ограничения - Блокировка санкционированных стран
- Белые списки адресов - Разрешение только определенных контрактов
- Блокировка методов - Ограничение опасных RPC-методов
- Правила на основе времени - Только в рабочее время
Узнать больше
- Введение - Полная документация по политикам
- Поля ввода - Доступные данные для принятия решений по политикам
- Справочник по языку - Руководство по синтаксису Rego
- Встроенные функции - Доступные функции
- Ограничения - Ограничения безопасности и лучшие практики