Configuration management system for customizing superposition and authority control
Through customized overlay and permission-controlled configuration management system, the fragmentation and lack of permission problems in the Kylin system are solved, unified view management and permission control of configuration are achieved, the flexibility and security of the system are improved, and the configuration conflict rate and maintenance cost are reduced.
Patent Information
- Application Number
- CN202511270065.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-08
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2045-09-08
AI Technical Summary
The existing configuration management system in the Kylin system has problems such as deep coupling between code and configuration, fragmented configuration management architecture, lack of permission control mechanism, separation of compilation and runtime configuration, and insufficient configuration change traceability capabilities, making it difficult for the system to meet the high requirements of enterprise-level applications.
A configuration management system with customized overlay and permission control is proposed, which includes configuration management services, shared libraries and tools. It implements unified view management of configuration files through view construction module, hot loading module and notification module. It adopts directory and file name priority sorting and permission verification mechanism, supports real-time integration and conflict resolution of configuration data, and provides permission control and version traceability functions.
It realizes centralized configuration management, dynamic loading, permission control and version traceability, improves the manageability, flexibility and security of system configuration, reduces configuration conflict rate and maintenance costs, and improves system responsiveness and customization efficiency.
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of system configuration, and specifically provides a configuration management system for customization, overlay and authority control. Background Art
[0002] With the acceleration of digital transformation, modern operating systems face multi-layered challenges. They must not only be compatible with diverse hardware ecosystems and meet the business needs of diverse industry scenarios, but also balance functionality expansion with version stability during software iteration. These challenges place higher demands on system configuration management mechanisms.
[0003] Current mainstream configuration file libraries, such as ini, yaml, and json, suffer from numerous shortcomings. Their APIs are complex to use, requiring a high learning curve and compromising application development time. Furthermore, these tools lack real-time notification mechanisms, preventing applications from being notified of configuration changes. Furthermore, each software manages its own configuration files, resulting in fragmented file storage and difficulty in unified management.
[0004] The development of software configuration management modules has gone through several stages, from early configuration management solutions to today's diversified configuration management systems, with continuous technological evolution to better meet user needs. The earliest configuration management solutions were mostly based on text files or simple INI files. These files typically stored configuration information in the form of key-value pairs, and users could directly edit these files to change the configuration. While simple, this approach was prone to errors and lacked flexibility in complex systems. Furthermore, early solutions lacked version control, making configuration changes difficult to trace and recover, and prone to conflicts when multiple users modified the configuration simultaneously.
[0005] As software systems become increasingly complex, various platforms are introducing more flexible and powerful configuration management solutions, such as Linux's KConfig and dconf; the Windows registry; and mechanisms like SharedPreferences and Content Providers to manage application configurations. These configuration systems enhance user-friendliness by providing simple UI tools, streamlining API usage processes to reduce costs, and enabling centralized configuration management.
[0006] Although Kconfig in Linux system provides kernel configuration management functions, the system options are too complicated for novice users. In addition, KConfig does not have built-in support for complex data structures, and the relevant documentation and community support are relatively insufficient, making it difficult for beginners to get started quickly.
[0007] Since Dconf in Linux system uses binary storage, it is difficult for ordinary users to directly view and edit the configuration. It has poor readability and depends on the Gnome environment. It is not cross-platform and has insufficient support for other desktop environments.
[0008] The Windows registry structure is relatively complex, making it easy for ordinary users to become confused when operating it. Improper modifications can lead to system stability issues, and backups are relatively difficult. Android configuration management systems, such as SharedPreferences, are only suitable for simple configurations and are relatively weak in managing large-scale application configurations. Performance can also degrade when data volumes are large or when concurrent access is frequent.
[0009] These shortcomings cause the current Kylin system to face the following problems during project customization, and it cannot meet the high requirements of enterprise-level applications for configuration management.
[0010] 1. Deep coupling between code and configuration: The traditional hard-coding model tightly binds functional modules to business logic, filling the code with numerous conditional branches based on project characteristics. This not only increases code redundancy but also severely hinders the system's agile response to dynamic business scenarios.
[0011] 2. Fragmented configuration management architecture: Existing configuration policies are stored in a variety of media, including registries, files, and databases. They lack unified version control and overwriting strategies, resulting in a low cross-project configuration inheritance rate.
[0012] 3. Lack of a configuration permission control mechanism: The lack of a systematic configuration permission definition and management mechanism makes it impossible to effectively distinguish and control the modification permissions of configurations at different levels. This can easily lead to configuration conflicts and security risks in multi-party collaborative development and maintenance scenarios.
[0013] 4. The separation of compile-time and runtime configuration: The separate management of compile-time macro definitions and runtime configuration makes it difficult to achieve polymorphism in binary deliverables, which directly leads to high maintenance costs for branches of customized and general versions.
[0014] 5. Insufficient configuration change traceability: Existing configuration management solutions lack effective change logging and backtracking mechanisms. When configuration-related issues arise in the system, they are difficult to quickly locate and resolve, increasing the difficulty and risk of operation and maintenance. Summary of the Invention
[0015] In order to overcome the above-mentioned defects, the present invention is proposed to solve the problems of configuration management fragmentation, difficult function customization and low maintenance efficiency in multiple scenarios.
[0016] The present invention proposes a configuration management system for customized overlay and authority control, including configuration management service, configuration management shared library and configuration management tool. The configuration management service is used to build a unified view based on the configuration data of the configuration file, monitor the real-time update of the directory to which the configuration file belongs, and send change signals; The configuration management shared library is connected to the configuration management service information and is used to provide an API interface for communicating with the configuration management service. The API interface is used to read the data of each field in the configuration data from the unified view built by the configuration management service, register and subscribe to change signals with the service, and modify the configuration value; The configuration management tool is connected to the configuration management service and the configuration management shared library, and includes a command line tool, a configuration file conversion tool, a compatibility detection tool, and a visual management tool, which are used to assist the execution of the configuration management service and the configuration management shared library.
[0017] Furthermore, the configuration management service includes a view construction module, a hot loading module and a notification module connected in sequence.
[0018] Furthermore, the view construction module is used to convert the scattered configuration strategies in the configuration file into a unified view. The view construction module implements configuration file sorting in sequence through three processes: configuration file sorting, configuration file parsing, and generating a unified view. It parses the configuration file to obtain configuration data and generates a unified view based on the configuration data.
[0019] Furthermore, the configuration file sorting uses a sorting algorithm based on directory priority, file number priority, and ASCII character order to sort the configuration files in the system; The directory priority sorting algorithm includes ascending order according to the directory weight value preset by the user, and the configuration files of the high priority directory will overwrite the configuration files of the low priority directory; The file numerical priority and ASCII character order sorting algorithm includes defining a file name specification for the configuration file, naming it in a number-character file name format, and sequentially scanning the configuration files in each directory through the configuration management service. After each directory is scanned, the configuration files in the directory are sorted. The sorting rule is: extracting the numerical level corresponding to the numbers in the file name through a regular expression, and prioritizing the ascending order of the numerical level. If the numerical levels are the same, the characters in each file name without the numbers are compared through a string comparison algorithm, and sorted according to ASCII character order. Finally, an ordered list of configuration files with low priority first and high priority last is obtained.
[0020] Furthermore, when the configuration file is parsed: Secondary development based on the libyaml-cpp parsing library adds logic for extracting and marking the application name, version number, and permission during the parsing of YAML configuration files. During parsing, the root node app_name is verified to contain the version field as a child node. The permission stack mechanism automatically inherits and marks permission fields at all levels. Use path tracing to record the absolute location of each child node, and finally output the application name, version number, and permission mapping table with path as configuration data.
[0021] Furthermore, generating a unified view includes: Sorting the configuration files into an ordered list, recursively read the configuration data from each configuration file and overwrite it with the corresponding field in the unified view. If the field is new, the corresponding configuration data is directly added to the unified view. During the overwriting process, permission verification and conflict resolution mechanisms are used to control the merging and overwriting process. The purpose of the permission check is to add dual permission definitions to each configuration file, namely, superposition control permission and configuration modification permission; The conflict resolution mechanism arbitrates conflicts that arise in unified configuration data in different configuration files.
[0022] Furthermore, the permission check adds superposition control permission and configuration modification permission to each configuration file. The overlay control authority includes: For configuration items marked with final, they are locked when first encountered in the merge chain, and are skipped in subsequent files. For configuration items marked with stable, they are locked after the system-level overwrite is completed, and the user-level file skips the configuration item; For untagged configuration items, release the overlay; The configuration modification permissions include: For configuration items with public, any user can modify them; For configuration items with private, the operator's identity is verified through the RBAC module when modifying them.
[0023] Furthermore, the hot reload module monitors changes in the configuration file storage directory through inotify, triggers difference merging when the file changes, and notifies the view construction module to execute a unified view generation process for the difference configuration files.
[0024] Furthermore, the notification module is used to send a signal to the application program through a socket to notify the unified view of the change after the unified view is updated.
[0025] Furthermore, the configuration management tool includes a command line tool, a configuration file conversion tool, a compatibility detection tool, and a visual management tool; The command line tool manages the configuration data in the unified view by calling the API interface of the configuration management shared library; The configuration file conversion tool supports converting configuration files in ini, conf, json, and schema.xml formats into yaml format; The compatibility detection tool is used to detect whether there is a conflict between the customized file and the baseline file, and supports customers to self-check whether the customized configuration file is compliant; The visual management tool is used to centrally present configuration data in a unified view and supports directory-level display.
[0026] Working principle and beneficial effects of the present invention: In the technical solution of the present invention, the configuration file follows the YAML specification, and adds structure and type constraints on the basis of the YAML format, and controls the access rights of configuration items through metadata tags. Configurations at each level are stored in a predefined system path, forming a clear storage hierarchy to ensure the orderly management and flexible expansion of configuration data. A dynamic view generation service has been developed to achieve real-time integration and conflict resolution of configurations. A standardized and scalable configuration management system is established to achieve centralized management, dynamic loading, permission control and version traceability of configurations, providing a technical foundation for agile customization and version unification of the operating system, and fundamentally improving the manageability, flexibility and security of system configurations. DETAILED DESCRIPTION
[0027] Some embodiments of the present invention are described below. It should be understood by those skilled in the art that these embodiments are only used to explain the technical principles of the present invention and are not intended to limit the scope of protection of the present invention.
[0028] Example 1 This embodiment proposes a configuration management system for customized overlays and permission management. It primarily includes configuration management services, a configuration management shared library, and configuration management tools. Built around the core goal of "configuration-driven business," the entire system offers "one-time build, multi-state delivery" capabilities, supports unified management across hardware platforms and diverse business scenarios, and implements closed-loop management of configurations from definition to execution.
[0029] 1. Configuration Management Service The configuration management service is the core of the configuration management system, including the view construction module, hot loading module and notification module. It is responsible for building a unified view, monitoring the real-time update of the directory, and sending change signals.
[0030] 1.1 View Building Blocks The view building module uses a multi-level policy merging engine to transform scattered configuration policies into a unified runtime view.
[0031] 1.1.1 Configuration File Sorting A three-level priority (directory priority → file numeric priority → ASCII character order) sorting algorithm is used to sort the configuration files in the system.
[0032] (1) Directory priority The directories are sorted in ascending order according to the user-preset directory weight values. The lower the weight value, the lower the priority of the directory, and the higher the weight value, the higher the priority of the directory. The configuration files of the high-priority directory will overwrite the configuration files of the low-priority directory.
[0033] Configuration files are stored in directories including the baseline directory ( / etc / kylin-config / base) and the production line directory ( / etc / kylin-config / industry / ). Users can use the visualization tool to increase or decrease or adjust the directory weight value of the configuration files to change the directory priority.
[0034] (2) File number priority → ASCII character order The file name specification of the configuration file is defined, which is named in the number-letter file name format. The configuration management service will scan the configuration files in each directory sequentially, and sort the configuration files in the directory after scanning each directory.
[0035] The sorting rule is: extract the numerical ranks corresponding to the numbers in the file names through regular expressions, and sort them in ascending order. If the numerical ranks are the same, then use the string comparison algorithm to compare the characters in each file name without the numbers, and sort them in ASCII character order (AZ, az). The sorting algorithm will finally get an ordered list of configuration files with low priority first and high priority last. The final file list is a file list with low numerical priority first and high numerical priority last. For files with the same numerical priority, the first letter with the smallest ACSII code (a) is first and the first letter with the largest ACSII code (z) is last. 1.1.2 Configuration File Parsing All configuration files are parsed through multi-threading. The configuration management system has standardized and enhanced the YAML format configuration files. Based on the original configuration structure, application name and configuration version declaration fields have been added to support more refined configuration management.
[0036] The specific implementation is as follows: Based on the libyaml-cpp parsing library, secondary development has been conducted to add logic for extracting and marking the application name (app_name), version number (version), and permissions (permissions) during the parsing of YAML-formatted configuration files. During parsing, the root node app_name is verified to have a child node with the version field. The permission stack mechanism automatically inherits and marks permission fields at all levels. Sub-configuration items in a configuration group that do not declare permission fields inherit the configuration group's permission fields (sub-nodes can override parent node permissions).
[0037] Use path tracing to record the absolute location of each child node (such as app.version.group.key). (For each configuration item or configuration group, app.version.group.key indicates the absolute path to a key, including the application name, version number, and group names at all levels, representing a branch on a tree.) Finally, output the application name, version number, and permission mapping table with the path as configuration data to ensure the accuracy of permission inheritance and hierarchy. The configuration data is stored in memory for subsequent merging and overwriting to generate a unified view. Furthermore, in the configuration file parsing, a hierarchical verification mechanism is adopted to intercept configuration files that do not declare required fields or have non-compliant formats in real time, and record detailed error logs (including key information such as file path and missing fields).
[0038] 1.1.3 Generating a unified view The system recursively reads the configuration data from each file in the ordered list of configuration files, overwriting it to the corresponding field in the unified view. If the field is new, the corresponding configuration data is directly added to the unified view. During the overwriting process, permission verification and conflict resolution mechanisms are used to control the merge and overwriting process.
[0039] In one embodiment, the role of permission verification is to add dual permission definitions to each configuration file, namely, superposition control permission and configuration modification permission.
[0040] ① Overlay control authority For configuration items marked with final, they are locked when first encountered in the merge chain, and are skipped in subsequent files. For configuration items marked with stable, they are locked after the system-level (files under / etc / kylin-config / ) overwrite is completed, and the user-level files (files under the user directory) skip the configuration file; For untagged configuration items, completely release the overlay.
[0041] ②Configure modification permissions Configuration items marked with public are public configurations and can be modified by any user. For configuration items with private, the operator's identity is verified through the RBAC module when modifying them.
[0042] In one embodiment, the conflict resolution mechanism arbitrates conflicts that arise between unified configuration data in different configuration files.
[0043] When a type conflict occurs, the type declared in the baseline is adopted and the configuration data in the custom file (referring to the configuration files in directories other than the basic directory) is discarded; When a value range conflict occurs, it is automatically clamped to the nearest legal value; When object structure conflicts occur, recursively merge and mark conflicting nodes; When permission conflicts occur, superimposed control permissions follow the principle of final > stable, and configuration modification permissions follow the principle of private > public.
[0044] 1.2 Hot Reloading Modules The hot reload module monitors changes in the configuration file storage directory through inotify, triggers a difference merge when the file changes, notifies the view construction module to execute the unified view generation process for the difference configuration files, and sends a signal to all applications that pay attention to the change through the notification module after the update is completed.
[0045] 1.3 Notification Module The notification module is responsible for sending signals to applications via sockets to notify them of changes in the unified view. The notification module allows applications to subscribe to change signals for specific configuration items. When a configuration item in the unified view changes, a change notification is sent to the applications that have followed that configuration item.
[0046] 2. Configuration management shared library The configuration management shared library provides an API interface for communicating with the configuration management service. The API interface is used to read the data of each field in the configuration data from the unified view built by the configuration management service, register and subscribe to change signals with the service, modify configuration values, etc.
[0047] 3. Configuration Management Tools Configuration management tools include command line tools, configuration file conversion tools, compatibility detection tools, and visual management tools.
[0048] The command-line tool manages the configuration data in the unified view by calling the API interface of the configuration management shared library, such as reading and writing, reloading the unified view, and exporting the view.
[0049] The configuration file conversion tool supports converting configuration files in ini, conf, json, and schema.xml formats into yaml format.
[0050] The compatibility check tool detects conflicts between customized files and baseline files, allowing customers to self-check the compliance of customized configuration files. Baseline files refer to files in the basic directory. Files in directories other than the basic directory are considered customized files. Customized files are configuration files with the same name as baseline files but stored in a customized directory (not the basic directory).
[0051] The visual management tool has the capabilities of a command line tool, which can centrally present configuration data in a unified view and support the selection of hierarchical (i.e. directory level) display, so that the view data superimposed to each level in the superposition process can be viewed.
[0052] Based on the above, a configuration management system with customized overlay and permission control is proposed, which forms a complete configuration management technology system in three aspects: management service, configuration management shared library and configuration management tools.
[0053] First, configuration files are enforced to comply with the YAML specification. Structure and type constraints are added to the YAML format, and access rights to configuration items are controlled through metadata tags. Configurations at each level are stored in predefined system paths, forming a clear storage hierarchy to ensure orderly management and flexible expansion of configuration data.
[0054] Secondly, the present invention develops a dynamic view generation service to achieve real-time configuration integration and conflict resolution. The engine captures configuration file change events in real time through the file monitoring service, adopts a minimized incremental parsing algorithm to improve processing efficiency, and implements an intelligent conflict arbitration strategy to ensure that the system can automatically select the correct configuration value when there are conflicts in multiple configuration sources. The conflict resolution mechanism uses the baseline configuration as a backup guarantee, giving priority to ensuring the smooth operation of the application, while respecting the overwriting rules of high-priority configurations, providing technical support for configuration superposition.
[0055] Finally, this release provides standardized configuration operation interfaces to ensure easy configuration access and management. These interfaces include an application programming interface (API), which supports atomic transaction operations and configuration change event monitoring; a command-line interface (CLI), which provides batch configuration reading and writing, as well as import and export capabilities; and a graphical user interface (GUI), which enables visual configuration management and sandbox simulation. These three layers of interfaces meet the configuration operation needs of different scenarios, greatly improving the convenience and flexibility of configuration management.
[0056] These key protection points together constitute a complete configuration management solution, which fundamentally solves the problems of fragmentation, conflict and maintenance difficulties in traditional configuration management, and provides strong support for agile customization and unified maintenance of the system.
[0057] Furthermore, this embodiment establishes a hierarchical and decoupled configuration management system to achieve precise control and flexible application of configurations, generating multi-faceted technical value.
[0058] In terms of performance, our proprietary, efficient storage architecture, combined with an intelligent caching mechanism, significantly reduces latency in accessing configuration data. Compared to traditional configuration solutions, query speeds are increased by over 15%, and data write efficiency is improved by approximately 5%. This optimization directly improves system responsiveness and user experience.
[0059] In terms of flexibility, the module supports multi-level configuration stacking and custom rule definition, adapting to various configuration scenarios, from simple parameter settings to complex multi-module linkage. Multi-dimensional permission management strategies ensure configuration security and compliance, and configuration changes at different levels will not interfere with each other.
[0060] In terms of maintainability, the unique configuration version backtracking feature enables the system to quickly locate and resolve configuration issues, reducing the system failure rate caused by configuration errors by 80%. The unified configuration view generation mechanism simplifies the management complexity of cross-component configurations and significantly reduces maintenance costs.
[0061] In terms of business value, this module supports a flexible deployment model of "build once, deliver in multiple forms." It dynamically enables and disables functions and optimizes parameters through configuration-driven implementation, significantly improving system customization efficiency. Practice has shown that adopting this module has shortened project customization cycles by 40%, reduced configuration conflicts by 65%, and increased binary homology to over 95%.
[0062] Example 2 Based on the configuration management system for customization, overlay and permission control proposed in Example 1, the system-level application and single application implementation process of the configuration management system are further demonstrated. Taking the power management of Kylin System V10 SP1 as an example, the implementation process first prepares the basic configuration file, defines the sub-functions of power management (sleep, hibernation, shutdown, etc.), and stores them in the baseline directory. When customization is required, copy and modify the configuration file (such as disabling the hibernation function) and store it in the corresponding hierarchical directory (such as the project directory). After the configuration service detects the change, it merges the configuration according to the priority rules (user>domain control>project>production line>baseline), resolves conflicts, and generates a unified view. The application reads this view through the API to execute the corresponding business, realizing function customization without modifying the code, and ensuring binary homologous delivery.
[0063] The present embodiment is described in further detail below: Step 1: Prepare the power management configuration file. This file should follow the unified configuration solution file format and add power management sub-function configuration items, such as sleep, hibernation, shutdown, and restart. These sub-functions should be enabled by default.
[0064] Step 2: Put the configuration file prepared in step 1 into the baseline directory ( / etc / kylin-config / basic).
[0065] Step 3: Copy a power management configuration file and customize the sub-functions. For example, change the sleep function to off.
[0066] Step 4: Place the customized files in the specified directory according to the source of the customization requirements. For example, if the power supply is customized for the project, place it in / etc / kylin-config / project.
[0067] Step 5: The unified configuration solution service detects the configuration file changes in the directory and performs a view update operation.
[0068] Step 6: The unified configuration plan reads the relevant configuration files of the power management function in all directory levels, overwrites the baseline configuration with the customized configuration according to the predetermined hierarchical overlay rules, and updates the new configuration of the power management function to the unified view after resolving the conflict. At this time, the hibernation function in the unified view is turned off.
[0069] Step 7: The power management-related applications in the system modularize the power management code to achieve configuration-driven services, read the configuration data through the tools provided by the unified configuration solution, and execute the corresponding services.
[0070] The technical solutions of the present invention have been described so far. However, it will be readily understood by those skilled in the art that the scope of protection of the present invention is clearly not limited to these specific embodiments. Without departing from the principles of the present invention, those skilled in the art may make equivalent changes or substitutions to the relevant technical features, and the technical solutions after such changes or substitutions will fall within the scope of protection of the present invention.
Claims
1. A configuration management system for customized overlay and authority control, characterized in that: Including configuration management services, configuration management shared libraries and configuration management tools, The configuration management service is used to build a unified view based on the configuration data of the configuration file, monitor the real-time update of the directory to which the configuration file belongs, and send change signals; The configuration management shared library is connected to the configuration management service information and is used to provide an API interface for communicating with the configuration management service. The API interface is used to read the data of each field in the configuration data from the unified view built by the configuration management service, register and subscribe to change signals with the service, and modify the configuration value; The configuration management tool is connected to the configuration management service and the configuration management shared library, and includes a command line tool, a configuration file conversion tool, a compatibility detection tool, and a visual management tool, which are used to assist the execution of the configuration management service and the configuration management shared library.
2. A configuration management system for customized overlay and authority control according to claim 1, characterized in that: The configuration management service includes a view construction module, a hot loading module and a notification module which are connected in sequence.
3. A configuration management system for customized overlay and authority control according to claim 2, characterized in that: The view construction module is used to convert the scattered configuration policies in the configuration file into a unified view. The view construction module implements configuration file sorting, configuration file parsing and unified view generation through three processes in sequence, parses the configuration file to obtain configuration data, and generates a unified view based on the configuration data.
4. A configuration management system for customized overlay and authority control according to claim 3, characterized in that: The configuration file sorting adopts a sorting algorithm of directory priority, file number priority and ASCII character order to sort the configuration files in the system; The directory priority sorting algorithm includes ascending order according to the directory weight value preset by the user, and the configuration files of the high priority directory will overwrite the configuration files of the low priority directory; The file numerical priority and ASCII character order sorting algorithm includes defining a file name specification for the configuration file, naming it in a number-character file name format, and sequentially scanning the configuration files in each directory through the configuration management service. After each directory is scanned, the configuration files in the directory are sorted. The sorting rule is: extracting the numerical level corresponding to the numbers in the file name through a regular expression, and prioritizing the ascending order of the numerical level. If the numerical levels are the same, the characters in each file name without the numbers are compared through a string comparison algorithm, and sorted according to ASCII character order. Finally, an ordered list of configuration files with low priority first and high priority last is obtained.
5. A configuration management system for customized overlay and authority control according to claim 4, characterized in that: When the configuration file is parsed: Secondary development based on the libyaml-cpp parsing library adds logic for extracting and marking the application name, version number, and permission during the parsing of YAML configuration files. During parsing, the root node app_name is verified to contain the version field as a child node. The permission stack mechanism automatically inherits and marks permission fields at all levels. Use path tracing to record the absolute location of each child node, and finally output the application name, version number, and permission mapping table with path as configuration data.
6. A configuration management system for customization, overlay and authority control according to claim 5, characterized in that: Generating a unified view includes: Sorting the configuration files into an ordered list, recursively read the configuration data from each configuration file and overwrite it with the corresponding field in the unified view. If the field is new, the corresponding configuration data is directly added to the unified view. During the overwriting process, permission verification and conflict resolution mechanisms are used to control the merging and overwriting process. The purpose of the permission check is to add dual permission definitions to each configuration file, namely, superposition control permission and configuration modification permission; The conflict resolution mechanism arbitrates conflicts that arise in unified configuration data in different configuration files.
7. A configuration management system for customization, overlay and authority control according to claim 6, characterized in that: The permission check adds superposition control permission and configuration modification permission to each configuration file. The overlay control authority includes: For configuration items marked with final, they are locked when first encountered in the merge chain, and are skipped in subsequent files. For configuration items marked with stable, they are locked after the system-level overwrite is completed, and the user-level file skips the configuration item; For untagged configuration items, release the overlay; The configuration modification permissions include: For configuration items with public, any user can modify them; For configuration items with private, the operator's identity is verified through the RBAC module when modifying them.
8. A configuration management system for customization, overlay and authority control according to claim 2, characterized in that: The hot reload module monitors changes in the configuration file storage directory through inotify, triggers difference merging when the file changes, and notifies the view construction module to execute the unified view generation process for the difference configuration files.
9. A configuration management system for customization, overlay and authority control according to claim 2, characterized in that: The notification module is used to send a signal to the application program through a socket to notify the unified view of the change after the unified view is updated.
10. A configuration management system for customization, overlay and authority control according to claim 9, characterized in that: The configuration management tools include command line tools, configuration file conversion tools, compatibility detection tools and visual management tools; The command line tool manages the configuration data in the unified view by calling the API interface of the configuration management shared library; The configuration file conversion tool supports converting configuration files in ini, conf, json, and schema.xml formats into yaml format; The compatibility detection tool is used to detect whether there is a conflict between the customized file and the baseline file, and supports customers to self-check whether the customized configuration file is compliant; The visual management tool is used to centrally present configuration data in a unified view and supports directory-level display.
Citation Information
Patent Citations
Data synchronization generation method, apparatus, computer apparatus, and storage medium
CN109388676A
Data management system
CN117807617A
Page generation method and device, electronic equipment and readable storage medium
CN119336322A
Intelligent document updating processing method and system
CN120471039A
Synchronized organization directory with team member folders
US10037339B1