Изменить основные параметры профиля безопасности
-
В консоли управления
выберите каталог, в котором находится профиль безопасности. -
В списке сервисов выберите Smart Web Security.
-
В строке с нужным профилем нажмите
и выберите Редактировать. -
В открывшемся окне измените параметры:
- Имя.
- Описание.
- Метки. Чтобы добавить новую метку, нажмите кнопку Добавить метку.
- Действие для базового правила по умолчанию —
Запретить
илиРазрешить
. - Профиль ARL — выберите или создайте профиль ARL.
- Выберите или создайте капчу SmartCaptcha для проверки подозрительных запросов.
-
Нажмите кнопку Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для изменения основных параметров профиля безопасности:
yc smartwebsecurity security-profile update --help
-
Чтобы посмотреть список имеющихся профилей безопасности в каталоге по умолчанию, выполните команду:
yc smartwebsecurity security-profile list
Результат:
+----------------------+-------------------+---------------------+----------------+------------+-------------+ | ID | NAME | CREATED | DEFAULT ACTION | CAPTCHA ID | RULES COUNT | +----------------------+-------------------+---------------------+----------------+------------+-------------+ | fev3s055oq64******** | my-new-profile | 2024-08-05 06:57:18 | DENY | | 1 | | fevlqk8vei9p******** | my-sample-profile | 2024-08-05 06:57:28 | DENY | | 2 | +----------------------+-------------------+---------------------+----------------+------------+-------------+
-
Чтобы изменить основные параметры профиля безопасности, выполните команду:
yc smartwebsecurity security-profile update \ --name <имя_профиля_безопасности> \ --new-name <новое_имя_профиля_безопасности> \ --description "<описание_профиля>" \ --labels <ключ_метки_1>=<значение_метки_1>,<ключ_метки_2>=<значение_метки_2>,...,<ключ_метки_n>=<значение_метки_n> \ --default-action <действие> \ --captcha-id <идентификатор_капчи> \ --security-rules-file <путь_к_файлу_с_правилами_безопасности>
Где:
-
--name
— имя профиля безопасности. Обязательный параметр. Вместо имени профиля безопасности вы можете передать его идентификатор в параметре--id
. -
--new-name
— новое имя профиля безопасности. Необязательный параметр если имя профиля не изменяется. -
--description
— текстовое описание профиля безопасности. Необязательный параметр. -
--labels
— список меток для добавления в профиль в форматеКЛЮЧ=ЗНАЧЕНИЕ
. Необязательный параметр. Например:--labels foo=baz,bar=baz'
. -
--default-action
— действие, которое следует выполнить для трафика, который не попал под условия других правил. Необязательный параметр. По умолчанию установлено значениеallow
, разрешающее все запросы к сервису. Чтобы запретить запросы, установите значениеdeny
. -
--captcha-id
— идентификатор капчи SmartCaptcha для проверки подозрительных запросов. Необязательный параметр. -
--security-rules-file
— путь к файлу с описанием правил безопасности в формате YAML . Необязательный параметр. Например:security-rules.yaml
- name: rule-condition-deny description: My first security rule. This rule it's just example to show possibilities of configuration. priority: "11111" dry_run: true rule_condition: action: DENY condition: authority: authorities: - exact_match: example.com - exact_match: example.net http_method: http_methods: - exact_match: GET - exact_match: POST request_uri: path: prefix_match: /search queries: - key: firstname value: pire_regex_match: .ivan. - key: lastname value: pire_regex_not_match: .petr. headers: - name: User-Agent value: pire_regex_match: .curl. - name: Referer value: pire_regex_not_match: .bot. source_ip: ip_ranges_match: ip_ranges: - 1.2.33.44 - 2.3.4.56 ip_ranges_not_match: ip_ranges: - 8.8.0.0/16 - 10::1234:1abc:1/64 geo_ip_match: locations: - ru - es geo_ip_not_match: locations: - us - fm - gb - name: rule-condition-allow description: Let's show how to whitelist IP. priority: "2" rule_condition: action: ALLOW condition: source_ip: ip_ranges_match: ip_ranges: - 44.44.44.44-44.44.44.45 - 44.44.44.77 - name: smart-protection-full description: Enable smart protection. Allow to show captcha on /search prefix. priority: "11" smart_protection: mode: FULL condition: request_uri: path: prefix_match: /search - name: smart-protection-api description: Enable smart protection with mode API. We are not expect to see captcha on /api prefix. priority: "10" smart_protection: mode: API condition: request_uri: path: prefix_match: /api
Результат:
id: fev6q4qqnn2q******** folder_id: b1g07hj5r6i******** cloud_id: b1gia87mbaom******** name: my-sample-profile new-name: my-update-profile description: "my update description" labels: label1=value1,label2=value2 default_action: DENY created_at: "2024-07-25T19:21:05.039610Z"
-
Подробнее о команде yc smartwebsecurity security-profile update
читайте в справочнике CLI.
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы изменить параметры профиля безопасности Yandex Smart Web Security, созданного с помощью Terraform:
-
Откройте файл конфигурации Terraform и измените фрагмент с описанием профиля.
Пример описания профиля безопасности в конфигурации Terraform
resource "yandex_sws_security_profile" "demo-profile-simple" { name = "<имя_профиля_безопасности>" default_action = "DENY" captcha_id = "<идентификатор_капчи>" advanced_rate_limiter_profile_id = "<идентификатор_ARL_профиля>" # Правило Smart Protection security_rule { name = "smart-protection" priority = 99999 smart_protection { mode = "API" } } #Базовое правило security_rule { name = "base-rule-geo" priority = 100000 rule_condition { action = "ALLOW" condition { source_ip { geo_ip_match { locations = ["ru", "kz"] } } } } } # Правило c WAF профилем security_rule { name = "waf" priority = 88888 waf { mode = "API" waf_profile_id = "<идентификатор_WAF_профиля>" } } }
Более подробную информацию о параметрах ресурса
yandex_sws_security_profile
в Terraform, см. в документации провайдера . -
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
-
Проверить изменение ресурсов можно в консоли управления
yc smartwebsecurity security-profile get <идентификатор_профиля_безопасности>
Воспользуйтесь методом REST API update для ресурса SecurityProfile или вызовом gRPC API SecurityProfileService/Update.