Як керувати AI Security for Apps у Cloudflare через Terraform

Cloudflare додала в Terraform-провайдер нові ресурси для керування AI Security for Apps на рівні конфігурації коду. У матеріалі розбирається підхід авторів Cloudflare: як вмикати захист, налаштовувати власні теми (custom topics) та пов'язувати це з правилами WAF через один Terraform-проєкт.

Що саме з'явилося в Terraform-провайдері Cloudflare

Починаючи з версії 5.29.0 Terraform Cloudflare provider, можна керувати AI Security for Apps двома окремими ресурсами:

  • cloudflare_ai_security — вмикає або вимикає AI Security for Apps для конкретної зони.
  • cloudflare_ai_security_custom_topics — задає кастомні теми, за якими AI Security for Apps буде оцінювати кожен промпт.

Це дозволяє описати політику захисту генеративних AI-функцій інфраструктурним кодом, а не змінювати налаштування вручну в панелі Cloudflare.

Увімкнення AI Security for Apps для зони

Базовий крок — прив'язати AI Security for Apps до вашої Cloudflare-зони через ресурс cloudflare_ai_security. Автори наводять мінімальний приклад, де для зони з ідентифікатором у змінній var.cloudflare_zone_id функція просто вмикається:

resource "cloudflare_ai_security" "zone_ai_security" {
  zone_id = var.cloudflare_zone_id
  enabled = true
}

resource "cloudflare_ai_security_custom_topics" "zone_custom_topics" {
  zone_id = var.cloudflare_zone_id
  topics = [
    {
      label = "competitors"
      topic = "seeking info on competitors"
    }
  ]
}

Ключові моменти такого застосування:

  • zone_id посилається на вже наявну зону в Cloudflare, яку ви, як правило, описуєте іншим Terraform-ресурсом або передаєте через змінну середовища/вхідну змінну.
  • enabled = true робить AI Security for Apps активним для всієї зони. Зміна на false дасть змогу керувати відключенням тією ж декларативною конфігурацією.
  • Ресурс не задає політику блокувань напряму — він підключає аналіз промптів, який далі можна використати у правилах WAF.

Custom topics — як задати власні «чутливі» теми

AI Security for Apps уже має стандартний набір unsafe topics, але часто компаніям потрібні додаткові внутрішні категорії. Для цього у провайдері з'явився ресурс cloudflare_ai_security_custom_topics.

У наведеному Cloudflare прикладі оголошується одна користувацька тема:

  • label = "competitors" — короткий ідентифікатор, який зручно використовувати в правилах.
  • topic = "seeking info on competitors" — текстовий опис теми, на яку має реагувати система, коли користувацький промпт стосується запиту інформації про конкурентів.

Ресурс cloudflare_ai_security_custom_topics приймає масив таких об'єктів у полі topics, тобто в одній конфігурації можна задати кілька тем. Обмеження та точний формат описаний у документації Cloudflare за посиланням на custom topics, яке є в оригінальному матеріалі.

Поєднання з правилами WAF через cloudflare_ruleset

Після підключення AI Security for Apps і опису custom topics, поля цього модуля можна використовувати в WAF-правилах, які ви керуєте через ресурс cloudflare_ruleset. Автори підкреслюють, що так у вас:

  • налаштування детекції (AI Security for Apps),
  • опис тем (стандартні та custom topics),
  • та самі правила пом'якшення/блокування

залишаються в одному Terraform-проєкті. Це зручніше для рев'ю, застосування через CI/CD та відкату змін.

Типовий сценарій використання, який випливає з підходу Cloudflare:

  • AI Security for Apps оцінює промпти на відповідність стандартним і custom topics.
  • У cloudflare_ruleset ви перевіряєте ці оцінки в умовах правил.
  • Залежно від результату, застосовуєте дію: блокувати запит, показувати помилку, логувати подію, відправляти в окремий журнал тощо.

Усі такі правила можна тримати у спільних файлах Terraform поряд з іншими WAF-налаштуваннями.

Де подивитися додаткові приклади

Cloudflare наводить лише один короткий фрагмент конфігурації в changelog, але посилається на окрему сторінку з розширеними Terraform-прикладами для AI Security for Apps. Автори рекомендують відкрити розділ Terraform configuration examples в офіційній документації AI Security for Apps за вказаним в оригіналі URL.

Там можна знайти більше варіантів:

  • конфігурації з кількома custom topics,
  • інтеграції з різними правилами в cloudflare_ruleset,
  • та деталізацію доступних полів для умов і дій.

Таким чином, нові ресурси в Terraform-провайдері дістають до рівня коду весь ланцюжок: від увімкнення AI Security for Apps до визначення власних тем і підключення їх у правилах WAF.


Джерело: Cloudflare Changelog

Пошук

Закрити