Yandex Cloud
Search
Discuss with expertTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Cloud Desktop
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • Serverless Integrations
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex Smart Web Security
  • Getting started
    • All guides
      • Creating a profile
      • Editing basic profile settings
      • Getting profile information
      • Deleting a profile
      • Adding a rule
      • Editing a rule
      • Deleting a rule
      • Connecting a profile to a resource
      • Disconnecting a profile from a resource
    • Address lists
    • Viewing operations
    • Configuring monitoring
    • Setting up alerts
    • Configuring logs via Smart Web Security
    • Configuring logs via Application Load Balancer
    • Migrating to the new condition format in the API, CLI, and Terraform
    • Overview
    • Security profiles
    • WAF
    • ARL (request limit)
    • Rules
    • Conditions
    • Lists
    • Managing bot traffic
    • Protecting domains
    • Response templates
    • Logging
    • Quotas and limits
  • Access management
  • Pricing policy
  • Terraform reference
  • Monitoring metrics
  • Audit Trails events
  • Release notes
  1. Step-by-step guides
  2. Security profiles
  3. Editing basic profile settings

Editing basic settings of a security profile

Written by
Yandex Cloud
Updated at July 20, 2026
View in Markdown
Management console
CLI
Terraform
API
  1. In the management console, select the folder containing the security profile.

  2. Navigate to Smart Web Security.

  3. In the left-hand panel, select Security profiles.

  4. In the row with the profile you need, click and select Edit.

  5. In the window that opens, edit the following parameters:

    • Name.
    • Description.
    • Labels. To add a label, click Add label.
    • Action for the default base rule: Deny or Allow.
    • ARL profile: Select or create an ARL profile.
    • Select or create a SmartCaptcha to verify suspicious requests.
    • Select or create a response template that will be returned to the client whenever any rule triggers in the profile. The standard Yandex Cloud template is used by default.

    • Optionally, configure the Analyze request body (maximum size: 8 KB) option by selecting an action after the maximum size is exceeded:

      • Do not analyze body
      • Block request
  6. Enable or disable the use of HTTP request info to improve your machine learning models under Fine-tuning ML models.

  7. Click Save.

If you do not have the Yandex Cloud CLI yet, install and initialize it.

The folder used by default is the one specified when creating the CLI profile. To change the default folder, use the yc config set folder-id <folder_ID> command. You can also specify a different folder for any command using --folder-name or --folder-id. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.

  1. View the description of the CLI command for editing security profile basic settings:

    yc smartwebsecurity security-profile update --help
    
  2. To view a list of current security profiles in the default folder, run this command:

    yc smartwebsecurity security-profile list
    

    Result:

    +----------------------+-------------------+---------------------+----------------+------------+-------------+
    |          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 |
    +----------------------+-------------------+---------------------+----------------+------------+-------------+
    
  3. To edit basic settings of a security profile, run this command:

    yc smartwebsecurity security-profile update \
       --name <security_profile_name> \
       --new-name <new_security_profile_name> \
       --description "<profile_description>" \
       --labels <label_1_key>=<label_1_value>,<label_2_key>=<label_2_value>,...,<label_n_key>=<label_n_value> \
       --default-action <action> \
       --captcha-id <captcha_ID> \
       --security-rules-file <path_to_file_with_security_rules>
    

    Where:

    • --name: Security profile name. This is a required setting. Instead of the security profile name, you can provide its ID in the --id parameter.

    • --new-name: New name for the security profile. Skip it if the profile name remains unchanged.

    • --description: Text description of the security profile. This is an optional setting.

    • --labels: List of labels to add to the profile in KEY=VALUE format. This is an optional setting. For example, --labels foo=baz,bar=baz'.

    • --default-action: Action to apply to traffic that does not match any other rule. This is an optional setting. The default value is allow, which allows all requests to Yandex Smart Web Security. To block requests, set the parameter to deny.

    • --captcha-id: ID of the CAPTCHA in SmartCaptcha to verify suspicious requests. This is an optional setting.

    • --security-rules-file: Path to the YAML file with security rule description. This is an optional setting. Here is an example:

      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
      

      Where priority is the rule priority.

    Result:

    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"
    

For more information about the yc smartwebsecurity security-profile update command, see the CLI reference.

With Terraform, you can quickly create a cloud infrastructure in Yandex Cloud and manage it using configuration files. These files store the infrastructure description written in HashiCorp Configuration Language (HCL). If you change the configuration files, Terraform automatically detects which part of your configuration is already deployed, and what should be added or removed.

Terraform is distributed under the Business Source License. The Yandex Cloud provider for Terraform is distributed under the MPL-2.0 license.

For more information about the provider resources, see the guides on the Terraform website or its mirror.

If you do not have Terraform yet, install it and configure the Yandex Cloud provider.

To manage infrastructure using Terraform under a service account or user accounts (a Yandex account, a federated account, or a local user), authenticate using the appropriate method.

To update the settings of a Yandex Smart Web Security profile created with Terraform:

  1. Open the Terraform configuration file and edit the fragment describing the profile.

    Example of a security profile description in the Terraform configuration
    resource "yandex_sws_security_profile" "demo-profile-simple" {
      name                             = "<security_profile_name>"
      default_action                   = "DENY"
      captcha_id                       = "<captcha_ID>"
      advanced_rate_limiter_profile_id = "<ARL_profile_ID>"
    
      # Smart Protection rule
      security_rule {
        name     = "smart-protection"
        priority = 99999
    
        smart_protection {
          mode = "API"
        }
      }
    
      #Basic rule
      security_rule {
        name = "base-rule-geo"
        priority = 100000
        rule_condition {
          action = "ALLOW"
          condition {
            source_ip {
              geo_ip_match {
                locations = ["ru", "kz"]
              }
            }
          }
        }
      }
    
      # WAF profile rule
      security_rule {
        name     = "waf"
        priority = 88888
    
        waf {
          mode           = "API"
          waf_profile_id = "<WAF_profile_ID>"
        }
      }
    }
    

    For more on the properties of the yandex_sws_security_profile resource, see this provider guide.

  2. Apply the changes:

    1. In the terminal, navigate to the configuration file directory.

    2. Make sure the configuration is correct using this command:

      terraform validate
      

      If the configuration is valid, you will get this message:

      Success! The configuration is valid.
      
    3. Run this command:

      terraform plan
      

      You will see a list of resources and their properties. No changes will be made at this step. Terraform will show any errors in the configuration.

    4. Apply the configuration changes:

      terraform apply
      
    5. Type yes and press Enter to confirm the changes.

You can check the update using the management console or this CLI command:

yc smartwebsecurity security-profile get <security_profile_ID>

Use the update REST API method for the SecurityProfile resource or the SecurityProfileService/Update gRPC API call.

Useful linksUseful links

  • Adding a rule to a security profile
  • Editing a rule in a security profile
  • Connecting a security profile to a resource
  • Deleting a security profile

Was the article helpful?

Previous
Creating a profile
Next
Getting profile information
© 2026 Direct Cursus Technology L.L.C.