1. 20 Mar, 2025 2 commits
    • qiuqunfeng's avatar
      Enhance GetBlackWhiteLists method to return total count of items · 7aeb7fbb
      qiuqunfeng authored
      - Update the GetBlackWhiteLists method in both the service and controller layers to return the total number of items alongside the list of MatcherExpr.
      - Modify response structure in the controller to include total items for improved client-side handling.
      - Ensure proper error handling and maintain existing functionality while enhancing data retrieval capabilities.
      7aeb7fbb
    • qiuqunfeng's avatar
      Refactor EnableBlackWhiteList method to use Model update for status change · 5a77e771
      qiuqunfeng authored
      - Update the database operation in the EnableBlackWhiteList method to use Model and Where clauses for a more precise status update.
      - Improve the clarity and efficiency of the database interaction within the WAF service.
      5a77e771
  2. 19 Mar, 2025 5 commits
  3. 18 Mar, 2025 2 commits
    • qiuqunfeng's avatar
      Add ListWafs endpoint and service method for WAF management · f9077078
      qiuqunfeng authored
      - Introduce ListWafs method in WafController to retrieve a list of WAF services
      - Update WAF router to include new GET routes for listing WAFs
      - Implement ListWafs method in the service layer to fetch WAF data from the database
      - Enhance the MatcherExpr and WafService structures to support new functionality
      f9077078
    • qiuqunfeng's avatar
      Add labels to ConfigMap creation in WAF service · efd47f51
      qiuqunfeng authored
      - Introduce a label to the ConfigMap for black/white list to enhance identification and management
      - Add logging for the ConfigMap name to improve visibility during configuration creation
      efd47f51
  4. 17 Mar, 2025 2 commits
  5. 14 Mar, 2025 4 commits
  6. 11 Mar, 2025 1 commit
    • qiuqunfeng's avatar
      Add ServiceID to WAF creation and enable listener WAF flow · a4c820e1
      qiuqunfeng authored
      - Extend CreateWafReq struct with ServiceID field
      - Update CreateWaf method to include ServiceID in WAF configuration
      - Implement getServiceID method to retrieve or create WAF service
      - Modify EnableListenerWaf to handle ServiceID retrieval and creation
      - Ensure consistent WAF service tracking across different operations
      a4c820e1
  7. 07 Mar, 2025 4 commits
  8. 06 Mar, 2025 1 commit
    • qiuqunfeng's avatar
      Add Elasticsearch-based WAF attack log and rule listing endpoints · 79468cd7
      qiuqunfeng authored
      - Integrate Elasticsearch client for querying WAF attack logs
      - Add new API endpoints for listing attack logs and WAF rules
      - Implement pagination and filtering for attack log retrieval
      - Support language-based rule category display
      - Update service and controller layers to support new functionality
      79468cd7
  9. 05 Mar, 2025 2 commits
    • qiuqunfeng's avatar
      Add logging for Kafka message consumption · ab374dd5
      qiuqunfeng authored
      - Include informative log message when starting Kafka message consumption
      - Enhance observability of log consumer service startup process
      ab374dd5
    • qiuqunfeng's avatar
      Add Kafka log consumer with dynamic authentication and configuration · b0527e79
      qiuqunfeng authored
      - Implement dynamic Kafka authentication mechanism (PLAIN/SCRAM)
      - Add environment variable-based Kafka broker and authentication configuration
      - Modify log consumer service to support flexible Kafka connection setup
      - Update Elasticsearch store initialization with new index template
      - Extend WAF service types to support listener name and hosts
      b0527e79
  10. 04 Mar, 2025 3 commits
    • qiuqunfeng's avatar
      Add WAF mode to CreateWaf and EnableListenerWaf requests · bb958705
      qiuqunfeng authored
      - Extend CreateWafReq and EnableListenerWafReq structs with Mode field
      - Update CreateWaf method to use requested WAF mode
      - Modify EnableListenerWafs to retrieve and apply WAF mode from existing service
      - Ensure mode is consistently passed through WAF service operations
      bb958705
    • qiuqunfeng's avatar
      Update WAF service mode update to set listener mode · a1ed13b0
      qiuqunfeng authored
      - Add direct mode assignment to listener specification
      - Ensure listener mode is updated during concurrent processing
      - Simplify mode update logic in UpdateMode method
      a1ed13b0
    • qiuqunfeng's avatar
      Improve WAF service mode update with concurrent listener processing · 1d95943f
      qiuqunfeng authored
      - Add synchronization mechanism using sync.WaitGroup
      - Implement concurrent goroutine updates for WAF service listeners
      - Ensure all listener updates complete before returning
      - Create local listener variable to prevent goroutine closure issues
      1d95943f
  11. 03 Mar, 2025 6 commits
    • qiuqunfeng's avatar
      Enhance WAF service mode update with listener synchronization · 0fabf210
      qiuqunfeng authored
      - Implement concurrent listener mode updates for WAF services
      - Add client retrieval and listing of listeners by gateway name
      - Return updated WAF service metadata after mode modification
      - Improve error handling for client and listener operations
      0fabf210
    • qiuqunfeng's avatar
      Fix listener host parsing in EnableListenerWafs method · bf474a69
      qiuqunfeng authored
      - Add error logging for listener list retrieval
      - Modify host extraction to use substring before port separator
      - Improve error handling and logging in WAF service method
      bf474a69
    • qiuqunfeng's avatar
      Refactor EnableListenerWaf method and remove host column from WAF services table · 4bb0b53d
      qiuqunfeng authored
      - Commented out database operations in `EnableListenerWaf` method
      - Simplified WAF creation and deletion logic using request parameters
      - Removed `host` column from `waf_services` table migration
      - Updated logging to use request parameters instead of listener object
      4bb0b53d
    • qiuqunfeng's avatar
      Add listener details to WAF service response · 75afb8d4
      qiuqunfeng authored
      - Modify `WafService` struct to include listener information
      - Update `GetWaf` method to retrieve and format listener details
      - Enhance `ListListenerWafStatus` to return hosts for each listener
      - Remove commented-out code and unused port list logic
      75afb8d4
    • qiuqunfeng's avatar
      Update listener port parsing in WAF service · 286f81ee
      qiuqunfeng authored
      - Modify comment to clarify port extraction from `HostsAndPort` field
      - Improve code readability by updating inline documentation
      286f81ee
    • qiuqunfeng's avatar
      Update WAF service types and migration for listener configuration · 055b870b
      qiuqunfeng authored
      - Modify `ListenerWaf` struct to use single `HostsAndPort` field instead of separate `Hosts` and `Port`
      - Update `EnableListenerWafsReq` to use `ListenerWaf` slice for listeners
      - Change `waf_services` table migration to use `BIGINT` and `AUTO_INCREMENT`
      - Adjust `EnableListenerWafs` method to parse new listener format
      - Add logging for listener name during WAF configuration
      055b870b
  12. 01 Mar, 2025 3 commits
    • qiuqunfeng's avatar
      Refactor WAF service creation and error handling · 7ba7c191
      qiuqunfeng authored
      - Improve CreateWaf method by adding validation for rule count
      - Update error messages in cluster client retrieval
      - Return WafService struct with basic metadata on successful creation
      - Remove commented-out legacy code
      - Enhance error handling in DeleteListenerWaf and CreateWaf methods
      7ba7c191
    • qiuqunfeng's avatar
      Implement Kafka log consumer with Elasticsearch and database integration · 22159493
      qiuqunfeng authored
      - Add log consumer service to process WAF detection messages
      - Implement message handling with JSON unmarshaling
      - Save WAF detection logs to Elasticsearch
      - Update WAF service attack number in database
      - Modify ESStore to support bulk indexing with channel-based approach
      - Add constants for Kafka topics and Elasticsearch indices
      22159493
    • qiuqunfeng's avatar
      Add name field to ListenerWaf struct and update dependencies · 6f4bd708
      qiuqunfeng authored
      - Added `Name` field to `ListenerWaf` struct in `internal/service/types.go`
      - Updated Go module dependencies, adding Elasticsearch client library
      - Removed `CreateListener` method from `waf.go` service
      6f4bd708
  13. 28 Feb, 2025 2 commits
    • qiuqunfeng's avatar
      Switch from YAML to JSON configuration and rule files · ea21cd21
      qiuqunfeng authored
      - Updated config loading in `cmd/app/config.go` to use JSON instead of YAML
      - Modified `internal/service/waf.go` to read WAF rules from JSON file
      - Removed YAML library imports and replaced with JSON unmarshaling
      - Updated file extensions from `.yaml` to `.json` in file reading logic
      ea21cd21
    • qiuqunfeng's avatar
      Refactor EnableListenerWafs to support new listener format · 59201340
      qiuqunfeng authored
      - Updated `EnableListenerWafsReq` struct to use string slice for listeners
      - Modified WAF service method to parse listener string into hosts and port
      - Simplified listener WAF configuration logic to work with new listener representation
      - Added error handling for port parsing and listener format validation
      59201340
  14. 26 Feb, 2025 1 commit
    • qiuqunfeng's avatar
      Add support for bulk listener WAF configuration · 20c5b6e6
      qiuqunfeng authored
      - Introduced new API endpoint and service method to enable/disable WAF for multiple listeners
      - Updated router, controller, and service to support bulk listener WAF operations
      - Added new request type `EnableListenerWafsReq` to handle multiple listener configurations
      - Implemented logic to add or remove WAF configurations for specific listeners based on input
      20c5b6e6
  15. 18 Feb, 2025 2 commits