Enterprise-level License management system and method
Through the enterprise-level license management system, centralized data management, standardization of authorization and timeliness of information are realized, complex data dispersion and management in the existing technology are solved, and the efficiency and legality and compliance of enterprise software asset management are improved.
Patent Information
- Application Number
- CN202510426964.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-07
- Publication Date
- 2025-07-08
AI Technical Summary
The existing technology has problems in the management of enterprise licenses, such as data dispersion, inconsistent format, lack of unified management platform, insufficient data integration governance, insufficient openness to external interfaces, lack of timing synchronization functions, and incomplete automatic inspection and operation and maintenance alarm mechanisms, resulting in complex management, increased costs and increased legal risks.
It provides an enterprise-level license management system, including data acquisition and integration module, authorization management module, interface management module, synchronization management module and inspection and operation and maintenance module, to realize centralized data management, standardization of authorization, security of information interactions within and outside the system, timely license information and timely handling of abnormalities.
It has realized the automation, standardization and refinement of enterprise license management, improved the efficiency of software asset management, ensured legal and compliant operations, and reduced management costs and legal risks.
Smart Images

Figure CN120277640A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of information management, and in particular to an enterprise-level License management system and method. Background Art
[0002] With the rapid development of information technology, the number and types of software used by enterprises in the operation process are increasing continuously. As an authorization certificate for legal use of software, the management of software License is crucial for the compliance operation, cost control and optimal allocation of software assets of enterprises. Enterprises need to ensure that, on the premise of legal compliance, they make full use of software resources, avoid problems such as License abuse, waste or expiration, and at the same time adapt to the changing business requirements and technical environment. In the field of enterprise software management today, License management faces many challenges. With the expansion of enterprise scale and the increase of software applications, the management of License becomes complex and critical.
[0003] Chinese Patent Application CN201811506446.6 discloses a License management method, which mainly focuses on License request processing according to information such as the manufacturer identification of the target contract to reduce License waste, but lacks functions such as comprehensive data integration governance and external interface opening.
[0004] Chinese Patent Application CN201110162279.X discloses a management method and device for functional License, which focuses on the loading and encryption processing verification of plaintext License and ciphertext License, and does not cover overall enterprise-level multi-faceted management requirements such as timed synchronization and docking with third-party platforms.
[0005] Chinese Patent Application CN201310139994.0 discloses a License management method based on text watermarking, which mainly focuses on user registration, License text generation and a series of authorization-related judgments, and has deficiencies in operation and maintenance warning and automated inspection of large-scale systems.
[0006] It can be seen that existing technical solutions are mostly designed for a specific aspect of License management. For example, some focus on contract processing, some on encryption verification, and some on authorization judgment. However, in actual business operations, enterprises need a comprehensive management system that can integrate data, open interfaces, achieve timed synchronization, connect to third-party platforms, conduct automated inspections, and issue effective operation and maintenance alerts. Individually, they cannot meet the complex and comprehensive License management needs of enterprises and have limitations in actual application scenarios. For example, there is poor compatibility when connecting to third-party platforms, and it is impossible to smoothly integrate with external resources. The automated inspection and operation and maintenance alert mechanisms are not sound, making it difficult to detect and handle License-related problems in a timely manner, affecting the operation efficiency of enterprises and increasing costs.
[0007] Existing technologies have defects in data integration and governance. License management in enterprises is scattered in various departments and systems, lacking a unified management platform and standardized management processes. This makes it difficult to conduct effective data analysis and decision support. Moreover, the data storage formats are diverse, scattered, and inconsistent, making it difficult to integrate and analyze, and unable to provide an overall accurate view of License information for enterprises.
[0008] Especially, the License management methods provided by different software vendors vary, increasing the difficulty of unified management for enterprises. Therefore, existing License management lacks effective means in data integration and governance, making it difficult to integrate data from different sources and formats, resulting in data chaos and an inability to accurately grasp the overall situation of Licenses. In addition, due to insufficient opening of external interfaces, the ability to interact and cooperate with other systems is restricted, unable to meet the growing needs of enterprises in the digital ecosystem. On the other hand, the lack of a timed synchronization function makes License information updates untimely, which may lead to usage risks. There is poor compatibility when connecting to third-party platforms, and external resources cannot be fully utilized. The automated inspection and operation and maintenance alert mechanisms are not perfect, unable to detect and solve License problems in a timely manner, affecting the normal operation of enterprises and increasing management costs and legal risks. The purpose of the present invention is to provide an enterprise-level License management system and method that are comprehensive, efficient, and reliable, overcome the above-mentioned drawbacks of the prior art, realize the automation, standardization, and refinement of License management, improve the efficiency and effectiveness of enterprise software asset management, and ensure the legal and compliant operation of enterprises. Summary of the Invention
[0009] To solve the above problems, the purpose of the present invention is to provide an enterprise-level License management system and method that are comprehensive, efficient, and intelligent, realize the standardization, automation, and refinement of License management, and improve the level of enterprise software asset management.
[0010] According to one aspect of the present invention, an enterprise-level License management system is provided, characterized in that the management system includes: A data collection and integration module, responsible for collecting License data from different sources and in different formats within the enterprise, and through data cleaning, transformation and integration, storing it as metadata in a unified format to provide an accurate data basis for subsequent management; An authorization management module, which realizes the functions of License registration, authorization content management, and billing rule formulation, and at the same time has an expiration reminder function, and sends alarms to relevant personnel through various reminder methods according to customized rules; An interface management module, which provides OpenApi interfaces externally to support external systems to call and query License information; provides frontApi interfaces internally to facilitate internal system interaction, and at the same time has an interface security management mechanism to ensure data interaction security; A synchronization management module, which realizes the function of scheduled synchronization with a third-party platform to ensure timely update of License information; supports synchronization with other internal systems of the enterprise to maintain data consistency; An inspection and operation and maintenance module, which regularly conducts automated inspections on the License usage situation; when abnormal situations are found, it triggers operation and maintenance alarms to notify relevant personnel to handle them in a timely manner.
[0011] Optionally, the authorization management module is further used to customize the license expiration alarm rule according to the License authorization valid time and the current time; The license expiration alarm rule includes an alarm name, an alarm level, an alarm strategy, and an alarm event.
[0012] Optionally, the reminder methods for the authorization management module to send alarms include text messages, emails, phone calls, outbound video calls, system internal messages, and / or third-party interfaces.
[0013] Optionally, the synchronization management module includes: A configuration management database CMDB synchronization unit, which synchronizes data with the enterprise's CMDB to ensure that the software information, device information, etc. in the License management system are consistent with the data in the CMDB; An application programming interface API synchronization unit, which synchronizes data with other relevant systems through the application programming interface API; the other relevant systems include a financial system and a human resources system.
[0014] Optionally, the authorization management module includes: An authentication unit, which authenticates the users or devices using the software to ensure that only legally authorized users or devices can use the software; Authorization unit, which grants users or devices the permission to use software, including determining the software version, functional modules, and usage period that can be used; Configuration unit, which configures parameters related to authorization; the parameters related to authorization include authorization policies and authorization rules; Trial unit, which manages the trial authorization of software, including setting the trial period and trial function limitations, and simultaneously records trial situations, such as trial users and trial time; Limit quantity unit, which limits the usage quantity of software.
[0015] Optionally, the system further includes: Software information management module, which is used to manage the software information of different software within the enterprise.
[0016] Optionally, the software information management module includes: Purchase entry unit, which enters the software information purchased by the enterprise into the system; Query unit, which provides the query function for software information; Software registration unit, which registers the software into the system, including manual registration and interface registration.
[0017] Optionally, the system further includes: Order management module, which is used to manage software procurement orders, including order creation, order approval, and order execution status tracking; Record order-related information, including order number, software name, procurement quantity, procurement price, supplier, order placement time, and estimated delivery time.
[0018] Optionally, the system further includes: External procurement management module, which manages the software information purchased from external sources and records the relevant information of the supplier.
[0019] According to another aspect of the present invention, there is provided an enterprise-level License management method using the enterprise-level License management system described in any one of the above, characterized in that the method includes: Information collection and integration: The data collection and integration module obtains License data from various departments of the enterprise, software suppliers, etc., and stores it in the system database after processing; Authorization and management: The authorization management module performs registration and authorization operations according to the License information purchased by the enterprise. Users query through the interface or apply for using the License through the internal process of the system, and the system performs approval and authorization allocation according to the authorization rules; Information synchronization: The synchronization management module synchronizes data with the third-party platform and the internal system at a predetermined time interval or trigger condition to ensure the timeliness and accuracy of the License information; Patrol and Alarm: The patrol and operation and maintenance module regularly patrols the License usage situation. When abnormalities are detected, relevant personnel are notified through corresponding reminder methods according to the alarm rules.
[0020] The enterprise-level License management system and method of the present invention are based on a unified data model and management process, achieve centralized management of data through data collection and integration. The authorization management module controls the usage rights of Licenses according to preset rules. The interface management module realizes information interaction inside and outside the system. The synchronization management module ensures the timeliness of data. The patrol and operation and maintenance module actively monitors problems and gives timely alarms, thereby comprehensively improving the enterprise License management level.
[0021] Through the following detailed description of specific embodiments of the present invention in conjunction with the drawings, those skilled in the art will become more clear about the above and other objects, advantages and features of the present invention. Brief Description of the Drawings
[0022] By reading the following detailed description of the preferred embodiments, various other advantages and benefits will become clear to those of ordinary skill in the art. The drawings are only for the purpose of showing the preferred embodiments and are not considered to be a limitation of the present invention. Moreover, throughout the drawings, the same reference numerals are used to represent the same components. In the drawings: Figure 1 is a schematic structural diagram of the enterprise-level License management system according to an embodiment of the present invention; Figure 2 is a schematic application architecture diagram of the enterprise-level License management system according to an embodiment of the present invention; Figure 3 is a schematic License system diagram of the enterprise-level License management system according to an embodiment of the present invention; Figure 4 is a schematic functional system diagram of the enterprise-level License management system according to an embodiment of the present invention. Detailed Embodiments
[0023] The following describes the embodiments of the present invention in conjunction with the drawings. Those skilled in the art should understand that these embodiments are only used to explain the present invention and are not restrictive.
[0024] Figure 1 is a schematic structural diagram of the enterprise-level License management system according to an embodiment of the present invention. As Figure 1 shown, the enterprise-level License management system according to an embodiment of the present invention may include: a data collection and integration module, an authorization management module, an interface management module, a synchronization management module, and a patrol and operation and maintenance module.
[0025] I. Data Collection and Integration Module The data collection and integration module is responsible for collecting License data from different sources and formats within the enterprise. Through data cleaning, transformation, and integration, it stores the data as metadata in a unified format, providing an accurate data foundation for subsequent management. In practical applications, various data collection tools and algorithms can be adopted.
[0026] 1. Data Collection - Sources and Methods (1)Multi-source data access Structured data: Connect to the enterprise database (such as MySQL, Oracle) through the JDBC / ODBC protocol to obtain License table data.
[0027] Semi-structured data: Parse JSON / XML files (such as License authorization files provided by software vendors).
[0028] Unstructured data: Use OCR technology or text parsing tools to process License information in PDF / Excel.
[0029] (2)Real-time and batch collection Real-time collection: Listen for License change events of third-party systems (such as SAP) through API monitoring (such as Webhook).
[0030] Batch collection: Use scheduled tasks (such as CronJob) to pull historical data files from FTP servers or shared directories.
[0031] 2. Data Cleaning - Core Steps (1)Duplicate removal Duplicate removal based on primary key: Use license_id or hash value (such as MD5(field combination)) as the unique identifier to delete duplicate records.
[0032] Duplicate removal within a time window: If the same License is reported multiple times within 1 hour, only keep the latest version.
[0033] (2)Format verification Date format: Force the conversion of non-standard dates (such as 2023 / 12 / 31 → 2023-12-31), and mark invalid dates as exceptions.
[0034] Numeric verification: Check if the authorized quantity is an integer, and trigger an alarm for negative or null values.
[0035] (3)Missing value handling Fill with default values: If the Vendor field is missing, automatically complete it based on the historical data associated with Software_Name.
[0036] Association completion: Obtain device information through the enterprise CMDB (configuration management database) and complete fields such as Host_IP.
[0037] 3. Data conversion---unified metadata model (1) Metadata field definition { "license_id":"LIC-001", "type":"Permanent", "expiry_date":"2024-12-31", "vendor":"Microsoft", "authorized_content":["Windows_Server","SQL_Server"], "usage_quota":100 } (2) Conversion Engine Rule Engine Mapping: Use Apache Jolt or custom scripts to map fields from different sources to standard fields.
[0038] Example: Change the authorization expiry date in Excel to expiry_date and the manufacturer to vendor.
[0039] Data type conversion: string values (such as "100") are converted to integers, and Boolean values (such as "yes / no") are converted to true / false.
[0040] Technical implementation examples: Using Python Pandas to process Excel data: df['expiry_date']=pd.to_datetime(df['authorization expiration date'],errors='coerce') df.rename(columns={'厂家':'vendor'},inplace=True) 4. Data Integration---Strategy and Conflict Resolution (1) Data merging Horizontal merging: The same license information from different sources (such as from a database and an API) retains the latest record by timestamp.
[0041] Vertical expansion: Supplement missing fields (such as obtaining deployment location information from CMDB).
[0042] (2) Conflict resolution Priority Strategy: The data provided by the vendor has a higher priority than the internally entered data.
[0043] Manual Review: When there are conflicts in the key fields (such as usage_quota), a work order is triggered to notify the administrator for confirmation.
[0044] Integration Example: -- Merge database and API data INSERT INTO license_metadata SELECT FROM db_licenses ON CONFLICT(license_id) DO UPDATE SET expiry_date = EXCLUDED.expiry_date, vendor = CASE WHEN EXCLUDED.source ='vendor_api' THEN EXCLUDED.vendor ELSE license_metadata.vendor END; 5. Metadata Storage and Management (1)Storage Architecture Distributed Database: Use an Elasticsearch cluster to store standardized metadata, supporting high-concurrency queries. Its sharding strategy is to shard by vendor to ensure physical concentration of data from the same vendor.
[0045] Index Optimization: Create composite indexes, such as creating a joint index on (vendor, expiry_date) to accelerate filtering by vendor and expiration time. Support full-text retrieval, such as performing word segmentation indexing on the authorized_content field to support fuzzy queries (such as searching for licenses containing SQL).
[0046] (2)Version Control Change History: Each data update generates a new version, recording the operator, timestamp, and change content.
[0047] Rollback Mechanism: Support restoring to any historical version through the _version field.
[0048] The data collection and integration module in this embodiment provides the following functions: (1)Standardized Data Output: Provide a unified REST API interface (such as GET / licenses?vendor=Microsoft) for downstream systems to call.
[0049] (2)Data Quality Report: Generate cleaning statistical reports (such as deduplication rate, proportion of missing fields) to assist in continuously optimizing the process.
[0050] Through the above process, the data collection and integration module has realized the full-link automated processing from multi-source heterogeneous data to standardized metadata, laying a reliable data foundation for enterprise-level License management.
[0051] The data collection and integration module can also provide information management functions to comprehensively manage various information within the system, including user information, operation records, data change records, etc., ensuring the integrity, accuracy, and security of the information, providing data support for the operation and management of the system, and facilitating the tracing and auditing of operations and data changes within the system.
[0052] The data collection and integration module can also provide an information query function. Through the frontapi (internal call) or openapi (external call) interface, it can accurately or vaguely search for the required result list based on information such as id, license name, company, patent type, type, and the application software to which it belongs.
[0053] II. License Management Module The license management module realizes functions such as License registration, authorization content management (including software list and version, etc.), and billing rule formulation. It also has an expiration reminder function, which can send warnings to relevant personnel through multiple reminder methods (such as text messages, emails, phone calls, outbound video calls, system internal messages, third-party interfaces, etc.) according to custom rules (such as warning after remaining X months, continuous warning in the last N days, warning on the day of expiration, etc.).
[0054] The license management module is also used to customize the license expiration warning rules based on the License authorization expiration time and the current time. The license expiration warning rules include warning name, warning level, warning strategy, and warning event. The reminder methods for the license management module to send warnings include text messages, emails, phone calls, outbound video calls, system internal messages, and / or third-party interfaces, and reminders are made before the software License expires according to user settings and software authorization situations. The customized license expiration warning rules can be shown in the following table.
[0055]
[0056] In practical applications, the expiration reminder rules and reminder methods can be adjusted and extended according to enterprise needs, such as adding reminder rules for specific business scenarios.
[0057] In addition, it can be docked with the message notification center, connected to the enterprise's message notification center, and centrally manage and send reminder messages. Ensure that reminder messages can be conveyed to relevant personnel in a timely and accurate manner, helping the enterprise to handle software License expiration issues in a timely manner and avoid software inaccessibility or compliance risks caused by License expiration.
[0058] In an alternative embodiment of the present invention, the authorization management module may include the following functional units.
[0059] An authentication unit that authenticates the identity of users or devices using the software to ensure that only legally authorized users or devices can use the software; confirm its legality through a verification mechanism (such as username / password, digital certificate, etc.), thereby ensuring the security of software use and preventing unauthorized access and use.
[0060] An authorization unit that grants users or devices the right to use the software, including determining the software version, functional modules, usage period, etc. that can be used. Purpose: Reasonably allocate software resources to ensure that the enterprise uses the software within a legal scope.
[0061] A configuration unit that configures parameters related to authorization; parameters related to authorization include authorization policies, authorization rules, etc. It can be flexibly configured according to the enterprise's organizational structure and business needs. Purpose: Meet the diverse software usage needs of the enterprise and improve the flexibility of authorization management.
[0062] 1. Definition of Authorization Policies and Rules Authorization policy: A macro management policy formulated by the enterprise according to business needs, for example: Trial version limit: The trial License can be activated on a maximum of 5 devices and is valid for 30 days.
[0063] Allocation by department: The R & D department can access advanced functions, and the administrative department is only limited to basic functions.
[0064] Dynamic expansion: When the number of online users reaches the 80% threshold, automatically apply for a temporary License.
[0065] Authorization rule: The specific technical conditions and operation logic for implementing the policy, for example: Rule 1: IFLicense type = trial version THEN maximum activation number = 5 AND validity period = 30 days.
[0066] Rule 2: IF user group = R & D department THEN the authorization module includes ["AI module", "data analysis"].
[0067] 2. Core Functions of the Configuration Unit Parameter Configuration Interface: The administrator defines policies by dragging components or filling out forms through the Web interface. Some examples of fields are as follows: Authorization Type: Permanent, Trial, Pay - as - you - go Subscription.
[0068] User Group: R & D Department, Marketing Department, External Partners.
[0069] Resource Limitations: Number of CPU cores, Storage Capacity, Number of Concurrent Users.
[0070] Rule Engine Integration: Dynamic rule loading mechanism. For example, using the Drools rule engine to parse the configuration and take effect in real - time: / / Rule 1: Trial Version Limit rule "Trial_License_Limit" when $license:License(type == "Trial Version") then $license.setMaxActivations(5); $license.setExpiryDays(30); end / / Rule 2: Advanced Permissions for R & D Department rule "R&D_Advanced_Access" when $user:User(group == "R & D Department") then $user.addAuthorizedModules("AI Module", "Data Analysis"); End Policy Priority and Conflict Resolution: Assign priority values to each rule through priority tags, and rules with higher priorities are executed first. At the same time, through conflict detection, the system automatically exposes information about conflicting rules (such as "The R & D Department is prohibited from commercial use" and "The R & D Department is allowed to use the AI module for commercial use") to the administrator, and manual correction is required.
[0071] 3. Detailed Explanation of Configuration Examples Scenario: A certain enterprise needs to provide a restricted License for "External Partners" with the following specific requirements: Policy 1: Partners can only use basic functions and are prohibited from accessing sensitive modules.
[0072] Policy 2: The License is valid for 7 days and will expire automatically after expiration.
[0073] Rule Configuration Steps: (1) Define the authorization type: Create a "Partner License" in the configuration interface with the type "Temporary".
[0074] (2) Set the validity period: Fill in expiry_days = 7.
[0075] (3) Function module restrictions: Check the allowed modules: ["Basic data query", "Report generation"].
[0076] Check the prohibited modules: ["Customer data export", "System configuration"].
[0077] (4) Generate the rule code: rule "Partner_License_Restriction" when $license: License(type == "Partner") $user: User(role == "External partner") then $user.setAuthorizedModules("Basic data query", "Report generation"); $user.setDeniedModules("Customer data export", "System configuration"); $license.setExpiryDays(7); End (5) Activation and verification After the rule is published, the permissions are automatically loaded when the user logs in. The system log records the authorization results, e.g., User [User_001] passed the permission verification and is prohibited from accessing [Customer data export].
[0078] The trial unit manages the trial authorization of the software, including setting the trial period and trial function restrictions, and also records the trial situation, such as trial users and trial time. Purpose: To facilitate enterprises to evaluate whether the software meets business requirements before purchasing the software and to control the trial risks at the same time.
[0079] The limit quantity unit restricts the usage quantity of the software, etc. Purpose: To ensure that enterprises use the software according to the purchased License quantity and prevent overuse.
[0080] In addition to the above introduction, the authorization management module of this embodiment can also implement the function of prohibiting commercial use. For some software, restrictions on prohibiting commercial use are set. By technical means, the usage scenarios of the software are monitored to prevent illegal use. Purpose: Ensure that enterprises comply with software usage agreements and avoid legal risks.
[0081] Prohibit modification to prevent users from making unauthorized modifications to the software, including modifying software code, configuration files, etc. It is achieved through technical means (such as software encryption, digital signatures, etc.). Purpose: Ensure the integrity and security of the software and prevent malicious tampering.
[0082] III. Interface Management Module The interface management module provides OpenApi interfaces externally to support external systems to call and query License information; it provides frontApi interfaces internally for convenient interaction between internal systems, and also has an interface security management mechanism to ensure data interaction security.
[0083] IV. Synchronization Management Module The synchronization management module realizes the timed synchronization function with third-party platforms to ensure the timely update of License information; it supports synchronization with other internal enterprise systems (such as CMDB) to maintain data consistency. Among them, the addresses of third parties are configured in the platform, including: 1. The License management platform of external software suppliers; 2. Cloud service platforms; 3. Partner or customer systems; 4. Other external service interfaces.
[0084] The synchronization management module can include: a configuration management database CMDB synchronization unit and an application programming interface API synchronization unit.
[0085] The configuration management database CMDB synchronization unit synchronizes data with the enterprise's CMDB to ensure that software information, device information, etc. in the License management system are consistent with the data in CMDB; for example, when the device information in CMDB changes, it is synchronized to the License management system to ensure the accuracy of software authorization.
[0086] The application programming interface API synchronization unit synchronizes data with other relevant systems through the application programming interface API; for example, synchronizing software procurement and expense information with the enterprise's financial system, and synchronizing employee information with the human resources system for software authorization allocation, etc. It realizes maintaining the consistency and timeliness of data between systems, avoiding data islands, and improving the overall coordination of enterprise information systems.
[0087] In actual applications, the synchronization process can be as follows: 1. The License management platform of external software suppliers The official License management interfaces or systems provided by software vendors. Example: (1) Microsoft VLSC (Volume Licensing Service Center): The official platform for managing Microsoft volume licenses.
[0088] (2) Oracle License Management Services (LMS): A license compliance management tool provided by Oracle.
[0089] Synchronization scenarios: Periodically pull the latest License activation records, validity period changes, and other data from the vendor platform.
[0090] Send the License usage status within the enterprise back to the vendor platform for compliance auditing.
[0091] 2. Cloud service platforms Management interfaces that provide resources and services in a public cloud or hybrid cloud environment. Example: (1) AWS License Manager: Manages software licenses on the cloud (such as Windows Server, SQL Server).
[0092] (2) Azure Hybrid Benefit: Synchronizes the License usage status between on-premises and the cloud to optimize costs.
[0093] Synchronization scenarios: Real-time synchronize the License allocation of cloud resources (such as the Windows License status of ECS instances).
[0094] Dynamically adjust the License quota according to the scaling of cloud resources.
[0095] 3. Partner or customer systems Systems used by external partners with business dealings with the enterprise. Example: (1) Customer self-built system: Provides an interface for docking License usage reports for large customers.
[0096] Synchronization scenarios: Synchronize the License application data of partners to the enterprise approval system.
[0097] Push License expiration reminders and usage statistical reports to the customer system.
[0098] 4. Other external service interfaces General third-party services that interact through APIs or file transfer protocols. Example: (1) Message notification platform: Push License alerts to third-party IM tools (such as Slack, DingTalk).
[0099] Synchronization scenarios: Send reminders via WeChat / SMS service interfaces before the License expires.
[0100] After successful subscription renewal, automatically synchronize the payment status to the License management system.
[0101] The synchronization strategy and trigger conditions of the synchronization management can be optimized according to the actual situation. For example, real-time synchronization or event-triggered synchronization methods can be adopted. This embodiment does not make specific limitations on it.
[0102] V. Inspection and Operation and Maintenance Module The inspection and operation and maintenance module regularly conducts automated inspections on the License usage situation, checks the authorization status, usage period, compliance, etc.; when abnormal situations are found, it triggers operation and maintenance alerts to notify relevant personnel to handle them in a timely manner. The inspection algorithms and alert thresholds in the inspection and operation and maintenance module can be customized and modified according to the characteristics of enterprise software usage.
[0103] The detailed process and examples of the automated inspection of the inspection and operation and maintenance module are as follows.
[0104] 1. Inspection Objectives and Scope (1) Authorization status: Verify whether the License is activated, expired, or revoked.
[0105] (2) Usage period: Check the remaining days of the validity period and identify Licenses that are about to expire.
[0106] (3) Compliance: Ensure that the License usage does not exceed the limit (such as the number of concurrent users, the number of device bindings).
[0107] (4) Configuration consistency: Check whether the License allocation matches the device / user information in the CMDB.
[0108] 2. Example: Inspection of Microsoft SQL Server License Scenario: An enterprise uses 10 SQL Server Enterprise Licenses, and each License supports 20-core CPUs. Its inspection process is as follows: (1) Data collection Obtain the License list and bound EC2 instance information from the AWS License Manager.
[0109] Obtain the CPU core usage data of each instance from the Prometheus monitoring system.
[0110] (2) Compliance Check It is found that a certain EC2 instance uses 24 cores, exceeding the 20-core limit of a single license.
[0111] (3) Alarm and Handling Trigger an emergency alarm and notify the operation and maintenance team. Automatically create a temporary license expansion work order and allocate additional licenses to cover the over-limit resources.
[0112] 2. Example of the inspection report: ## License Inspection Report (October 25, 2024) - Total inspections : 150 licenses - Abnormal situations : - Expired licenses: 2 (urgent handling required) - Over-limit usage: 1 (SQLServerLicenseID: LIC-005) - Unactivated licenses: 5 - Suggested operations : 1. Renew the expired licenses (LIC-001, LIC-002).
[0113] 2. Adjust the SQLServer instance configuration or expand the license.
[0114] In addition to the above introduction, as Figure 2 shown, the enterprise-level license management system of the embodiments of the present invention may further include a software information management module, an order management module, and an external procurement management module.
[0115] The software information management module is used to manage the software information of different software within the enterprise. The software information management module includes: A purchase entry unit that enters the software information purchased by the enterprise into the system; it includes software name, version, purchase quantity, purchase time, supplier information, etc. Purpose: Establish a basic database of the enterprise's software assets for subsequent management and query.
[0116] A query unit that provides a query function for software information; users can query relevant software information through keywords such as software name, version, and supplier. Purpose: Facilitate enterprise managers to quickly obtain software-related information for software asset management and decision-making.
[0117] Software registration unit, which registers software into the system, including manual registration and interface registration.
[0118] Manual registration requires the management staff to input software-related information to complete the registration process. Purpose: For some special cases or software that does not support automatic registration, provide a manual registration method to ensure that the software can be incorporated into the management system.
[0119] OpenApi interface registration uses the open application programming interface (OpenApi) to achieve automatic software registration. Software vendors or enterprise internal systems can automatically input software information into the management system by calling OpenApi. Purpose: Improve the efficiency and accuracy of software registration, reduce the workload and error rate of manual operations.
[0120] Order management module, which is used to manage software purchase orders, including order creation, order approval, and order execution status tracking; record order-related information, including order number, software name, purchase quantity, purchase price, supplier, order placement time, estimated delivery time, etc. Purpose: Ensure the standardization and transparency of the enterprise software procurement process, facilitate the tracking and management of the software procurement process, and control procurement costs.
[0121] External procurement management module manages software information purchased from outside and records relevant information of the supplier. As Figure 3 shown.
[0122] Software information manages software information purchased from outside. In addition to basic software name, version and other information, it also includes special requirements and usage restrictions of externally purchased software. Purpose: Conduct specialized management of externally purchased software to ensure that externally purchased software meets enterprise requirements and compliance requirements.
[0123] Manufacturer information records relevant information of software suppliers (manufacturers). It includes manufacturer name, contact information, cooperation history, credit evaluation, etc. Purpose: Facilitate communication and cooperation between enterprises and software suppliers, and at the same time evaluate the reliability and service quality of suppliers.
[0124] Customer information, if the enterprise is a customer of the software supplier, records its own relevant information as a customer. It includes the enterprise's own needs, usage feedback, problem feedback, etc. Purpose: Strengthen communication and collaboration between enterprises and software suppliers, and promote software suppliers to improve products and services.
[0125] Figure 3 Specifically shows the architecture of a License system and the relationships between various modules.
[0126] 1. Authorization Management System AMS Function: As the core management module of the entire License system, it is responsible for handling various operations and management tasks related to License.
[0127] Related modules: It interacts with modules such as CMDB (Configuration Management Database), existing license repository, Registration, Authorization, and Authentication.
[0128] 2. CMDB (Configuration Management Database) Function: Stores and manages configuration information related to software, hardware, users, etc., providing basic data support for other modules.
[0129] Related modules: It has data interaction with modules such as the Authorization Management System AMS, metadata, and existing license repository.
[0130] 3. Existing license repository Function: Responsible for entering existing License information into the system for unified management and use.
[0131] Related modules: There is data flow with modules such as the Authorization Management System AMS, CMDB, and Registration.
[0132] 4. Metadata Function: Describes and defines the structure, type, and relationships of various data in the system, providing a basis for data management and use.
[0133] Related modules: It interacts with modules such as CMDB, existing license repository, and Registration.
[0134] 5. Registration Function: Handles the registration operations of users or systems, generating and managing registration information (such as registration DTO).
[0135] Related modules: It has data interaction with modules such as the Authorization Management System AMS, existing license repository, and metadata.
[0136] 6. Authorization Function: Responsible for authorizing users or systems, managing information such as authorization content and association relationships.
[0137] Related modules: It interacts with modules such as the Authorization Management System AMS, Registration, and Authentication.
[0138] 7. Authentication Function: Verify the identity of users or systems to ensure their legality and security.
[0139] Associated modules: There is data flow with modules such as the Authorization Management System AMS, Authorization, and Encryption and Decryption Configuration.
[0140] 8. Encryption and Decryption Configuration Function: Provide the configuration and management of encryption and decryption to ensure data security.
[0141] Associated modules: Interact with modules such as Authentication, Software Information, and Manufacturer Information.
[0142] 9. Software Information Function: Store and manage software-related information, such as software ID, name, version, registration code, signature information, etc.
[0143] Associated modules: Have data interaction with modules such as Encryption and Decryption Configuration, the core of the License system, and Manufacturer Information.
[0144] 10. Manufacturer Information Function: Record and manage manufacturer-related information of software, such as company name, products, serial numbers, start and end times, etc.
[0145] Associated modules: Interact with modules such as Software Information, the core of the License system, and Operation and Maintenance Management.
[0146] 11. Operation and Maintenance Management Function: Responsible for the daily maintenance and management of the system, including operations such as expiration reminders and limit settings.
[0147] Associated modules: There is data flow with modules such as the core of the License system, Manufacturer Information, and reminder methods.
[0148] 12. Reminder Methods Function: Define and manage various reminder methods, such as emails, text messages, machine voice calls, etc., for notifying users of relevant important information.
[0149] Associated modules: Interact with modules such as Operation and Maintenance Management and the core of the License system.
[0150] 13. Core of the License System Function: As the core part of the entire License system, integrate and coordinate the functions of each module to ensure the normal operation of the system.
[0151] Related modules: interact with all modules such as software information, manufacturer information, encryption and decryption configuration, authentication, authorization, etc.
[0152] Data element explanation License Type: indicates different types of licenses, such as buyout and limited-term.
[0153] Scope of application: defines the scope of use of the license, such as user, single project, etc.
[0154] Purchase method: describes the method by which users obtain the license, such as payment method, date, number of times, and number of months.
[0155] Measurement method: Specifies the measurement unit of the license, such as year, month, or day.
[0156] Billing rules: specify the billing method and standard of the license.
[0157] Restrictions: Various restrictions on the use of the license, such as prohibition of commercial use, prohibition of modification, and quantity limit.
[0158] Open source code: Indicates whether users are allowed to access and modify source code.
[0159] Signature information: digital signature information used to verify the authenticity of software or license.
[0160] Symmetric encryption, asymmetric encryption: types of encryption algorithms used for data security protection.
[0161] Public key management, private key management: manage the public and private keys used in the encryption and decryption process.
[0162] Figure 3 Through the display of various modules and data elements, the architecture and workflow of a complete license system are clearly depicted, which helps to understand and design similar systems.
[0163] The enterprise-level license management system of the embodiment of the present invention can implement server deployment or container Docker deployment. Figure 4 The relationship between the modules in the overall architecture of the system is shown. The modules work together to implement various functions of license management.
[0164] like Figure 4 As shown in the figure, the configuration management database (CMDB), license inventory management, third-party platforms, etc. can be used as external systems. Modules such as the License database, Id matching, and Cloud Dataflow are responsible for processing and managing License-related business processes and can form the internal system of AMS. The AMS application system, as the core system, is responsible for processing business processes such as License applications, management, and distribution, and interacts with multiple external systems and internal modules.
[0165] The License database stores and manages License-related data and supports data query and update operations of the AMS application system. Id matching may be responsible for user authentication or data matching work to ensure data consistency and accuracy. Cloud Dataflow is used to process large-scale data streams and may involve operations such as data cleaning, transformation, and analysis.
[0166] The embodiment of the present invention also provides an enterprise-level License management method for the enterprise-level License management system as described above. The method includes: Information collection and integration: The data collection and integration module obtains License data from various departments of the enterprise, software suppliers, etc., and stores it in the system database after processing.
[0167] Authorization and management: The authorization management module performs operations such as registration and authorization according to the License information purchased by the enterprise. Users query through the interface or apply for using the License through the internal process of the system, and the system approves and allocates authorization according to the authorization rules.
[0168] Information synchronization: The synchronization management module synchronizes data with third-party platforms and internal systems at a predetermined time interval or trigger condition to ensure the timeliness and accuracy of License information.
[0169] Inspection and alarm: The inspection and operation and maintenance module regularly inspects the License usage situation. When anomalies (such as approaching expiration, exceeding the usage limit, etc.) are detected, relevant personnel are notified through corresponding reminder methods according to the alarm rules.
[0170] The enterprise-level License management system and method of the present invention have the following technical effects: 1. Data integration and governance technology realizes the unified management of License data from different sources and formats within the enterprise. It provides a comprehensive and accurate view of License information, facilitating effective software asset management and decision-making for the enterprise.
[0171] 2. A flexible and configurable authorization management mechanism, including customizing expiration reminder rules and multiple reminder methods, helps the enterprise handle issues such as License expiration in a timely manner, avoid risks, and improve operational efficiency.
[0172] 3. External interface opening and security management technology, which ensures the interaction ability and data security between the system and external systems, enhances the collaboration among enterprise systems, and enables the enterprise to better adapt to the development of the digital ecosystem.
[0173] 4. Timed synchronization technology, which ensures the timely update of License information with third-party platforms and internal systems.
[0174] 5. Automated inspection and operation and maintenance warning technology, which actively monitors and processes License-related issues. It can not only detect and solve problems in a timely manner, but also reduce management costs and legal risks, and ensure the legal and compliant use of enterprise software assets.
[0175] The above are only the preferred embodiments of the present invention. The protection scope of the present invention is not limited to the above embodiments. All technical solutions falling within the idea of the present invention belong to the protection scope of the present invention. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and refinements should also be regarded as the protection scope of the present invention.
Claims
1. An enterprise-level License management system, characterized in that, The management system includes: A data collection and integration module, which is responsible for collecting License data from different sources and in different formats within the enterprise, and through data cleaning, transformation, and integration, storing it as metadata in a unified format to provide an accurate data basis for subsequent management; An authorization management module, which realizes the functions of License registration, authorization content management, and billing rule formulation, and at the same time has an expiration reminder function, and sends alarms to relevant personnel through multiple reminder methods according to custom rules; An interface management module, which provides an OpenApi interface externally to support external systems to call and query License information; and provides a frontApi interface internally to facilitate internal system interaction, and at the same time has an interface security management mechanism to ensure data interaction security; A synchronization management module, which realizes the timed synchronization function with a third-party platform to ensure the timely update of License information; supports synchronization with other internal systems of the enterprise to maintain data consistency; An inspection and operation and maintenance module, which regularly conducts automated inspections on the License usage situation; when an abnormal situation is found, it triggers an operation and maintenance alarm to notify relevant personnel to handle it in a timely manner.
2. The enterprise-level License management system according to claim 1, wherein The authorization management module is also used to customize the license expiration alarm rules according to the License authorization validity time and the current time; The license expiration alarm rules include an alarm name, an alarm level, an alarm strategy, and an alarm event.
3. The enterprise-level License management system according to claim 2, wherein The reminder methods for the authorization management module to send alarms include text messages, emails, phone calls, outbound video calls, system internal messages, and / or third-party interfaces.
4. The enterprise-level License management system according to claim 1, wherein The synchronization management module includes: A configuration management database CMDB synchronization unit, which synchronizes data with the enterprise's CMDB to ensure that software information, device information, etc. in the License management system are consistent with the data in the CMDB; An application programming interface API synchronization unit, which synchronizes data with other relevant systems through the application programming interface API; other relevant systems include a financial system and a human resources system.
5. The enterprise-level License management system according to claim 1, wherein, The authorization management module includes: An authentication unit, which authenticates the users or devices using the software to ensure that only legally authorized users or devices can use the software; An authorization unit, which grants the permission to use the software to users or devices, including determining the software version, function modules, and usage period that can be used; A configuration unit, which configures the parameters related to authorization; the parameters related to authorization include authorization policies and authorization rules; A trial unit, which manages the trial authorization of the software, including setting the trial period and trial function limitations, and at the same time records the trial situation, such as trial users and trial time; A limit quantity unit, which limits the number of software uses.
6. The enterprise-level License management system according to any one of claims 1-5, characterized in that, The system also includes: A software information management module, which is used to manage the software information of different software within the enterprise.
7. The enterprise-level License management system according to claim 6, wherein, The software information management module includes: A purchase entry unit, which enters the software information purchased by the enterprise into the system; A query unit, which provides a query function for software information; A software registration unit, which registers the software into the system, including manual registration and interface registration.
8. The enterprise-level License management system according to any one of claims 1-5, characterized in that The system also includes: An order management module, which is used to manage software purchase orders, including order creation, order approval, and tracking of order execution status; Record order-related information, including order number, software name, purchase quantity, purchase price, supplier, order placement time, and estimated delivery time.
9. The enterprise-level License management system according to any one of claims 1-5, characterized in that The system further includes: An external procurement management module, which manages software information purchased from external sources and records relevant information of the suppliers.
10. An enterprise-level License management method using the enterprise-level License management system according to any one of claims 1-9, characterized in that, The method includes: Information collection and integration: The data collection and integration module obtains License data from various departments of the enterprise, software suppliers, etc., and stores it in the system database after processing; Authorization and management: The authorization management module performs registration and authorization operations based on the License information purchased by the enterprise. Users query through the interface or apply for using the License through the internal process of the system, and the system approves and allocates authorizations according to the authorization rules; Information synchronization: The synchronization management module synchronizes data with third-party platforms and internal systems at a predetermined time interval or trigger condition to ensure the timeliness and accuracy of License information; Inspection and alarm: The inspection and operation and maintenance module regularly inspects the usage status of the License. When an anomaly is detected, relevant personnel are notified through corresponding reminder methods according to the alarm rules.
Citation Information
Patent Citations
A method and device for managing a functional license
CN102215131B
A License Management Method Based on Text Watermarking
CN103200010B
A License management method and device
CN109743194A