WO2015180272A1 - Software licensing method and system - Google Patents
Software licensing method and system Download PDFInfo
- Publication number
- WO2015180272A1 WO2015180272A1 PCT/CN2014/085116 CN2014085116W WO2015180272A1 WO 2015180272 A1 WO2015180272 A1 WO 2015180272A1 CN 2014085116 W CN2014085116 W CN 2014085116W WO 2015180272 A1 WO2015180272 A1 WO 2015180272A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- license
- software
- modification
- protocol
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
Definitions
- the present invention relates to the field of computer technologies, and in particular, to a software licensing method and system. Background technique
- one of the above software licensing technologies corresponds to a license agreement and can only be licensed to the client that matches the license agreement, which will reduce the software license range and increase the software development cost.
- a software licensing method that includes the following steps:
- a software licensing system including:
- a first receiving module configured to receive a software license request of the user end
- a protocol sending module configured to obtain a license agreement in response to the software license request, and send the license agreement to the user end;
- a second receiving module configured to determine a modification protocol according to the modification request, and send the modification protocol to the UE;
- a protocol modification module configured to receive an acceptance instruction of the modification protocol by the client, and use the modification protocol as a final license agreement;
- the third receiving module is configured to send the license information to the client.
- the software license method and system in response to a request for modification of a license agreement by a client, determine a modification protocol according to the modification request, and use the modified protocol as a final license agreement after receiving an acceptance instruction of the modification protocol by the user end.
- Software licenses allow the same software to be licensed to different clients under different license agreements, thereby increasing the software license and reducing software development and service costs.
- a software licensing method that includes the following steps:
- a software licensing system including:
- a first sending module configured to send a software license request to the license end
- a license agreement receiving module configured to receive a license agreement of the license end
- a second sending module configured to acquire a modification request for the license agreement when the license agreement does not satisfy a preset protocol acceptance condition, and send the request to the permission end;
- Modifying a protocol receiving module configured to receive a modification protocol of the permission end
- a third sending module configured to send an accepting instruction to the modifying protocol to the permission end when the modifying protocol satisfies the preset protocol accepting condition
- the license information receiving module is configured to receive the license information of the license end.
- the software license method and system when the license agreement does not satisfy a preset protocol acceptance condition, send a modification request to the license agreement to the license end, and when the license modification protocol satisfies the preset protocol acceptance condition Send an accept command to the license side, receive the license information of the license side, and implement the license.
- the software license can be obtained, and the license-side software license can be obtained by a modification agreement different from the original license agreement, which can expand the software selection range and reduce the license cost.
- FIG. 1 is a schematic flowchart of a first embodiment of a software licensing method according to the present invention
- FIG. 2 is a schematic flowchart of a second embodiment of a software licensing method according to the present invention.
- FIG. 3 is a schematic structural diagram of a first embodiment of a software licensing system according to the present invention.
- FIG. 4 is a schematic structural diagram of a second embodiment of a software licensing system according to the present invention.
- FIG. 5 is a schematic flowchart diagram of a third embodiment of a software licensing method according to the present invention.
- FIG. 6 is a schematic flowchart of a fourth embodiment of a software licensing method according to the present invention.
- FIG. 7 is a schematic structural diagram of a third embodiment of a software licensing method according to the present invention.
- FIG. 8 is a schematic structural diagram of a fourth embodiment of a software licensing method according to the present invention.
- FIG. 9 is a schematic structural diagram of a first implementation environment of a software license method according to an embodiment of the present invention
- FIG. 10 is a schematic structural diagram of a second implementation environment of a software license method according to an embodiment of the present invention
- FIG. 12 is a block diagram of a computer system capable of implementing an embodiment of the present invention. detailed description
- the components and components of the present invention may be present in a single form or in multiple forms, and the invention is not limited thereto, unless the context clearly dictates otherwise.
- the steps in the present invention are arranged by reference numerals, but are not intended to limit the order of steps. The relative order of the steps may be adjusted unless the order of the steps is explicitly stated or the execution of a step requires other steps as a basis. It will be understood that the term "and/or" as used herein relates to and encompasses any and all possible combinations of one or more of the associated listed items.
- FIG. 1 is a schematic flowchart diagram of a first embodiment of a software licensing method according to the present invention.
- the software licensing method of this embodiment is preferably an operation flow on the license side, and includes the following steps:
- Step S101 Receive a software license request of the client.
- Step S102 Acquire a license agreement in response to the software license request, and send the license agreement to the client.
- Step S103 Receive a modification request of the user terminal for the license agreement.
- Step S104 Determine a modification protocol according to the modification request, and send the modification protocol to the UE.
- Step S105 Receive an acceptance instruction of the modification protocol by the client, and use the modification protocol as a final license agreement.
- Step S106 Send permission information to the client.
- the software license method in response to the modification request of the user terminal to the license agreement, determines the modification protocol according to the modification request, and after receiving the acceptance instruction of the modification protocol by the user end, the modification protocol is
- the final license agreement for software license allows the same software to be licensed to different clients under different license agreements, thereby increasing the software license range and reducing software development and service costs.
- the user terminal is preferably a running terminal of the software to be licensed, such as a desktop computer, a notebook, a personal digital assistant, a smart phone, a tablet computer, a portable media player, a large-sized wall-mounted display device, etc., for step S101. It can also be a server for deploying the operating environment of the software to be licensed.
- the permission request may be an application for deploying an operating environment of the software to be licensed, may include a software identifier of the software to be licensed, and may further include an identifier (host name or network address) of the user end.
- the user of the user terminal is preferably a main body, a government department, a school, an individual, and the like that can construct a cloud computing environment.
- the cloud computing environment includes a public cloud mode, a private cloud mode, a hybrid cloud mode, a community cloud mode, and the like.
- the method before the step of receiving the software license request of the client, the method further includes the following steps:
- the service information of the software to be licensed is pushed to the target network, so that the user can query the service information of each software and perform software selection.
- the service information may include function information of the software to be licensed or a service that can be provided.
- Place The license software may be software that can provide cloud services, and the service information may be cloud service information.
- service information of the software to be licensed may also be displayed on the target network in the form of a service directory.
- the service information of the software to be licensed may also be pushed to the cloud server of the client or the license end.
- the pre-existing license agreement of the corresponding software may be invoked as a license agreement corresponding to the software license request according to the software identification or the correspondence between the license request and the software to be licensed in the software license request.
- the modification request may include a modification proposal or a modified protocol content of the license agreement.
- the modification protocol may be generated in real time according to the modification request, and the pre-stored other software protocol different from the license agreement may be invoked as the modification protocol according to the modification request.
- the modification request After receiving the modification request, determining whether the modification request satisfies a preset protocol modification condition, if yes, determining a modification protocol according to the modification request, and sending the modification protocol to the user end.
- the user may send a prompt for changing the modification request.
- the step of determining a modification protocol based on the modification request and transmitting to the client includes the following steps:
- the modification protocol is determined according to the modification data, and is sent to the client; if not, the prompt for changing the modification request is sent to the client.
- the modification request may be prompted by the user end when the modification request of the user end does not satisfy the preset protocol modification range.
- the corresponding protocol data of the license agreement may be directly replaced by the modified data, and a modification protocol may be generated, or the protocol data corresponding to the modified data may be retrieved from the pre-stored protocol database to replace the correspondence of the license agreement.
- Protocol data generate modification protocol, and also retrieve from the modified protocol library The modification protocol corresponding to the modified data.
- the accepting instruction is used to identify that the modified protocol meets the requirements of the client.
- the modification protocol is used as a final license agreement
- the final license agreement is a license agreement of the software to be licensed corresponding to the client.
- the licensed software can store different final license agreements for different clients.
- the method before receiving the step of the client accepting the modification protocol, the method further includes the following steps:
- the modification protocol is determined according to the modification request, and is sent to the client.
- the modification protocol after receiving the modification request of the modification protocol by the UE, the modification protocol may be modified again.
- the license information is preferably a license credential for the licensed client to use the corresponding software.
- license information may be generated in advance according to different modification protocols in the modified protocol library, or new license information may be generated in real time according to the final license agreement.
- the step of transmitting the license information to the client may further comprise the step of: storing the modification protocol as a final license agreement to license the corresponding software to the client.
- the generated license information is transmitted to the client.
- the corresponding software is software requested by the software license request.
- the usage information may include usage information such as charging criteria of the software at the user end, number of user registrations, number of online users, number of concurrent users, and the like.
- the license information may include the user information and credential information using the software.
- the corresponding information in the installation package of the corresponding software may be modified according to the final license agreement.
- the security management mechanism can support third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
- FIG. 2 is a schematic flowchart diagram of a second embodiment of the software licensing method of the present invention.
- the software licensing method of the present embodiment differs from the first embodiment in that: after acquiring the license information in which the modification protocol is a license agreement and transmitting the information to the client, the following steps are further included:
- Step S201 Send a deployment instruction of the software running environment to the client, where the deployment instruction includes configuration information of an operating environment of the software.
- Step S202 receiving a deployment completion instruction of the client, and permitting the client to download and install the corresponding software.
- the user terminal is allowed to download and install the corresponding software, so that the user terminal can monitor and manage the software application.
- the operating environment of the software may include the software environment and the hardware environment.
- the software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as office, and may also include a third-party runtime library. , such as DotNet, DirectX, etc.
- the hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
- the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
- the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
- the downloading program of the software may be started by the software download manager, and the user is permitted to download and install the corresponding software.
- the method further includes the following steps:
- the software charging program for the client is started by using the final license agreement as a charging protocol.
- the number of users of the software at the user end and the duration of use are recorded, and the user terminal is charged according to a modification protocol as a license agreement.
- FIG. 3 is a schematic structural diagram of a first embodiment of the software licensing system of the present invention.
- the software license system of the present embodiment is preferably an operating system on the license side, including a first receiving module 110, a protocol sending module 120, a second receiving module 130, a protocol modifying module 140, a third receiving module 150, and License module 160, wherein:
- the first receiving module 110 is configured to receive a software license request of the client.
- the protocol sending module 120 is configured to obtain a license agreement in response to the software license request, and send the license agreement to the user.
- the second receiving module 130 is configured to receive a modification request of the user terminal to the license agreement.
- the protocol modification module 140 is configured to determine a modification protocol according to the modification request, and send the protocol to the client.
- the third receiving module 150 is configured to receive an accepting instruction of the modification protocol by the user end, and use the modified protocol as a final license agreement.
- the license module 160 is configured to send the license information to the client.
- the software license system in response to the modification request of the user terminal to the license agreement, determines the modification protocol according to the modification request, and after receiving the acceptance instruction of the modification protocol by the user end, the modification protocol is
- the final license agreement for software license allows the same software to be licensed to different clients under different license agreements, thereby increasing the software license range and reducing software development and service costs.
- the user terminal is preferably a running terminal of the software to be licensed, such as a desktop computer, a notebook, a personal digital assistant, a smart phone, a tablet computer, a portable media player, a large-sized wall display.
- a device, etc. may also be a server for deploying an operating environment of the software to be licensed.
- the permission request may be an application for deploying an operating environment of the software to be licensed, may include a software identifier of the software to be licensed, and may further include an identifier (host name or network address) of the user end.
- the user of the user terminal is preferably a main body, a government department, a school, an individual, and the like that can construct a cloud computing environment.
- the cloud computing environment includes a public cloud mode, a private cloud mode, a hybrid cloud mode, a community cloud mode, and the like.
- a push module is further included for pushing service information of the software to be licensed to the target network.
- the service information of the software to be licensed is pushed to the target network, so that the user can query the service information of each software and perform software selection.
- the service information may include function information of the software to be licensed or a service that can be provided.
- the software to be licensed may be software capable of providing a cloud service
- the service information may be cloud service information.
- service information of the software to be licensed may also be displayed on the target network in the form of a service directory.
- the service information of the software to be licensed may also be pushed to the cloud server of the client or the license end.
- the pre-stored license agreement corresponding to the software may be invoked as a license agreement corresponding to the software license request according to the software identifier in the software license request or the correspondence between the license request and the license software.
- the modification request may include a modification suggestion or a modified protocol content of the license agreement.
- the modification protocol may be generated in real time according to the modification request, and the pre-stored other software protocol different from the license agreement may be invoked as a modification protocol according to the modification request.
- the modification request After receiving the modification request, determining whether the modification request satisfies a preset protocol modification condition, if yes, determining a modification protocol according to the modification request, and sending the modification protocol to the user end.
- the user may send a prompt for changing the modification request.
- the protocol modification module 140 can be used to:
- the modification protocol is determined according to the modification data, and is sent to the client; if not, the prompt for changing the modification request is sent to the client.
- the modification request may be prompted by the user end when the modification request of the user end does not satisfy the preset protocol modification range.
- the corresponding protocol data of the license agreement may be directly replaced by the modified data, and a modification protocol may be generated, or the protocol data corresponding to the modified data may be retrieved from the pre-stored protocol database to replace the correspondence of the license agreement.
- the protocol data, the modification protocol is generated, and the modification protocol corresponding to the modification data may also be retrieved from the modification protocol library.
- the accepting instruction is used to identify that the modified protocol meets the requirements of the client.
- the modification protocol is used as a final license agreement
- the final license agreement is a license agreement of the software to be licensed corresponding to the client.
- the licensed software can store different final license agreements for different clients.
- the method further includes a modification determining module, configured to:
- the modification protocol is determined according to the modification request, and is sent to the client.
- the modification protocol after receiving the modification request of the modification protocol by the UE, the modification protocol may be modified again.
- the license information is preferably a license credential for the licensed client to use the corresponding software.
- license information may be generated in advance according to different modification protocols in the modified protocol library, or new license information may be generated in real time according to the final license agreement.
- the license module 160 can also be used to:
- the modification protocol is stored as a final license agreement to license the corresponding software to the client.
- the generated license information is transmitted to the client.
- the corresponding software is software requested by the software license request.
- the usage information may include usage information of software, such as charging criteria, number of user registrations, number of online users, number of concurrent users, and the like.
- the license information may include the user information and credential information using the software.
- the corresponding information in the installation package of the corresponding software may be modified according to the final license agreement.
- the security management mechanism supports third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
- FIG. 4 is a schematic structural diagram of a second embodiment of the software licensing system of the present invention.
- the software licensing system of the present embodiment differs from the first embodiment in that it may further include a software delivery module 170, which may be used to:
- the operating environment of the software may include both a software environment and a hardware environment.
- the software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as an office, and may also include a third party. Run the library, such as DotNet, DirectX, etc.
- the hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
- the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
- the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
- the software delivery module 170 can initiate a download process of the software through the software download manager, permitting the client to download and install the corresponding software.
- the charging module may be further configured to start a software charging procedure for the client by using the modification protocol as a charging protocol.
- the number of users of the software at the user end and the duration of use are recorded, and the user terminal is charged according to a modification protocol as a license agreement.
- FIG. 5 is a schematic flowchart diagram of a third embodiment of the software licensing method of the present invention.
- the software licensing method of the present embodiment is preferably an operation flow on the user side, and may include the following steps:
- Step S501 sending a software license request to the license end.
- Step S502 Receive a license agreement of the license end.
- Step S503 If the license agreement does not satisfy the preset protocol acceptance condition, obtain a modification request for the license agreement, and send the request to the permission end.
- Step S504 receiving a modification protocol of the permission end.
- Step S505 If the modification protocol satisfies the preset protocol acceptance condition, send an acceptance instruction to the modification protocol to the permission end.
- Step S506 receiving license information of the license end.
- the software license method of the present embodiment sends a modification request for the license agreement to the license end when the license agreement does not satisfy the preset protocol acceptance condition, and the modification protocol of the license end satisfies the preset protocol acceptance condition.
- the license information is received, the license-side license is implemented, and the license is granted to the software by a modification protocol different from the initial license agreement, the software selection range can be extended, and the license cost can be reduced.
- the license end may be a management server that manages the software to be licensed or a providing server that generates the software to be licensed.
- a management server that manages the software to be licensed
- a providing server that generates the software to be licensed.
- desktops notebooks, personal digital assistants, tablets, and more.
- the method prior to the step of transmitting a software license request to the license, the method further includes the steps of:
- the software for satisfying the preset requirement information is found by the target network, where the service information of each software is stored in the target network.
- the software that satisfies the user's needs can be quickly found through the network, and the permission request is made.
- the preset requirement information may include service information that can be provided by software required by the user.
- the service catalog displayed by the target network may also be used to find software that meets the preset requirement information.
- the software that meets the preset requirement information may be found by receiving the service information of the pushed software to be licensed or the cloud server of the license end.
- the modification request may be generated in real time, and the pre-stored modification request may be directly retrieved.
- obtaining a modification request for the license agreement, and sending the request to the permission end includes the following steps:
- the protocol modification box is displayed.
- the license agreement may be modified in real time to transmit the modification suggestion of the user end to the license end.
- the trigger event for the protocol modification button may preferably be a cursor or a touch point move-in event of the area where the protocol modification button is located.
- the license agreement and the protocol accept button, the protocol reject button, and the protocol modification button corresponding to the license agreement may be displayed on the user end, and a trigger event for the protocol accept button is obtained. Then, an acceptance instruction for the license agreement is sent, and when a trigger event for the protocol rejection button is obtained, a rejection instruction for the license agreement is sent.
- the modification data is triggered by a user input.
- determining that the license agreement does not satisfy a preset protocol acceptance condition may display a protocol modification option, obtain a trigger event for the protocol modification option, and generate a tamper request including the protocol modification option.
- the triggering event of the license agreement may also be obtained, and if the triggering event is obtained, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, the protocol modification option is displayed, and the protocol modification option is obtained. Trigger event, generating a modification request including the protocol modification option.
- the protocol modification option may be a modification proposal for the license agreement, or may be a data content after modifying the corresponding protocol content of the license agreement.
- obtaining a modification request for the license agreement, and sending the request to the permission end includes the following steps:
- step S504 before receiving the modification protocol of the permission end, receiving the prompt of the change modification request of the permission end, receiving the prompt, displaying the request modification box, receiving the modification data inputting the request modification frame, and generating the modification including the modification A request for modification of data is sent to the license side.
- the permission of the license agreement may be sent to the permission end.
- an accepting instruction input by the user may be received, and an accepting instruction may also be generated by comparing the modified protocol and the preset protocol accepting condition.
- the modified protocol is stored as a license agreement.
- the step of transmitting an acceptance instruction to the modification protocol to the permission terminal includes the following steps:
- the license information of the license end is preferably the license information of the final license agreement with the accepted modification protocol, and upon receiving the license information, it may further verify whether the license information is the license agreement with the accepted modification protocol. If not, an alert reminder is sent to the license end to obtain license information with the modified protocol as a license agreement.
- the security management mechanism can support third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
- FIG. 6 is a schematic flowchart diagram of a fourth embodiment of the software licensing method of the present invention.
- the software license method of this embodiment differs from the third embodiment in that: after receiving the license information of the license side, the method further includes the following steps:
- Step S601 Receive a deployment instruction of a software running environment, where the deployment instruction includes configuration information of an operating environment of the software.
- Step S602 Perform deployment of a software running environment on the user end according to the configuration information.
- Step S603 If the deployment of the software running environment is completed, send a deployment completion instruction to the permission end, and download and install the corresponding software.
- the deployment completion instruction is sent to the permission end, and the corresponding software is downloaded and installed, so that the user terminal can monitor and manage the software application.
- the operating environment of the software may include the software environment and the hardware environment in step S601.
- the software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as office, and may also include a third-party runtime library. , such as DotNet, DirectX, etc.
- the hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
- the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
- the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
- the software environment and the hardware environment may be deployed on the user end according to the configuration information.
- the step of deploying the software running environment on the user end according to the configuration information includes the following steps:
- virtual machine deployment in a cloud computing environment is performed on the user end.
- the virtual machine deployment can be performed according to the standardized configuration technology of the virtual machine in the cloud computing environment.
- the step of installing the corresponding software is downloaded, the following steps are further included:
- the accepted modification protocol is a charging protocol, and the software charging program for the user end is started at the user end.
- the software can be monitored and managed on the user end.
- the license side may also be notified to terminate the license to the software and uninstall the virtual machine at the user end.
- the modification protocol may be a charging protocol, and the software charging program is started at the user end.
- FIG. 7 is a schematic structural diagram of a third embodiment of the software licensing system of the present invention.
- the software license system of the present embodiment is preferably an operating system on the user side, and may include a first sending module 210, a license agreement receiving module 220, a second sending module 230, a modifying protocol receiving module 240, and a third sending.
- Module 250 and license information receiving module 260 wherein:
- the first sending module 210 is configured to send a software license request to the license end.
- the license agreement receiving module 220 is configured to receive the license agreement of the license end.
- the second sending module 230 is configured to obtain a modification request for the license agreement when the license agreement does not satisfy the preset protocol acceptance condition, and send the request to the license end.
- the modification protocol receiving module 240 is configured to receive the modification protocol of the permission end.
- the third sending module 250 is configured to send an accepting instruction to the modifying protocol to the permission end when the modifying protocol satisfies the preset protocol accepting condition.
- the license information receiving module 260 is configured to receive the license information of the license end.
- the software license system of the present embodiment sends a modification request for the license agreement to the license end when the license agreement does not satisfy the preset protocol acceptance condition, and the modification protocol of the license end satisfies the preset agreement acceptance condition.
- the license information is received, the license-side license is implemented, and the license is granted to the software by a modification protocol different from the initial license agreement, the software selection range can be extended, and the license cost can be reduced.
- the permission end may be a management server that manages software to be licensed or a providing server that generates software to be licensed.
- a management server that manages software to be licensed
- a providing server that generates software to be licensed.
- desktops notebooks, personal digital assistants, tablets, and more.
- a query module is further included for:
- the software for satisfying the preset requirement information is found by the target network, where the service information of each software is stored in the target network.
- the software that satisfies the user's needs can be quickly found through the network, and the permission request is made.
- the preset requirement information may include service information that can be provided by software required by the user.
- the service catalog displayed by the target network may also be used to find software that meets the preset demand information.
- the software that meets the preset requirement information may be found by receiving the service information of the pushed software to be licensed or the cloud server of the license end.
- the license is preferably a license agreement for software that is licensed with the license request.
- the modification request may be generated in real time, and the pre-stored modification request may also be directly retrieved.
- the second sending module 230 can be used to:
- the protocol modification box is displayed.
- the license agreement may be modified in real time to transmit the modification suggestion of the user end to the license end.
- the trigger event for the protocol modification button may preferably be a cursor or a touch point move-in event of the area where the protocol modification button is located.
- the license agreement and the protocol accept button, the protocol reject button, and the protocol modification button corresponding to the license agreement may be displayed on the user end, and a trigger event for the protocol accept button is obtained. Then, an acceptance instruction for the license agreement is sent, and when a trigger event for the protocol rejection button is obtained, a rejection instruction for the license agreement is sent.
- the modification data is triggered by a user input.
- determining that the license agreement does not satisfy a preset protocol acceptance condition may display a protocol modification option, obtain a trigger event for the protocol modification option, and generate a tamper request including the protocol modification option.
- the triggering event of the license agreement may also be obtained, and if the triggering event is obtained, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, the protocol modification option is displayed, and the protocol modification option is obtained. Trigger event, generating a modification request including the protocol modification option.
- the protocol modification option may be a modification proposal for the license agreement, or may be a data content after modifying the content of the corresponding protocol of the license agreement.
- the second sending module 230 can be used to:
- the protocol receiving module 240 For modifying the protocol receiving module 240, before receiving the modification protocol of the permission end, receiving the prompt of the change modification request of the permission end, receiving the prompt, displaying the request modification box, receiving the modification data inputting the request modification frame, and generating The modification request of the modification data is sent to the permission end. Further, after receiving the prompt, the license may be sent an instruction to reject the license agreement.
- the accepting instruction input by the user may be received, and the accepting instruction may also be generated by comparing the modification protocol and the preset protocol accepting condition.
- the modified protocol is stored as a license agreement.
- the third transmitting module 250 can be used to:
- the license information of the license end is preferably the license information of the final license agreement with the accepted modification protocol, and upon receiving the license information, it may be further verified whether the license information is permitted by the accepted modification protocol. protocol. If not, an alert reminder is sent to the license end to obtain license information with the modified protocol as a license agreement.
- the security management mechanism can support third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
- FIG. 8 is a schematic structural diagram of a fourth embodiment of the software licensing system of the present invention.
- the software licensing system of this embodiment differs from the third embodiment in that: a deployment module 270 is further included for:
- deployment of a software running environment is performed at the user end. If the deployment of the software running environment is completed, sending a deployment completion instruction to the permission end, and downloading and installing the corresponding software.
- the deployment completion instruction is sent to the permission end, and the corresponding software is downloaded and installed, so that the user terminal can monitor and manage the software application.
- the operating environment of the software may include both a software environment and a hardware environment.
- the software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as office, and may also include a third-party operation. Libraries, such as DotNet, DirectX, etc.
- the hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
- the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
- the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
- the deployment module 270 can also deploy the software environment and the hardware environment on the user side according to the configuration information. In one embodiment, the deployment module 270 is further configured to perform virtual machine deployment in a cloud computing environment at the user end according to the configuration information.
- the virtual machine deployment can be performed according to the standardized configuration technology of the virtual machine in the cloud computing environment.
- a management module may also be included for:
- the accepted modification protocol is a charging protocol, and the software charging program for the user end is started at the user end.
- the software can be monitored and managed on the user end.
- the license side may also be notified to terminate the license to the software and uninstall the virtual machine at the user end.
- the modification protocol may be a charging protocol, and the software charging program is started at the user end.
- FIG. 9 is a first structural diagram of an implementation environment of a software licensing method according to an embodiment of the present invention.
- the implementation environment shown in FIG. 9 is used to implement the software licensing method according to any embodiment or embodiment of the present invention, including a terminal, a client 2020, and a license terminal 2060.
- the terminal and the license terminal 2060 are connected through a wireless network or a limited network.
- the terminal includes at least one of a terminal device such as a desktop computer, a notebook, a personal digital assistant, a smart phone, a tablet computer, a portable media player, a large-sized wall-mounted display device, and the license terminal 2060.
- a terminal device for implementing the software licensing method of the present invention including a desktop, a notebook, a personal digital assistant, a tablet, and the like.
- the number of the client 2020 and the license terminal 2060 may be two or more.
- the operating procedure of the software license may include:
- Step S901 The client 2020 sends a download and deployment request (software permission request) to the license end 2060 of the found software through an environment such as the Internet or cloud computing (when the software that satisfies the preset demand information is found).
- an environment such as the Internet or cloud computing (when the software that satisfies the preset demand information is found).
- Step S902 After receiving the download and deployment request, the license terminal 2060 sends a license agreement to the client 2020.
- Step S903 After receiving the license agreement, the client 2020 starts the protocol review process, and if there is a suggestion for modification to the license agreement, sends a modification proposal to the license end 2060 to modify the license agreement.
- Step S904 After receiving the modification proposal, the permission end 2060 generates a modification protocol according to the proposal, and sends the modification protocol to the client 2020.
- Step S905 After receiving the modification protocol, the client 2020 starts the protocol review process. If there is a modification suggestion to the modification protocol, the proposal for modifying the modification protocol is sent to the permission end 2060, and if there is no modification suggestion, the user is accepted. The modification protocol sends an accept command to the license terminal 2060.
- Step S906 After receiving the accepting instruction, the license terminal 2060 sends the license information with the modified protocol as the license agreement to the client 2020. If a modification suggestion for the modification protocol is received, step S904 to step S906 are repeatedly executed until the acceptance instruction is received.
- Step S907 After transmitting the license information to the client 2020, the deployment instruction of the software running environment is sent to the client 2020. And start the software download program after receiving the deployment completion command.
- Step S908 After receiving the deployment instruction, the client 2020 is configured according to the configuration information in the deployment instruction.
- the client deploys the software running environment. After the deployment is completed, the deployment completion instruction is sent to the license terminal 2060, and the software is downloaded from the license terminal 2060, and the software is installed at the client terminal 2020. After the software is customized and initialized, it enters the usable state.
- Step S909 After the license of the software is completed, the license mechanism is established and activated on the license end 2060 and the client 2020 by using the accepted modification protocol as the final license agreement.
- the above software licensing method can be used on PaaS, SaaS, cloud security, and cloud support platforms to support end-to-end management in a variety of endpoints and heterogeneous virtual environments.
- the invention can solve the license management mechanism and protocol of various types of software and application services in the cloud computing environment in a unified mode, and will make the automatic deployment of software and application services and user self-service become feasible.
- Schematic diagram
- the implementation environment shown in FIG. 10 is used to implement the software licensing method according to any embodiment or embodiment of the present invention.
- the difference from the first structure of the implementation environment of the software licensing method of the embodiment of the present invention is: the license terminal P includes software delivery.
- the server and the license management server, the client U r U M may include a software deployment server and a software management server, respectively.
- the license management server of the license terminal P performs the operation flow in the above steps 902, 904, 906, and 909 instead of the license terminal 2060.
- the software delivery server of the license terminal P performs the operation flow of the above step 907 instead of the license terminal 2060.
- the software management server of the client U r U M can perform the operation flow in step 901, step 903, step 905, and step 909 described above.
- the client-side UrUM software delivery server replaces the client 2020 to perform the operation of step 908 above.
- the software delivery server and the license management server of the license terminal P respectively interact with the software deployment and license management server of any one of the user terminals UU M to implement the software license. Implement licenses for multiple software or multiple application services.
- FIG. 11 is a third structural diagram of an implementation environment of a software licensing method according to an embodiment of the present invention.
- the implementation environment shown in FIG. 11 is used to implement the software license described in any embodiment or embodiment of the present invention.
- the method is different from the first structure of the implementation environment of the software licensing method of the embodiment of the present invention in that: the license terminals P R P M respectively include a software delivery server and a license management server, and the client LL may include a software deployment server and a software management server. .
- the license management server of the license terminal P R P M performs the operation flow in the above steps 902, 904, 906, and 909 instead of the license terminal 2060.
- the software delivery server of the license terminal P R P M performs the above-described operation flow of step 907 instead of the license terminal 2060.
- the software management server of the client U can proxy the client 2020 to perform the operation flow in the above steps 901, 903, 905, and 909.
- the software delivery server of the client U performs the operation flow of the above step 908 instead of the client 2020. Further, the software delivery server and the license management server of the client U interact with the software deployment and license management server of any one of the license terminals P-PM to implement the software license. Autonomous deployment and autonomous management of multiple software or application services of the client U are implemented.
- Figure 12 is a block diagram of a computer system 1000 in which embodiments of the present invention can be implemented.
- the computer system 1000 is merely an example of a computer environment suitable for use with the present invention and is not to be considered as limiting the scope of use of the present invention.
- Computer system 1000 is also not to be construed as requiring a combination of one or more components in an exemplary computer system 1000 that is dependent on or illustrated.
- the computer system 1000 shown in Figure 12 is an example of a computer system suitable for use with the present invention.
- Other architectures with different subsystem configurations can also be used.
- desktops, notebooks, personal digital assistants, smart phones, tablets, and the like which are well known to the public, may be suitable for some embodiments of the present invention. However, it is not limited to the devices listed above.
- computer system 1000 includes a processor 1010, a memory 1020, and a system bus 1022.
- processor 1010 is a hardware for executing computer program instructions through basic arithmetic and logic operations in a computer system.
- Memory 1020 is a physical device for temporarily or permanently storing computing programs or data (e.g., program state information).
- System bus 1020 can be any of the following types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus.
- the processor 1010 and the memory 1020 can communicate via the system bus 1022.
- Memory 1020 includes read only memory (ROM) or flash memory (not shown), and random access memory (RAM), which generally refers to main memory loaded with an operating system and applications.
- ROM read only memory
- RAM random access memory
- Computer system 1000 also includes a display interface 1030 (e.g., a graphics processing unit), a display device 1040 (e.g., a liquid crystal display), an audio interface 1050 (e.g., a sound card), and an audio device 1060 (e.g., a speaker).
- Display device 1040 and audio device 1060 are media devices for experiencing multimedia content.
- Computer system 1000 generally includes a storage device 1070.
- Storage device 1070 can be selected from a variety of computer readable media, which are any available media that can be accessed by computer system 1000, including both mobile and fixed media.
- a computer readable medium includes, but is not limited to, a flash memory (micro SD card), a CD-ROM, a digital versatile disc (DVD) or other optical disc storage, a magnetic tape cartridge, a magnetic tape, a magnetic disk storage, or other magnetic storage device, or Any other medium that stores the required information and is accessible by computer system 1000.
- Computer system 1000 also includes an input device 1080 and an input interface 1090 (e.g., a 10 controller).
- the user can enter commands and information into the computer system 1000 via an input device 1080, such as a keyboard, mouse, or touch panel device on the display device 1040.
- Input device 1080 is typically coupled to system bus 1022 via input interface 1090, but may be coupled via other interfaces or bus structures, such as a universal serial bus (USB).
- USB universal serial bus
- Computer system 1000 can be logically coupled to one or more network devices in a network environment.
- the network device can be a personal computer, server, router, smart phone, tablet or other public network node.
- the computer system 1000 is connected to the network device via a local area network (LAN) interface 1100 or a mobile communication unit 1110.
- LAN local area network
- a local area network (LAN) is a network of computers that are interconnected in a limited area, such as a home, a school, a computer lab, or an office building that uses network media.
- WiFi and twisted pair cabling Ethernet are the two most common technologies for building LANs.
- WiFi is a technology that enables computer system 1000 to exchange data or connect to a wireless network via radio waves.
- the mobile communication unit 1110 can answer and make calls over a radio communication line while moving within a wide geographical area. In addition to the call, the mobile communication unit 1110 also supports Internet access in a 2G, 3G or 4G cellular communication system providing mobile data services.
- computer system 1000 can include a Bluetooth unit that can exchange data over short distances, an image sensor for photography, and an accelerometer for measuring acceleration.
- computer system 1000 suitable for use with the present invention is capable of performing the specified operations of the software licensing method.
- Computer system 1000 performs these operations in the form of software instructions that processor 1010 runs on a computer readable medium.
- These software instructions can be read into memory 1020 from storage device 1070 or through local area network interface 1100 from another device.
- the software instructions stored in the memory 1020 cause the processor 1010 to execute the software licensing method described above.
- the present invention can also be implemented by a hardware circuit or a hardware circuit in combination with software instructions. Thus, the invention is not limited to any specific combination of hardware circuitry and software.
- the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
软件许可方法和系统 技术领域 Software licensing method and system
本发明涉及计算机技术领域, 特别是涉及一种软件许可方法和系统。 背景技术 The present invention relates to the field of computer technologies, and in particular, to a software licensing method and system. Background technique
目前的软件许可技术, 通常用户先安装应用软件, 然后通过网络进行注册 权。 通过网络进行注册时, 需先接受许可协议, 然后才能完成注册。 With current software licensing technology, users typically install applications and then register over the network. When registering via the network, you must accept the license agreement before you can complete the registration.
但是, 上述软件许可技术中一个应用对应一份许可协议, 只能许可于与该 份许可协议匹配的用户端, 会降低软件的许可范围, 进而提高软件的开发成本。 发明内容 However, one of the above software licensing technologies corresponds to a license agreement and can only be licensed to the client that matches the license agreement, which will reduce the software license range and increase the software development cost. Summary of the invention
基于此, 有必要针对上述软件许可技术, 会降低软件的许可范围, 进而提 高软件的开发成本的问题, 提供一种软件许可方法和系统。 Based on this, it is necessary to provide a software licensing method and system for the above software licensing technology, which will reduce the software license range and increase the software development cost.
一种软件许可方法, 包括以下步骤: A software licensing method that includes the following steps:
接收用户端的软件许可请求; Receiving a software license request from the client;
响应所述软件许可请求获取许可协议, 并向所述用户端发送; Retrieving a license agreement in response to the software license request, and transmitting to the client;
接收所述用户端对所述许可协议的修改请求; Receiving a modification request of the user terminal to the license agreement;
根据所述修改请求确定修改协议, 并向所述用户端发送; Determining a modification protocol according to the modification request, and sending the message to the client;
接收所述用户端对所述修改协议的接受指令, 将所述修改协议作为最终许 可协议; Receiving an acceptance instruction of the modification protocol by the client, and using the modification protocol as a final license agreement;
向所述用户端发送许可信息。 Sending license information to the client.
一种软件许可系统, 包括: A software licensing system, including:
第一接收模块, 用于接收用户端的软件许可请求; a first receiving module, configured to receive a software license request of the user end;
协议发送模块, 用于响应所述软件许可请求获取许可协议, 并向所述用户 端发送; a protocol sending module, configured to obtain a license agreement in response to the software license request, and send the license agreement to the user end;
第二接收模块, 用于根据所述修改请求确定修改协议, 并向所述用户端发 送; 协议修改模块, 用于接收所述用户端对所述修改协议的接受指令, 将所述 修改协议作为最终许可协议; a second receiving module, configured to determine a modification protocol according to the modification request, and send the modification protocol to the UE; a protocol modification module, configured to receive an acceptance instruction of the modification protocol by the client, and use the modification protocol as a final license agreement;
第三接收模块, 用于向所述用户端发送许可信息。 The third receiving module is configured to send the license information to the client.
上述软件许可方法和系统, 响应用户端对许可协议的修改请求, 根据所述 修改请求确定修改协议, 并在接收到用户端对所述修改协议的接受指令后以所 述修改协议为最终许可协议进行软件许可, 可使同一软件许以不同的许可协议 许可到不同的用户端, 进而提高软件的许可范围, 降低软件的开发与服务成本。 The software license method and system, in response to a request for modification of a license agreement by a client, determine a modification protocol according to the modification request, and use the modified protocol as a final license agreement after receiving an acceptance instruction of the modification protocol by the user end. Software licenses allow the same software to be licensed to different clients under different license agreements, thereby increasing the software license and reducing software development and service costs.
一种软件许可方法, 包括以下步骤: A software licensing method that includes the following steps:
向许可端发送软件许可请求; Send a software license request to the license side;
接收所述许可端的许可协议; Receiving a license agreement of the license end;
若所述许可协议不满足预设的协议接受条件, 则获取对所述许可协议的修 改请求, 并向所述许可端发送; If the license agreement does not satisfy the preset agreement acceptance condition, obtaining a modification request for the license agreement, and sending the request to the license end;
接收所述许可端的修改协议; Receiving a modification protocol of the license end;
若所述修改协议满足所述预设的协议接受条件, 则向所述许可端发送对所 述修改协议的接受指令; And if the modification protocol satisfies the preset protocol acceptance condition, sending an acceptance instruction to the modification protocol to the permission end;
接收所述许可端的许可信息。 Receiving license information of the license side.
一种软件许可系统, 包括: A software licensing system, including:
第一发送模块, 用于向许可端发送软件许可请求; a first sending module, configured to send a software license request to the license end;
许可协议接收模块, 用于接收所述许可端的许可协议; a license agreement receiving module, configured to receive a license agreement of the license end;
第二发送模块, 用于在所述许可协议不满足预设的协议接受条件时, 获取 对所述许可协议的修改请求, 并向所述许可端发送; a second sending module, configured to acquire a modification request for the license agreement when the license agreement does not satisfy a preset protocol acceptance condition, and send the request to the permission end;
修改协议接收模块, 用于接收所述许可端的修改协议; Modifying a protocol receiving module, configured to receive a modification protocol of the permission end;
第三发送模块, 用于在所述修改协议满足所述预设的协议接受条件时, 向 所述许可端发送对所述修改协议的接受指令; a third sending module, configured to send an accepting instruction to the modifying protocol to the permission end when the modifying protocol satisfies the preset protocol accepting condition;
许可信息接收模块, 用于接收所述许可端的许可信息。 The license information receiving module is configured to receive the license information of the license end.
上述软件许可方法和系统, 在所述许可协议不满足预设的协议接受条件时 向许可端发送对所述许可协议的修改请求, 并在许可端的修改协议满足所述预 设的协议接受条件时向许可端发送接受指令, 接收许可端的许可信息, 实现许 可端对软件许可, 以不同于初始许可协议的修改协议获得许可端对软件的许可, 可扩展软件选择范围, 还可降低许可成本。 附图说明 The software license method and system, when the license agreement does not satisfy a preset protocol acceptance condition, send a modification request to the license agreement to the license end, and when the license modification protocol satisfies the preset protocol acceptance condition Send an accept command to the license side, receive the license information of the license side, and implement the license. The software license can be obtained, and the license-side software license can be obtained by a modification agreement different from the original license agreement, which can expand the software selection range and reduce the license cost. DRAWINGS
图 1为本发明软件许可方法第一实施方式的流程示意图; 1 is a schematic flowchart of a first embodiment of a software licensing method according to the present invention;
图 2为本发明软件许可方法第二实施方式的流程示意图; 2 is a schematic flowchart of a second embodiment of a software licensing method according to the present invention;
图 3为本发明软件许可系统第一实施方式的结构示意图; 3 is a schematic structural diagram of a first embodiment of a software licensing system according to the present invention;
图 4为本发明软件许可系统第二实施方式的结构示意图; 4 is a schematic structural diagram of a second embodiment of a software licensing system according to the present invention;
图 5为本发明软件许可方法第三实施方式的流程示意图; FIG. 5 is a schematic flowchart diagram of a third embodiment of a software licensing method according to the present invention; FIG.
图 6为本发明软件许可方法第四实施方式的流程示意图; 6 is a schematic flowchart of a fourth embodiment of a software licensing method according to the present invention;
图 7为本发明软件许可方法第三实施方式的结构示意图; 7 is a schematic structural diagram of a third embodiment of a software licensing method according to the present invention;
图 8为本发明软件许可方法第四实施方式的结构示意图; 8 is a schematic structural diagram of a fourth embodiment of a software licensing method according to the present invention;
图 9为本发明实施例的软件许可方法的第一实施环境的结构示意图; 图 10为本发明实施例的软件许可方法的第二实施环境的结构示意图; 图 11为本发明实施例的软件许可方法的第三实施环境的结构示意图; 图 12为能实现本发明实施例的一个计算机系统的模块图。 具体实施方式 FIG. 9 is a schematic structural diagram of a first implementation environment of a software license method according to an embodiment of the present invention; FIG. 10 is a schematic structural diagram of a second implementation environment of a software license method according to an embodiment of the present invention; A schematic diagram of the structure of a third implementation environment of the method; FIG. 12 is a block diagram of a computer system capable of implementing an embodiment of the present invention. detailed description
为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图及实 施例, 对本发明进行进一步详细说明。 应当理解, 此处所描述的具体实施例仅 仅用以解释本发明, 并不用于限定本发明。 The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
除非上下文另有特定清楚的描述, 本发明中的元件和组件, 数量既可以单 个的形式存在, 也可以多个的形式存在, 本发明并不对此进行限定。 本发明中 的步骤虽然用标号进行了排列, 但并不用于限定步骤的先后次序, 除非明确说 明了步骤的次序或者某步骤的执行需要其他步骤作为基础, 否则步骤的相对次 序是可以调整的。 可以理解, 本文中所使用的术语 "和 /或" 涉及且涵盖相关联 的所列项目中的一者或一者以上的任何和所有可能的组合。 The components and components of the present invention may be present in a single form or in multiple forms, and the invention is not limited thereto, unless the context clearly dictates otherwise. The steps in the present invention are arranged by reference numerals, but are not intended to limit the order of steps. The relative order of the steps may be adjusted unless the order of the steps is explicitly stated or the execution of a step requires other steps as a basis. It will be understood that the term "and/or" as used herein relates to and encompasses any and all possible combinations of one or more of the associated listed items.
请参阅图 1 , 图 1是本发明的软件许可方法第一实施方式的流程示意图。 本实施方式的所述软件许可方法优选地为在许可端一侧的操作流程, 包括 以下步骤: Please refer to FIG. 1. FIG. 1 is a schematic flowchart diagram of a first embodiment of a software licensing method according to the present invention. The software licensing method of this embodiment is preferably an operation flow on the license side, and includes the following steps:
步骤 S101 , 接收用户端的软件许可请求。 Step S101: Receive a software license request of the client.
步骤 S102 , 响应所述软件许可请求获取许可协议, 并向所述用户端发送。 步骤 S103 , 接收所述用户端对所述许可协议的修改请求。 Step S102: Acquire a license agreement in response to the software license request, and send the license agreement to the client. Step S103: Receive a modification request of the user terminal for the license agreement.
步骤 S104, 根据所述修改请求确定修改协议, 并向所述用户端发送。 Step S104: Determine a modification protocol according to the modification request, and send the modification protocol to the UE.
步骤 S105 , 接收所述用户端对所述修改协议的接受指令, 将所述修改协议 作为最终许可协议。 Step S105: Receive an acceptance instruction of the modification protocol by the client, and use the modification protocol as a final license agreement.
步骤 S106, 向所述用户端发送许可信息。 Step S106: Send permission information to the client.
本实施方式所述的软件许可方法, 响应用户端对许可协议的修改请求, 根 据所述修改请求确定修改协议, 并在接收到用户端对所述修改协议的接受指令 后以所述修改协议为最终许可协议进行软件许可, 可使同一软件许以不同的许 可协议许可到不同的用户端, 进而提高软件的许可范围, 降低软件的开发与服 务成本。 The software license method according to the embodiment, in response to the modification request of the user terminal to the license agreement, determines the modification protocol according to the modification request, and after receiving the acceptance instruction of the modification protocol by the user end, the modification protocol is The final license agreement for software license allows the same software to be licensed to different clients under different license agreements, thereby increasing the software license range and reducing software development and service costs.
其中, 对于步骤 S 101 , 所述用户端优选地为待许可软件的运行终端, 如台 式机、 笔记本、 个人数字助理、 智能电话、 平板电脑、 便携式媒体播放器、 大 尺寸墙面式显示设备等, 还可为用于部署待许可软件的运行环境的服务器。 The user terminal is preferably a running terminal of the software to be licensed, such as a desktop computer, a notebook, a personal digital assistant, a smart phone, a tablet computer, a portable media player, a large-sized wall-mounted display device, etc., for step S101. It can also be a server for deploying the operating environment of the software to be licensed.
优选地, 所述许可请求可为部署待许可软件的运行环境的申请, 可包括待 许可软件的软件标识, 还可进一步包括用户端的标识 (主机名或网络地址)。 Preferably, the permission request may be an application for deploying an operating environment of the software to be licensed, may include a software identifier of the software to be licensed, and may further include an identifier (host name or network address) of the user end.
进一步地, 所述用户端的用户优选地为可在构造云计算环境的企业单位、 政府部门, 学校、 及个人等主体。 所述云计算环境包括公有云模式、 私有云模 式、 混合云模式、 社区云模式等。 Further, the user of the user terminal is preferably a main body, a government department, a school, an individual, and the like that can construct a cloud computing environment. The cloud computing environment includes a public cloud mode, a private cloud mode, a hybrid cloud mode, a community cloud mode, and the like.
在一个实施例中, 在接收用户端的软件许可请求的步骤之前, 还包括以下 步骤: In one embodiment, before the step of receiving the software license request of the client, the method further includes the following steps:
将待许可软件的服务信息推送到目标网络。 Push the service information of the software to be licensed to the target network.
本实施例, 将待许可软件的服务信息推送到目标网络, 方便用户查询各软 件的服务信息, 进行软件选取。 In this embodiment, the service information of the software to be licensed is pushed to the target network, so that the user can query the service information of each software and perform software selection.
优选地, 所述服务信息可包括待许可软件的功能信息或能提供的服务。 所 述待许可软件可为能提供云服务的软件, 所述服务信息可为云服务信息。 Preferably, the service information may include function information of the software to be licensed or a service that can be provided. Place The license software may be software that can provide cloud services, and the service information may be cloud service information.
进一步地, 还可以服务目录的形式在所述目标网络展示待许可软件的服务 信息。 Further, service information of the software to be licensed may also be displayed on the target network in the form of a service directory.
在其他实施方式中, 还可将待许可软件的服务信息推送到用户端或许可端 的云服务器。 In other embodiments, the service information of the software to be licensed may also be pushed to the cloud server of the client or the license end.
对于步骤 S102 , 可根据软件许可请求中的软件标识或许可请求与待许可软 件间的对应关系, 调取对应软件的预存许可协议为与所述软件许可请求对应的 许可协议。 For step S102, the pre-existing license agreement of the corresponding software may be invoked as a license agreement corresponding to the software license request according to the software identification or the correspondence between the license request and the software to be licensed in the software license request.
对于步骤 S103 , 所述修改请求可包括对所述许可协议的修改建议或修改后 的协议内容。 For step S103, the modification request may include a modification proposal or a modified protocol content of the license agreement.
对于步骤 S104, 可根据所述修改请求实时生成所述修改协议, 还可根据所 述修改请求调取预存的不同于所述许可协议的其他软件协议为修改协议。 For the step S104, the modification protocol may be generated in real time according to the modification request, and the pre-stored other software protocol different from the license agreement may be invoked as the modification protocol according to the modification request.
优选地, 接收到所述修改请求后, 可判断所述修改请求是否满足预设的协 议修改条件, 若满足, 则根据所述修改请求确定修改协议, 并发送到所述用户 端。 Preferably, after receiving the modification request, determining whether the modification request satisfies a preset protocol modification condition, if yes, determining a modification protocol according to the modification request, and sending the modification protocol to the user end.
进一步地, 若所述修改请求不满足预设的协议修改条件, 可向所述用户端 发送更改修改请求的提示。 Further, if the modification request does not satisfy the preset protocol modification condition, the user may send a prompt for changing the modification request.
在一个实施例中, 根据所述修改请求确定修改协议, 并向所述用户端发送 的步骤包括以下步骤: In one embodiment, the step of determining a modification protocol based on the modification request and transmitting to the client includes the following steps:
从所述修改请求中提取所述用户端对所述许可协议的修改数据; Extracting, by the modification request, the modification data of the license agreement by the user end;
判断所述请求数据是否处于预设的协议修改范围内; Determining whether the requested data is within a preset protocol modification range;
若是, 则根据所述修改数据确定修改协议, 并向所述用户端发送; 若否, 则向所述用户端发送更改修改请求的提示。 If yes, the modification protocol is determined according to the modification data, and is sent to the client; if not, the prompt for changing the modification request is sent to the client.
本实施例, 可在用户端的修改请求不满足预设的协议修改范围内, 可提示 用户端更改修改请求。 In this embodiment, the modification request may be prompted by the user end when the modification request of the user end does not satisfy the preset protocol modification range.
优选地, 可直接用所述修改数据替换所述许可协议的对应协议数据, 生成 修改协议, 也可从预存的协议数据库中调取与所述修改数据对应的协议数据替 换所述许可协议的对应协议数据, 生成修改协议, 还可从修改协议库中调取与 所述修改数据对应的修改协议。 Preferably, the corresponding protocol data of the license agreement may be directly replaced by the modified data, and a modification protocol may be generated, or the protocol data corresponding to the modified data may be retrieved from the pre-stored protocol database to replace the correspondence of the license agreement. Protocol data, generate modification protocol, and also retrieve from the modified protocol library The modification protocol corresponding to the modified data.
对于步骤 S105 , 所述接受指令用于标识所述修改协议满足用户端的需求。 优选地, 将所述修改协议作为最终许可协议, 所述最终许可协议为待许可 软件对应所述用户端的许可协议。 待许可软件对应不同的用户端可存储不同的 最终许可协议。 For step S105, the accepting instruction is used to identify that the modified protocol meets the requirements of the client. Preferably, the modification protocol is used as a final license agreement, and the final license agreement is a license agreement of the software to be licensed corresponding to the client. The licensed software can store different final license agreements for different clients.
在一个实施例中, 在接收到用户端对所述修改协议的接受指令的步骤之前, 还包括以下步骤: In an embodiment, before receiving the step of the client accepting the modification protocol, the method further includes the following steps:
接收所述用户端对所述修改协议的修改请求。 Receiving a modification request of the modification protocol by the client.
判断接收修改请求的次数是否超过请求阔值。 Determines whether the number of times the request for modification is received exceeds the requested threshold.
若否, 则根据所述修改请求确定修改协议, 并向所述用户端发送。 If not, the modification protocol is determined according to the modification request, and is sent to the client.
若是, 则向所述用户端发送许可终止指令。 If yes, a license termination instruction is sent to the client.
本实施例, 在接收到用户端对修改协议的修改请求后, 可再次修改所述修 改协议。 In this embodiment, after receiving the modification request of the modification protocol by the UE, the modification protocol may be modified again.
对于步骤 S106, 所述许可信息优选地为许可用户端使用对应软件的许可凭 证。 For step S106, the license information is preferably a license credential for the licensed client to use the corresponding software.
进一步地, 若所述许可信息与最终许可协议存在关联, 则可对应修改协议 库中的不同修改协议预先生成不同的许可信息, 也可根据最终许可协议实时生 成新的许可信息。 Further, if the license information is associated with the final license agreement, different license information may be generated in advance according to different modification protocols in the modified protocol library, or new license information may be generated in real time according to the final license agreement.
在一个实施例中, 向所述用户端发送许可信息的步骤还可包括以下步骤: 将所述修改协议存储为向所述用户端许可对应软件的最终许可协议。 In one embodiment, the step of transmitting the license information to the client may further comprise the step of: storing the modification protocol as a final license agreement to license the corresponding software to the client.
根据所述最终协议, 确定所述用户端对所述对应软件的使用信息, 生成所 述许可信息。 And determining, according to the final protocol, usage information of the client by using the corresponding software, and generating the license information.
向所述用户端发送生成的许可信息。 The generated license information is transmitted to the client.
优选地, 所述对应软件为所述软件许可请求所请求许可的软件。 所述使用 信息可包括软件在所述用户端的计费准则、 用户注册数、 在线用户数、 并发用 户数等使用信息。 所述许可信息可包括所述用户信息、 以及使用所述软件的凭 证信息。 Preferably, the corresponding software is software requested by the software license request. The usage information may include usage information such as charging criteria of the software at the user end, number of user registrations, number of online users, number of concurrent users, and the like. The license information may include the user information and credential information using the software.
进一步地, 可根据所述最终许可协议修改对应软件的安装包中的对应信息。 在另一个实施例中, 在向用户端发送许可信息后, 通过安全管理机制确保 最终许可协议的完整性、 与用户端存储的最终许可协议的一致性、 以及最终许 可协议的安全性和保密性, 最后存档所述许可协议。 所述安全管理机制可支持 第三方的信息安全保密认证服务,如 CA认证,也支持由许可端和用户端之间建 立的私有安全协议和密钥。 Further, the corresponding information in the installation package of the corresponding software may be modified according to the final license agreement. In another embodiment, after the license information is sent to the client, the integrity of the final license agreement, the consistency with the final license agreement stored by the client, and the security and confidentiality of the final license agreement are ensured through a security management mechanism. Finally, the license agreement is filed. The security management mechanism can support third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
请参阅图 2, 图 2是本发明的软件许可方法第二实施方式的流程示意图。 本实施方式的所述软件许可方法与第一实施方式的区别在于: 在获取以所 述修改协议为许可协议的许可信息, 并向所述用户端发送的步骤之后, 还包括 以下步骤: Please refer to FIG. 2. FIG. 2 is a schematic flowchart diagram of a second embodiment of the software licensing method of the present invention. The software licensing method of the present embodiment differs from the first embodiment in that: after acquiring the license information in which the modification protocol is a license agreement and transmitting the information to the client, the following steps are further included:
步骤 S201 , 向所述用户端发送软件运行环境的部署指令, 其中, 所述部署 指令包括软件的运行环境的配置信息。 Step S201: Send a deployment instruction of the software running environment to the client, where the deployment instruction includes configuration information of an operating environment of the software.
步骤 S202, 接收所述用户端的部署完成指令, 许可所述用户端下载安装对 应软件。 Step S202, receiving a deployment completion instruction of the client, and permitting the client to download and install the corresponding software.
本实施方式, 在用户端完成对软件允许环境的部署后, 许可所述用户端下 载安装对应的软件, 便于用户端对软件应用的监控管理。 In this implementation manner, after the user end completes the deployment of the software permission environment, the user terminal is allowed to download and install the corresponding software, so that the user terminal can monitor and manage the software application.
其中, 对于步骤 S201 , 软件的运行环境可包括软件环境和硬件环境两方面, 软件环境主要包括操作系统, 比如 windows、 Linux等,也可包括一些其他软件, 比如 office, 还可包括第三方运行库, 比如 DotNet、 DirectX等。 硬件环境主要 包括服务器配置, 比如 CPU、 内存、 显卡、 硬盘等。 For the step S201, the operating environment of the software may include the software environment and the hardware environment. The software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as office, and may also include a third-party runtime library. , such as DotNet, DirectX, etc. The hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
优选地, 所述配置信息可包括用于实现软件服务的指令功能写、 驱动应用 程序运行的信息、 用户端的地址信息等。 Preferably, the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
进一步地, 所述配置信息可包括云计算环境下虚拟机的配置信息。 便于软 件在云计算环境下为用户端提供云服务。 Further, the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
对于步骤 S202, 可通过软件下载管理器启动软件的下载程序, 许可所述用 户端下载安装对应软件。 For step S202, the downloading program of the software may be started by the software download manager, and the user is permitted to download and install the corresponding software.
在一个实施例中, 在向所述用户端发送软件运行环境的部署指令的步骤之 后, 还包括以下步骤: In an embodiment, after the step of sending the deployment instruction of the software running environment to the client, the method further includes the following steps:
以所述最终许可协议为计费协议, 启动对所述用户端的软件计费程序。 本实施例, 记录软件在用户端的用户数量和使用时长, 并根据作为许可协 议的修改协议, 对用户端计费。 The software charging program for the client is started by using the final license agreement as a charging protocol. In this embodiment, the number of users of the software at the user end and the duration of use are recorded, and the user terminal is charged according to a modification protocol as a license agreement.
请参阅图 3 , 图 3是本发明的软件许可系统第一实施方式的结构示意图。 本实施方式的所述软件许可系统优选地为在许可端一侧的操作系统, 包括 第一接收模块 110、 协议发送模块 120、 第二接收模块 130、 协议修改模块 140、 第三接收模块 150和许可模块 160, 其中: Please refer to FIG. 3. FIG. 3 is a schematic structural diagram of a first embodiment of the software licensing system of the present invention. The software license system of the present embodiment is preferably an operating system on the license side, including a first receiving module 110, a protocol sending module 120, a second receiving module 130, a protocol modifying module 140, a third receiving module 150, and License module 160, wherein:
第一接收模块 110, 用于接收用户端的软件许可请求。 The first receiving module 110 is configured to receive a software license request of the client.
协议发送模块 120, 用于响应所述软件许可请求获取许可协议, 并向所述用 户端发送。 The protocol sending module 120 is configured to obtain a license agreement in response to the software license request, and send the license agreement to the user.
第二接收模块 130, 用于接收所述用户端对所述许可协议的修改请求。 The second receiving module 130 is configured to receive a modification request of the user terminal to the license agreement.
协议修改模块 140, 用于根据所述修改请求确定修改协议, 并向所述用户端 发送。 The protocol modification module 140 is configured to determine a modification protocol according to the modification request, and send the protocol to the client.
第三接收模块 150, 用于接收所述用户端对所述修改协议的接受指令, 将所 述修改协议作为最终许可协议。 The third receiving module 150 is configured to receive an accepting instruction of the modification protocol by the user end, and use the modified protocol as a final license agreement.
许可模块 160, 用于向所述用户端发送许可信息。 The license module 160 is configured to send the license information to the client.
本实施方式所述的软件许可系统, 响应用户端对许可协议的修改请求, 根 据所述修改请求确定修改协议, 并在接收到用户端对所述修改协议的接受指令 后以所述修改协议为最终许可协议进行软件许可, 可使同一软件许以不同的许 可协议许可到不同的用户端, 进而提高软件的许可范围, 降低软件的开发与服 务成本。 The software license system according to the embodiment, in response to the modification request of the user terminal to the license agreement, determines the modification protocol according to the modification request, and after receiving the acceptance instruction of the modification protocol by the user end, the modification protocol is The final license agreement for software license allows the same software to be licensed to different clients under different license agreements, thereby increasing the software license range and reducing software development and service costs.
其中,对于第一接收模块 110,所述用户端优选地为待许可软件的运行终端, 如台式机、 笔记本、 个人数字助理、 智能电话、 平板电脑、 便携式媒体播放器、 大尺寸墙面式显示设备等, 还可为用于部署待许可软件的运行环境的服务器。 Wherein, for the first receiving module 110, the user terminal is preferably a running terminal of the software to be licensed, such as a desktop computer, a notebook, a personal digital assistant, a smart phone, a tablet computer, a portable media player, a large-sized wall display. A device, etc., may also be a server for deploying an operating environment of the software to be licensed.
优选地, 所述许可请求可为部署待许可软件的运行环境的申请, 可包括待 许可软件的软件标识, 还可进一步包括用户端的标识 (主机名或网络地址)。 Preferably, the permission request may be an application for deploying an operating environment of the software to be licensed, may include a software identifier of the software to be licensed, and may further include an identifier (host name or network address) of the user end.
进一步地, 所述用户端的用户优选地为可在构造云计算环境的企业单位、 政府部门, 学校、 及个人等主体。 所述云计算环境包括公有云模式、 私有云模 式、 混合云模式、 社区云模式等。 在一个实施例中, 还包括推送模块, 用于将待许可软件的服务信息推送到 目标网络。 Further, the user of the user terminal is preferably a main body, a government department, a school, an individual, and the like that can construct a cloud computing environment. The cloud computing environment includes a public cloud mode, a private cloud mode, a hybrid cloud mode, a community cloud mode, and the like. In one embodiment, a push module is further included for pushing service information of the software to be licensed to the target network.
本实施例, 将待许可软件的服务信息推送到目标网络, 方便用户查询各软 件的服务信息, 进行软件选取。 In this embodiment, the service information of the software to be licensed is pushed to the target network, so that the user can query the service information of each software and perform software selection.
优选地, 所述服务信息可包括待许可软件的功能信息或能提供的服务。 所 述待许可软件可为能提供云服务的软件, 所述服务信息可为云服务信息。 Preferably, the service information may include function information of the software to be licensed or a service that can be provided. The software to be licensed may be software capable of providing a cloud service, and the service information may be cloud service information.
进一步地, 还可以服务目录的形式在所述目标网络展示待许可软件的服务 信息。 Further, service information of the software to be licensed may also be displayed on the target network in the form of a service directory.
在其他实施方式中, 还可将待许可软件的服务信息推送到用户端或许可端 的云服务器。 In other embodiments, the service information of the software to be licensed may also be pushed to the cloud server of the client or the license end.
对于协议发送模块 120,可根据软件许可请求中的软件标识或许可请求与待 许可软件间的对应关系, 调取对应软件的预存许可协议为与所述软件许可请求 对应的许可协议。 For the protocol sending module 120, the pre-stored license agreement corresponding to the software may be invoked as a license agreement corresponding to the software license request according to the software identifier in the software license request or the correspondence between the license request and the license software.
对于第二接收模块 130,所述修改请求可包括对所述许可协议的修改建议或 修改后的协议内容。 For the second receiving module 130, the modification request may include a modification suggestion or a modified protocol content of the license agreement.
对于协议修改模块 140, 可根据所述修改请求实时生成所述修改协议, 还可 根据所述修改请求调取预存的不同于所述许可协议的其他软件协议为修改协 议。 For the protocol modification module 140, the modification protocol may be generated in real time according to the modification request, and the pre-stored other software protocol different from the license agreement may be invoked as a modification protocol according to the modification request.
优选地, 接收到所述修改请求后, 可判断所述修改请求是否满足预设的协 议修改条件, 若满足, 则根据所述修改请求确定修改协议, 并发送到所述用户 端。 Preferably, after receiving the modification request, determining whether the modification request satisfies a preset protocol modification condition, if yes, determining a modification protocol according to the modification request, and sending the modification protocol to the user end.
进一步地, 若所述修改请求不满足预设的协议修改条件, 可向所述用户端 发送更改修改请求的提示。 Further, if the modification request does not satisfy the preset protocol modification condition, the user may send a prompt for changing the modification request.
在一个实施例中, 协议修改模块 140可用于: In one embodiment, the protocol modification module 140 can be used to:
从所述修改请求中提取所述用户端对所述许可协议的修改数据; Extracting, by the modification request, the modification data of the license agreement by the user end;
判断所述请求数据是否处于预设的协议修改范围内; Determining whether the requested data is within a preset protocol modification range;
若是, 则根据所述修改数据确定修改协议, 并向所述用户端发送; 若否, 则向所述用户端发送更改修改请求的提示。 本实施例, 可在用户端的修改请求不满足预设的协议修改范围内, 可提示 用户端更改修改请求。 If yes, the modification protocol is determined according to the modification data, and is sent to the client; if not, the prompt for changing the modification request is sent to the client. In this embodiment, the modification request may be prompted by the user end when the modification request of the user end does not satisfy the preset protocol modification range.
优选地, 可直接用所述修改数据替换所述许可协议的对应协议数据, 生成 修改协议, 也可从预存的协议数据库中调取与所述修改数据对应的协议数据替 换所述许可协议的对应协议数据, 生成修改协议, 还可从修改协议库中调取与 所述修改数据对应的修改协议。 Preferably, the corresponding protocol data of the license agreement may be directly replaced by the modified data, and a modification protocol may be generated, or the protocol data corresponding to the modified data may be retrieved from the pre-stored protocol database to replace the correspondence of the license agreement. The protocol data, the modification protocol is generated, and the modification protocol corresponding to the modification data may also be retrieved from the modification protocol library.
对于第三接收模块 150,所述接受指令用于标识所述修改协议满足用户端的 需求。 For the third receiving module 150, the accepting instruction is used to identify that the modified protocol meets the requirements of the client.
优选地, 将所述修改协议作为最终许可协议, 所述最终许可协议为待许可 软件对应所述用户端的许可协议。 待许可软件对应不同的用户端可存储不同的 最终许可协议。 Preferably, the modification protocol is used as a final license agreement, and the final license agreement is a license agreement of the software to be licensed corresponding to the client. The licensed software can store different final license agreements for different clients.
在一个实施例中, 还包括修改判断模块, 用于: In an embodiment, the method further includes a modification determining module, configured to:
接收所述用户端对所述修改协议的修改请求。 Receiving a modification request of the modification protocol by the client.
判断接收修改请求的次数是否超过请求阔值。 Determines whether the number of times the request for modification is received exceeds the requested threshold.
若否, 则根据所述修改请求确定修改协议, 并向所述用户端发送。 If not, the modification protocol is determined according to the modification request, and is sent to the client.
若是, 则向所述用户端发送许可终止指令。 If yes, a license termination instruction is sent to the client.
本实施例, 在接收到用户端对修改协议的修改请求后, 可再次修改所述修 改协议。 In this embodiment, after receiving the modification request of the modification protocol by the UE, the modification protocol may be modified again.
对于许可模块 160, 所述许可信息优选地为许可用户端使用对应软件的许 可凭证。 For the license module 160, the license information is preferably a license credential for the licensed client to use the corresponding software.
进一步地, 若所述许可信息与最终许可协议存在关联, 则可对应修改协议 库中的不同修改协议预先生成不同的许可信息, 也可根据最终许可协议实时生 成新的许可信息。 Further, if the license information is associated with the final license agreement, different license information may be generated in advance according to different modification protocols in the modified protocol library, or new license information may be generated in real time according to the final license agreement.
在一个实施例中, 许可模块 160还可用于: In one embodiment, the license module 160 can also be used to:
将所述修改协议存储为向所述用户端许可对应软件的最终许可协议。 The modification protocol is stored as a final license agreement to license the corresponding software to the client.
根据所述最终协议, 确定所述用户端对所述对应软件的使用信息, 生成所 述许可信息。 And determining, according to the final protocol, usage information of the client by using the corresponding software, and generating the license information.
向所述用户端发送生成的许可信息。 优选地, 所述对应软件为所述软件许可请求所请求许可的软件。 所述使用 信息可包括软件在所述用户端的计费准则、 用户注册数、 在线用户数、 并发用 户数等使用信息。 所述许可信息可包括所述用户信息、 以及使用所述软件的凭 证信息。 The generated license information is transmitted to the client. Preferably, the corresponding software is software requested by the software license request. The usage information may include usage information of software, such as charging criteria, number of user registrations, number of online users, number of concurrent users, and the like. The license information may include the user information and credential information using the software.
进一步地, 可根据所述最终许可协议修改对应软件的安装包中的对应信息。 在另一个实施例中, 在向用户端发送许可信息后, 通过安全管理机制确保 最终许可协议的完整性、 与用户端存储的最终许可协议的一致性、 以及最终许 可协议的安全性和保密性, 最后存档所述许可协议。 所述安全管理机制可支持 第三方的信息安全保密认证服务,如 CA认证,也支持由许可端和用户端之间建 立的私有安全协议和密钥。 Further, the corresponding information in the installation package of the corresponding software may be modified according to the final license agreement. In another embodiment, after the license information is sent to the client, the integrity of the final license agreement, the consistency with the final license agreement stored by the client, and the security and confidentiality of the final license agreement are ensured through a security management mechanism. Finally, the license agreement is filed. The security management mechanism supports third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
请参阅图 4, 图 4是本发明的软件许可系统第二实施方式的结构示意图。 本实施方式的所述软件许可系统与第一实施方式的区别在于: 还可包括软 件交付模块 170, 可用于: Please refer to FIG. 4. FIG. 4 is a schematic structural diagram of a second embodiment of the software licensing system of the present invention. The software licensing system of the present embodiment differs from the first embodiment in that it may further include a software delivery module 170, which may be used to:
向所述用户端发送软件运行环境的部署指令, 其中, 所述部署指令包括软 件的运行环境的配置信息。 And transmitting, to the client, a deployment instruction of a software running environment, where the deployment instruction includes configuration information of an operating environment of the software.
接收所述用户端的部署完成指令, 许可所述用户端下载安装对应软件。 本实施方式, 在用户端完成对软件允许环境的部署后, 许可所述用户端下 载安装对应的软件, 便于用户端对软件应用的监控管理。 Receiving a deployment completion instruction of the client, and permitting the client to download and install the corresponding software. In this implementation manner, after the user end completes the deployment of the software permission environment, the user terminal is allowed to download and install the corresponding software, so that the user terminal can monitor and manage the software application.
其中, 对于软件交付模块 170, 软件的运行环境可包括软件环境和硬件环境 两方面, 软件环境主要包括操作系统, 比如 windows、 Linux等, 也可包括一些 其他软件, 比如 office, 还可包括第三方运行库, 比如 DotNet、 DirectX等。 硬 件环境主要包括服务器配置, 比如 CPU、 内存、 显卡、 硬盘等。 For the software delivery module 170, the operating environment of the software may include both a software environment and a hardware environment. The software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as an office, and may also include a third party. Run the library, such as DotNet, DirectX, etc. The hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
优选地, 所述配置信息可包括用于实现软件服务的指令功能写、 驱动应用 程序运行的信息、 用户端的地址信息等。 Preferably, the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
进一步地, 所述配置信息可包括云计算环境下虚拟机的配置信息。 便于软 件在云计算环境下为用户端提供云服务。 Further, the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
在一个实施例中软件交付模块 170 可通过软件下载管理器启动软件的下载 程序, 许可所述用户端下载安装对应软件。 在一个实施例中, 还可包括计费模块, 用于以所述修改协议为计费协议, 启动对所述用户端的软件计费程序。 In one embodiment, the software delivery module 170 can initiate a download process of the software through the software download manager, permitting the client to download and install the corresponding software. In an embodiment, the charging module may be further configured to start a software charging procedure for the client by using the modification protocol as a charging protocol.
本实施例, 记录软件在用户端的用户数量和使用时长, 并根据作为许可协 议的修改协议, 对用户端计费。 In this embodiment, the number of users of the software at the user end and the duration of use are recorded, and the user terminal is charged according to a modification protocol as a license agreement.
请参阅图 5 , 图 5是本发明的软件许可方法第三实施方式的流程示意图。 本实施方式的所述软件许可方法优选地为在用户端一侧的操作流程, 可包 括以下步骤: Please refer to FIG. 5. FIG. 5 is a schematic flowchart diagram of a third embodiment of the software licensing method of the present invention. The software licensing method of the present embodiment is preferably an operation flow on the user side, and may include the following steps:
步骤 S501 , 向许可端发送软件许可请求。 Step S501, sending a software license request to the license end.
步骤 S502 , 接收所述许可端的许可协议。 Step S502: Receive a license agreement of the license end.
步骤 S503 , 若所述许可协议不满足预设的协议接受条件, 则获取对所述许 可协议的修改请求, 并向所述许可端发送。 Step S503: If the license agreement does not satisfy the preset protocol acceptance condition, obtain a modification request for the license agreement, and send the request to the permission end.
步骤 S504, 接收所述许可端的修改协议。 Step S504, receiving a modification protocol of the permission end.
步骤 S505 , 若所述修改协议满足所述预设的协议接受条件, 则向所述许可 端发送对所述修改协议的接受指令。 Step S505: If the modification protocol satisfies the preset protocol acceptance condition, send an acceptance instruction to the modification protocol to the permission end.
步骤 S506, 接收所述许可端的许可信息。 Step S506, receiving license information of the license end.
本实施所述软件许可方法, 在所述许可协议不满足预设的协议接受条件时 向许可端发送对所述许可协议的修改请求, 并在许可端的修改协议满足所述预 设的协议接受条件时向许可端发送接受指令, 接收许可端的许可信息, 实现许 可端对软件许可, 以不同于初始许可协议的修改协议获得许可端对软件的许可, 可扩展软件选择范围, 还可降低许可成本。 The software license method of the present embodiment sends a modification request for the license agreement to the license end when the license agreement does not satisfy the preset protocol acceptance condition, and the modification protocol of the license end satisfies the preset protocol acceptance condition. When the license is sent to the license, the license information is received, the license-side license is implemented, and the license is granted to the software by a modification protocol different from the initial license agreement, the software selection range can be extended, and the license cost can be reduced.
其中, 对于步骤 S501 , 所述许可端可为管理待许可软件的管理服务器或生 成待许可软件的提供服务器。 如台式机、 笔记本、 个人数字助理、 平板电脑等。 Wherein, in step S501, the license end may be a management server that manages the software to be licensed or a providing server that generates the software to be licensed. Such as desktops, notebooks, personal digital assistants, tablets, and more.
在一个实施例中, 在向许可端发送软件许可请求的步骤之前, 还包括以下 步骤: In one embodiment, prior to the step of transmitting a software license request to the license, the method further includes the steps of:
通过目标网络查找服务信息满足预设需求信息的软件, 其中, 所述目标网 络中存储有各软件的服务信息。 The software for satisfying the preset requirement information is found by the target network, where the service information of each software is stored in the target network.
若查找到, 则向查找到的软件的许可端发送软件许可请求。 If found, a software license request is sent to the license side of the found software.
本实施方式, 通过网络可快速查找到满足用户需求的软件, 进行许可请求。 优选地, 所述预设需求信息可包括用户所需的软件能提供的服务信息。 进一步地, 还可通过所述目标网络展示的服务目录查找服务信息满足预设 需求信息的软件。 In this embodiment, the software that satisfies the user's needs can be quickly found through the network, and the permission request is made. Preferably, the preset requirement information may include service information that can be provided by software required by the user. Further, the service catalog displayed by the target network may also be used to find software that meets the preset requirement information.
在其他实施方式中, 还可通过接收推送的待许可软件的服务信息或许可端 的云服务器, 查找服务信息满足预设需求信息的软件。 In other embodiments, the software that meets the preset requirement information may be found by receiving the service information of the pushed software to be licensed or the cloud server of the license end.
对于步骤 S503 , 可实时生成所述修改请求, 还可直接调取预存的修改请求。 在一个实施例中, 若所述许可协议不满足预设的协议接受条件, 则获取对 所述许可协议的修改请求, 并向所述许可端发送的步骤包括以下步骤: For step S503, the modification request may be generated in real time, and the pre-stored modification request may be directly retrieved. In an embodiment, if the license agreement does not satisfy the preset protocol acceptance condition, obtaining a modification request for the license agreement, and sending the request to the permission end includes the following steps:
获取对协议修改按钮的触发事件。 Get the trigger event for the protocol modification button.
若获取到所述触发事件, 则判定所述许可协议不满足预设的协议接受条件, 显示协议修改框。 If the trigger event is obtained, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, and the protocol modification box is displayed.
接收输入所述协议修改框的修改数据, 生成包括所述修改数据的修改请求。 向所述许可端发送生成的修改请求。 Receiving the modification data input to the protocol modification box, and generating a modification request including the modification data. Sending the generated modification request to the permission side.
本实施例, 通过接收输入的修改数据, 生成修改请求, 可对许可协议进行 实时的修改, 以向许可端传输用户端的修改建议。 In this embodiment, by receiving the input modification data and generating a modification request, the license agreement may be modified in real time to transmit the modification suggestion of the user end to the license end.
其中, 对协议修改按钮的触发事件优选地可为协议修改按钮所在区域的光 标或触摸点移入事件。 The trigger event for the protocol modification button may preferably be a cursor or a touch point move-in event of the area where the protocol modification button is located.
优选地, 接收到所述许可协议后, 可在用户端显示所述许可协议和与所述 许可协议对应的协议接受按钮、 协议拒绝按钮和协议修改按钮, 获取到对协议 接受按钮的触发事件, 则发送对所述许可协议的接受指令, 获取到对协议拒绝 按钮的触发事件, 则发送对所述许可协议的拒绝指令。 Preferably, after receiving the license agreement, the license agreement and the protocol accept button, the protocol reject button, and the protocol modification button corresponding to the license agreement may be displayed on the user end, and a trigger event for the protocol accept button is obtained. Then, an acceptance instruction for the license agreement is sent, and when a trigger event for the protocol rejection button is obtained, a rejection instruction for the license agreement is sent.
优选地, 所述修改数据由用户触发输入。 Preferably, the modification data is triggered by a user input.
在其他实施例中, 判定所述许可协议不满足预设的协议接受条件, 可显示 协议修改选项 , 获取对协议修改选项的触发事件, 生成包括所述协议修改选项 的爹改请求。 In other embodiments, determining that the license agreement does not satisfy a preset protocol acceptance condition may display a protocol modification option, obtain a trigger event for the protocol modification option, and generate a tamper request including the protocol modification option.
在其他实施方式中, 还可获取对所述许可协议的触发事件, 获取到所述触 发事件, 则判定所述许可协议不满足预设的协议接受条件, 显示协议修改选项, 获取对协议修改选项的触发事件, 生成包括所述协议修改选项的修改请求。 其中, 所述协议修改选项可为对许可协议的修改建议, 也可为修改许可协 议的对应协议内容后的数据内容。 In other implementations, the triggering event of the license agreement may also be obtained, and if the triggering event is obtained, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, the protocol modification option is displayed, and the protocol modification option is obtained. Trigger event, generating a modification request including the protocol modification option. The protocol modification option may be a modification proposal for the license agreement, or may be a data content after modifying the corresponding protocol content of the license agreement.
在另一个实施例中, 若所述许可协议不满足预设的协议接受条件, 则获取 对所述许可协议的修改请求, 并向所述许可端发送的步骤包括以下步骤: In another embodiment, if the license agreement does not satisfy the preset protocol acceptance condition, obtaining a modification request for the license agreement, and sending the request to the permission end includes the following steps:
提取所述许可协议内的协议数据, 比较提取的协议数据与预设的协议数据 是否匹配。 Extracting protocol data in the license agreement, and comparing whether the extracted protocol data matches the preset protocol data.
若不匹配, 则判定所述许可协议不满足预设的协议接受条件, 根据比较结 果生成对所述许可协议的修改请求。 If there is no match, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, and a modification request for the license agreement is generated according to the comparison result.
向所述许可端发送生成的修改请求。 快速生成修改请求。 Sending the generated modification request to the permission side. Quickly generate a modification request.
对于步骤 S504, 在接收许可端的修改协议前, 可接收许可端的更改修改请 求的提示, 接收到所述提示, 可显示请求修改框, 接收输入所述请求修改框的 修改数据, 生成包括所述修改数据的修改请求, 向所述许可端发送。 For the step S504, before receiving the modification protocol of the permission end, receiving the prompt of the change modification request of the permission end, receiving the prompt, displaying the request modification box, receiving the modification data inputting the request modification frame, and generating the modification including the modification A request for modification of data is sent to the license side.
进一步地, 也可接收到所述提示后, 向所述许可端发送拒绝所述许可协议 的指令。 Further, after receiving the prompt, the permission of the license agreement may be sent to the permission end.
对于步骤 S505 , 可接收用户输入的接受指令, 也可通过比对所述修改协议 和预设的协议接受条件, 生成接受指令。 For step S505, an accepting instruction input by the user may be received, and an accepting instruction may also be generated by comparing the modified protocol and the preset protocol accepting condition.
优选地, 在发送接受指令后, 存储所述修改协议为许可协议。 Preferably, after the accepting instruction is sent, the modified protocol is stored as a license agreement.
在一个实施例中, 若所述修改协议满足所述预设的协议接受条件, 则向所 述许可端发送对所述修改协议的接受指令的步骤包括以下步骤: In one embodiment, if the modification protocol satisfies the preset protocol acceptance condition, the step of transmitting an acceptance instruction to the modification protocol to the permission terminal includes the following steps:
提取所述修改协议内的协议数据, 比较提取的协议数据与预设的协议数据 是否匹配。 Extracting protocol data in the modification protocol, and comparing whether the extracted protocol data matches the preset protocol data.
若匹配, 则判定所述许可协议满足预设的协议接受条件, 向所述许可端发 送对所述修改协议的接受指令。 If they match, it is determined that the license agreement satisfies a preset agreement acceptance condition, and an accept instruction for the modification protocol is sent to the license end.
若不匹配, 则判定所述许可协议不满足预设的协议接受条件, 根据比较结 果生成对所述修改协议的修改请求。 If there is no match, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, and a modification request for the modification protocol is generated according to the comparison result.
向所述许可端发送生成的修改请求。 对于步骤 S506, 许可端的许可信息优选地为以接受的修改协议为最终许可 协议的许可信息, 在接收到所述许可信息, 可进一步验证所述许可信息是否以 接受的修改协议为许可协议。 若否, 则向所述许可端发送警报提醒, 以获取以 所述修改协议为许可协议的许可信息。 Sending the generated modification request to the permission side. For step S506, the license information of the license end is preferably the license information of the final license agreement with the accepted modification protocol, and upon receiving the license information, it may further verify whether the license information is the license agreement with the accepted modification protocol. If not, an alert reminder is sent to the license end to obtain license information with the modified protocol as a license agreement.
在一个实施例中, 在接收许可端的许可信息后, 可通过安全管理机制确保 接受的修改协议的完整性、 与许可端存储的最终许可协议的一致性、 以及接受 的修改协议的安全性和保密性, 最后存档所述许可协议。 所述安全管理机制可 支持第三方的信息安全保密认证服务,如 CA认证,也支持由许可端和用户端之 间建立的私有安全协议和密钥。 In one embodiment, after receiving the license information of the license side, the integrity of the accepted modification protocol, the consistency with the final license agreement stored by the license side, and the security and confidentiality of the accepted modification protocol may be ensured through the security management mechanism. Sex, finally archive the license agreement. The security management mechanism can support third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
请参阅图 6, 图 6是本发明的软件许可方法第四实施方式的流程示意图。 本实施方式的所述软件许可方法与第三实施方式的区别在于: 在接收所述 许可端的许可信息的步骤之后, 还包括以下步骤: Please refer to FIG. 6. FIG. 6 is a schematic flowchart diagram of a fourth embodiment of the software licensing method of the present invention. The software license method of this embodiment differs from the third embodiment in that: after receiving the license information of the license side, the method further includes the following steps:
步骤 S601 , 接收软件运行环境的部署指令, 其中, 所述部署指令包括软件 的运行环境的配置信息。 Step S601: Receive a deployment instruction of a software running environment, where the deployment instruction includes configuration information of an operating environment of the software.
步骤 S602, 根据所述配置信息, 在所述用户端进行软件运行环境的部署。 步骤 S603 , 若所述软件运行环境部署完成, 则向所述许可端发送部署完成 指令, 并下载安装对应软件。 Step S602: Perform deployment of a software running environment on the user end according to the configuration information. Step S603: If the deployment of the software running environment is completed, send a deployment completion instruction to the permission end, and download and install the corresponding software.
本实施方式, 在用户端对软件允许环境的部署后, 向所述许可端发送部署 完成指令, 并下载安装对应软件, 便于用户端对软件应用的监控管理。 In this embodiment, after the user side deploys the software permission environment, the deployment completion instruction is sent to the permission end, and the corresponding software is downloaded and installed, so that the user terminal can monitor and manage the software application.
其中, 对于步骤 S601 , 软件的运行环境可包括软件环境和硬件环境两方面, 软件环境主要包括操作系统, 比如 windows、 Linux等,也可包括一些其他软件, 比如 office, 还可包括第三方运行库, 比如 DotNet、 DirectX等。 硬件环境主要 包括服务器配置, 比如 CPU、 内存、 显卡、 硬盘等。 The operating environment of the software may include the software environment and the hardware environment in step S601. The software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as office, and may also include a third-party runtime library. , such as DotNet, DirectX, etc. The hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
优选地, 所述配置信息可包括用于实现软件服务的指令功能写、 驱动应用 程序运行的信息、 用户端的地址信息等。 Preferably, the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
进一步地, 所述配置信息可包括云计算环境下虚拟机的配置信息。 便于软 件在云计算环境下为用户端提供云服务。 Further, the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
对于步骤 S602,可根据配置信息在用户端进行软件环境和硬件环境的部署。 在一个实施例中, 所述配置信息包括云计算环境下虚拟机的配置信息时, 根据所述配置信息, 在所述用户端进行软件运行环境的部署的步骤包括以下步 骤: For step S602, the software environment and the hardware environment may be deployed on the user end according to the configuration information. In an embodiment, when the configuration information includes the configuration information of the virtual machine in the cloud computing environment, the step of deploying the software running environment on the user end according to the configuration information includes the following steps:
根据所述配置信息, 在所述用户端进行云计算环境下的虚拟机部署。 According to the configuration information, virtual machine deployment in a cloud computing environment is performed on the user end.
本实施例, 可根据云计算环境下虚拟机的标准化配置技术进行虚拟机部署。 在另一个实施例中, 在向所述许可端发送部署完成指令, 并下载安装对应 软件的步骤之后, 还包括以下步骤: In this embodiment, the virtual machine deployment can be performed according to the standardized configuration technology of the virtual machine in the cloud computing environment. In another embodiment, after the deployment completion instruction is sent to the permission end, and the step of installing the corresponding software is downloaded, the following steps are further included:
获取所述软件在用户端的运行状态信息。 Obtaining running status information of the software on the user end.
若所述运行状态信息满足预设的正常运行条件, 则以接受的修改协议为计 费协议, 在所述用户端启动对所述用户端的软件计费程序。 If the running status information satisfies the preset normal operating condition, the accepted modification protocol is a charging protocol, and the software charging program for the user end is started at the user end.
若所述运行状态信息不满足预设的正常运行条件, 则发送异常警报。 If the running status information does not satisfy the preset normal operating condition, an abnormal alarm is sent.
本实施例, 可对软件在用户端的运行状况进行监控管理。 In this embodiment, the software can be monitored and managed on the user end.
优选地, 当许可协议终止时, 还可通知许可端终止对软件的许可, 并在用 户端卸载虚拟机。 Preferably, when the license agreement is terminated, the license side may also be notified to terminate the license to the software and uninstall the virtual machine at the user end.
进一步地, 还可以所述修改协议为计费协议, 在所述用户端启动软件计费 程序。 Further, the modification protocol may be a charging protocol, and the software charging program is started at the user end.
请参阅图 7, 图 7是本发明的软件许可系统第三实施方式的结构示意图。 本实施方式的所述软件许可系统优选地为在用户端一侧的操作系统, 可包 括第一发送模块 210、 许可协议接收模块 220、 第二发送模块 230、 修改协议接 收模块 240、 第三发送模块 250和许可信息接收模块 260, 其中: Please refer to FIG. 7. FIG. 7 is a schematic structural diagram of a third embodiment of the software licensing system of the present invention. The software license system of the present embodiment is preferably an operating system on the user side, and may include a first sending module 210, a license agreement receiving module 220, a second sending module 230, a modifying protocol receiving module 240, and a third sending. Module 250 and license information receiving module 260, wherein:
第一发送模块 210, 用于向许可端发送软件许可请求。 The first sending module 210 is configured to send a software license request to the license end.
许可协议接收模块 220, 用于接收所述许可端的许可协议。 The license agreement receiving module 220 is configured to receive the license agreement of the license end.
第二发送模块 230, 用于在所述许可协议不满足预设的协议接受条件时, 获 取对所述许可协议的修改请求, 并向所述许可端发送。 The second sending module 230 is configured to obtain a modification request for the license agreement when the license agreement does not satisfy the preset protocol acceptance condition, and send the request to the license end.
修改协议接收模块 240, 用于接收所述许可端的修改协议。 The modification protocol receiving module 240 is configured to receive the modification protocol of the permission end.
第三发送模块 250, 用于在所述修改协议满足所述预设的协议接受条件时, 向所述许可端发送对所述修改协议的接受指令。 The third sending module 250 is configured to send an accepting instruction to the modifying protocol to the permission end when the modifying protocol satisfies the preset protocol accepting condition.
许可信息接收模块 260, 用于接收所述许可端的许可信息。 本实施所述软件许可系统, 在所述许可协议不满足预设的协议接受条件时 向许可端发送对所述许可协议的修改请求, 并在许可端的修改协议满足所述预 设的协议接受条件时向许可端发送接受指令, 接收许可端的许可信息, 实现许 可端对软件许可, 以不同于初始许可协议的修改协议获得许可端对软件的许可, 可扩展软件选择范围, 还可降低许可成本。 The license information receiving module 260 is configured to receive the license information of the license end. The software license system of the present embodiment sends a modification request for the license agreement to the license end when the license agreement does not satisfy the preset protocol acceptance condition, and the modification protocol of the license end satisfies the preset agreement acceptance condition. When the license is sent to the license, the license information is received, the license-side license is implemented, and the license is granted to the software by a modification protocol different from the initial license agreement, the software selection range can be extended, and the license cost can be reduced.
其中, 对于第一发送模块 210, 所述许可端可为管理待许可软件的管理服务 器或生成待许可软件的提供服务器。 如台式机、 笔记本、 个人数字助理、 平板 电脑等。 For the first sending module 210, the permission end may be a management server that manages software to be licensed or a providing server that generates software to be licensed. Such as desktops, notebooks, personal digital assistants, tablets, and more.
在一个实施例中, 还包括查询模块, 用于: In an embodiment, a query module is further included for:
通过目标网络查找服务信息满足预设需求信息的软件, 其中, 所述目标网 络中存储有各软件的服务信息。 The software for satisfying the preset requirement information is found by the target network, where the service information of each software is stored in the target network.
若查找到, 则向查找到的软件的许可端发送软件许可请求。 If found, a software license request is sent to the license side of the found software.
本实施方式, 通过网络可快速查找到满足用户需求的软件, 进行许可请求。 优选地, 所述预设需求信息可包括用户所需的软件能提供的服务信息。 进一步地, 还可通过所述目标网络展示的服务目录查找服务信息满足预设 需求信息的软件。 In this embodiment, the software that satisfies the user's needs can be quickly found through the network, and the permission request is made. Preferably, the preset requirement information may include service information that can be provided by software required by the user. Further, the service catalog displayed by the target network may also be used to find software that meets the preset demand information.
在其他实施方式中, 还可通过接收推送的待许可软件的服务信息或许可端 的云服务器, 查找服务信息满足预设需求信息的软件。 In other embodiments, the software that meets the preset requirement information may be found by receiving the service information of the pushed software to be licensed or the cloud server of the license end.
对于许可协议接收模块 220,所述许可优选地为与所述许可请求所请求许可 的软件的许可协议。 For the license agreement receiving module 220, the license is preferably a license agreement for software that is licensed with the license request.
对于第二发送模块 230, 可实时生成所述修改请求, 还可直接调取预存的修 改请求。 For the second sending module 230, the modification request may be generated in real time, and the pre-stored modification request may also be directly retrieved.
在一个实施例中, 第二发送模块 230可用于: In one embodiment, the second sending module 230 can be used to:
获取对协议修改按钮的触发事件。 Get the trigger event for the protocol modification button.
若获取到所述触发事件, 则判定所述许可协议不满足预设的协议接受条件, 显示协议修改框。 If the trigger event is obtained, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, and the protocol modification box is displayed.
接收输入所述协议修改框的修改数据, 生成包括所述修改数据的修改请求。 向所述许可端发送生成的修改请求。 本实施例, 通过接收输入的修改数据, 生成修改请求, 可对许可协议进行 实时的修改, 以向许可端传输用户端的修改建议。 Receiving the modification data input to the protocol modification box, and generating a modification request including the modification data. Sending the generated modification request to the permission side. In this embodiment, by receiving the input modification data and generating a modification request, the license agreement may be modified in real time to transmit the modification suggestion of the user end to the license end.
其中, 对协议修改按钮的触发事件优选地可为协议修改按钮所在区域的光 标或触摸点移入事件。 The trigger event for the protocol modification button may preferably be a cursor or a touch point move-in event of the area where the protocol modification button is located.
优选地, 接收到所述许可协议后, 可在用户端显示所述许可协议和与所述 许可协议对应的协议接受按钮、 协议拒绝按钮和协议修改按钮, 获取到对协议 接受按钮的触发事件, 则发送对所述许可协议的接受指令, 获取到对协议拒绝 按钮的触发事件, 则发送对所述许可协议的拒绝指令。 Preferably, after receiving the license agreement, the license agreement and the protocol accept button, the protocol reject button, and the protocol modification button corresponding to the license agreement may be displayed on the user end, and a trigger event for the protocol accept button is obtained. Then, an acceptance instruction for the license agreement is sent, and when a trigger event for the protocol rejection button is obtained, a rejection instruction for the license agreement is sent.
优选地, 所述修改数据由用户触发输入。 Preferably, the modification data is triggered by a user input.
在其他实施例中, 判定所述许可协议不满足预设的协议接受条件, 可显示 协议修改选项 , 获取对协议修改选项的触发事件, 生成包括所述协议修改选项 的爹改请求。 In other embodiments, determining that the license agreement does not satisfy a preset protocol acceptance condition may display a protocol modification option, obtain a trigger event for the protocol modification option, and generate a tamper request including the protocol modification option.
在其他实施方式中, 还可获取对所述许可协议的触发事件, 获取到所述触 发事件, 则判定所述许可协议不满足预设的协议接受条件, 显示协议修改选项, 获取对协议修改选项的触发事件, 生成包括所述协议修改选项的修改请求。 In other implementations, the triggering event of the license agreement may also be obtained, and if the triggering event is obtained, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, the protocol modification option is displayed, and the protocol modification option is obtained. Trigger event, generating a modification request including the protocol modification option.
其中, 所述协议修改选项可为对许可协议的修改建议, 也可为修改许可协 议的对应协议内容后的数据内容。 The protocol modification option may be a modification proposal for the license agreement, or may be a data content after modifying the content of the corresponding protocol of the license agreement.
在另一个实施例中, 第二发送模块 230可用于: In another embodiment, the second sending module 230 can be used to:
提取所述许可协议内的协议数据, 比较提取的协议数据与预设的协议数据 是否匹配。 Extracting protocol data in the license agreement, and comparing whether the extracted protocol data matches the preset protocol data.
若不匹配, 则判定所述许可协议不满足预设的协议接受条件, 根据比较结 果生成对所述许可协议的修改请求。 If there is no match, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, and a modification request for the license agreement is generated according to the comparison result.
向所述许可端发送生成的修改请求。 快速生成修改请求。 Sending the generated modification request to the permission side. Quickly generate a modification request.
对于修改协议接收模块 240, 在接收许可端的修改协议前, 可接收许可端的 更改修改请求的提示, 接收到所述提示, 可显示请求修改框, 接收输入所述请 求修改框的修改数据, 生成包括所述修改数据的修改请求, 向所述许可端发送。 进一步地, 也可接收到所述提示后, 向所述许可端发送拒绝所述许可协议 的指令。 For modifying the protocol receiving module 240, before receiving the modification protocol of the permission end, receiving the prompt of the change modification request of the permission end, receiving the prompt, displaying the request modification box, receiving the modification data inputting the request modification frame, and generating The modification request of the modification data is sent to the permission end. Further, after receiving the prompt, the license may be sent an instruction to reject the license agreement.
对于第三发送模块 250, 可接收用户输入的接受指令, 也可通过比对所述修 改协议和预设的协议接受条件, 生成接受指令。 For the third sending module 250, the accepting instruction input by the user may be received, and the accepting instruction may also be generated by comparing the modification protocol and the preset protocol accepting condition.
优选地, 在发送接受指令后, 存储所述修改协议为许可协议。 Preferably, after the accepting instruction is sent, the modified protocol is stored as a license agreement.
在一个实施例中, 第三发送模块 250可用于: In one embodiment, the third transmitting module 250 can be used to:
提取所述修改协议内的协议数据, 比较提取的协议数据与预设的协议数据 是否匹配。 Extracting protocol data in the modification protocol, and comparing whether the extracted protocol data matches the preset protocol data.
若匹配, 则判定所述许可协议满足预设的协议接受条件, 向所述许可端发 送对所述修改协议的接受指令。 If they match, it is determined that the license agreement satisfies a preset agreement acceptance condition, and an accept instruction for the modification protocol is sent to the license end.
若不匹配, 则判定所述许可协议不满足预设的协议接受条件, 根据比较结 果生成对所述修改协议的修改请求。 If there is no match, it is determined that the license agreement does not satisfy the preset protocol acceptance condition, and a modification request for the modification protocol is generated according to the comparison result.
向所述许可端发送生成的修改请求。 Sending the generated modification request to the permission side.
对于许可信息接收模块 260,许可端的许可信息优选地为以接受的修改协议 为最终许可协议的许可信息, 在接收到所述许可信息, 可进一步验证所述许可 信息是否以接受的修改协议为许可协议。 若否, 则向所述许可端发送警报提醒, 以获取以所述修改协议为许可协议的许可信息。 For the license information receiving module 260, the license information of the license end is preferably the license information of the final license agreement with the accepted modification protocol, and upon receiving the license information, it may be further verified whether the license information is permitted by the accepted modification protocol. protocol. If not, an alert reminder is sent to the license end to obtain license information with the modified protocol as a license agreement.
在一个实施例中, 在接收许可端的许可信息后, 可通过安全管理机制确保 接受的修改协议的完整性、 与许可端存储的最终许可协议的一致性、 以及接受 的修改协议的安全性和保密性, 最后存档所述许可协议。 所述安全管理机制可 支持第三方的信息安全保密认证服务,如 CA认证,也支持由许可端和用户端之 间建立的私有安全协议和密钥。 In one embodiment, after receiving the license information of the license side, the integrity of the accepted modification protocol, the consistency with the final license agreement stored by the license side, and the security and confidentiality of the accepted modification protocol may be ensured through the security management mechanism. Sex, finally archive the license agreement. The security management mechanism can support third-party information security and confidentiality authentication services, such as CA authentication, and also supports private security protocols and keys established between the license and the client.
请参阅图 8, 图 8是本发明的软件许可系统第四实施方式的结构示意图。 本实施方式的所述软件许可系统与第三实施方式的区别在于: 还包括部署 模块 270, 用于: Please refer to FIG. 8. FIG. 8 is a schematic structural diagram of a fourth embodiment of the software licensing system of the present invention. The software licensing system of this embodiment differs from the third embodiment in that: a deployment module 270 is further included for:
接收软件运行环境的部署指令, 其中, 所述部署指令包括软件的运行环境 的配置信息。 Receiving a deployment instruction of a software running environment, where the deployment instruction includes configuration information of an operating environment of the software.
根据所述配置信息, 在所述用户端进行软件运行环境的部署。 若所述软件运行环境部署完成, 则向所述许可端发送部署完成指令, 并下 载安装对应软件。 According to the configuration information, deployment of a software running environment is performed at the user end. If the deployment of the software running environment is completed, sending a deployment completion instruction to the permission end, and downloading and installing the corresponding software.
本实施方式, 在用户端对软件允许环境的部署后, 向所述许可端发送部署 完成指令, 并下载安装对应软件, 便于用户端对软件应用的监控管理。 In this embodiment, after the user side deploys the software permission environment, the deployment completion instruction is sent to the permission end, and the corresponding software is downloaded and installed, so that the user terminal can monitor and manage the software application.
其中, 对于部署模块 270, 软件的运行环境可包括软件环境和硬件环境两方 面, 软件环境主要包括操作系统, 比如 windows、 Linux等, 也可包括一些其他 软件, 比如 office, 还可包括第三方运行库, 比如 DotNet、 DirectX等。 硬件环 境主要包括服务器配置, 比如 CPU、 内存、 显卡、 硬盘等。 For the deployment module 270, the operating environment of the software may include both a software environment and a hardware environment. The software environment mainly includes an operating system, such as windows, Linux, etc., and may also include some other software, such as office, and may also include a third-party operation. Libraries, such as DotNet, DirectX, etc. The hardware environment mainly includes server configuration, such as CPU, memory, graphics card, hard disk, and so on.
优选地, 所述配置信息可包括用于实现软件服务的指令功能写、 驱动应用 程序运行的信息、 用户端的地址信息等。 Preferably, the configuration information may include an instruction function write for implementing a software service, information for driving an application to run, address information of a client, and the like.
进一步地, 所述配置信息可包括云计算环境下虚拟机的配置信息。 便于软 件在云计算环境下为用户端提供云服务。 Further, the configuration information may include configuration information of a virtual machine in a cloud computing environment. It is convenient for software to provide cloud services for users in a cloud computing environment.
部署模块 270还可根据配置信息在用户端进行软件环境和硬件环境的部署。 在一个实施例中, 部署模块 270还可用于根据所述配置信息, 在所述用户 端进行云计算环境下的虚拟机部署。 The deployment module 270 can also deploy the software environment and the hardware environment on the user side according to the configuration information. In one embodiment, the deployment module 270 is further configured to perform virtual machine deployment in a cloud computing environment at the user end according to the configuration information.
本实施例, 可根据云计算环境下虚拟机的标准化配置技术进行虚拟机部署。 在另一个实施例中, 还可包括管理模块, 用于: In this embodiment, the virtual machine deployment can be performed according to the standardized configuration technology of the virtual machine in the cloud computing environment. In another embodiment, a management module may also be included for:
获取所述软件在用户端的运行状态信息。 Obtaining running status information of the software on the user end.
若所述运行状态信息满足预设的正常运行条件, 则以接受的修改协议为计 费协议, 在所述用户端启动对所述用户端的软件计费程序。 If the running status information satisfies the preset normal operating condition, the accepted modification protocol is a charging protocol, and the software charging program for the user end is started at the user end.
若所述运行状态信息不满足预设的正常运行条件, 则发送异常警报。 If the running status information does not satisfy the preset normal operating condition, an abnormal alarm is sent.
本实施例, 可对软件在用户端的运行状况进行监控管理。 In this embodiment, the software can be monitored and managed on the user end.
优选地, 当许可协议终止时, 还可通知许可端终止对软件的许可, 并在用 户端卸载虚拟机。 Preferably, when the license agreement is terminated, the license side may also be notified to terminate the license to the software and uninstall the virtual machine at the user end.
进一步地, 还可以所述修改协议为计费协议, 在所述用户端启动软件计费 程序。 Further, the modification protocol may be a charging protocol, and the software charging program is started at the user end.
请参阅图 9, 图 9是本发明实施例的软件许可方法的实施环境的第一结构示 意图。 图 9 所示实施环境用于实现本发明任意实施例或实施方式所述的软件许可 方法, 包括终端、 用户端 2020、 许可端 2060, 所述终端与许可端 2060通过无 线网络或有限网络连接。 Referring to FIG. 9, FIG. 9 is a first structural diagram of an implementation environment of a software licensing method according to an embodiment of the present invention. The implementation environment shown in FIG. 9 is used to implement the software licensing method according to any embodiment or embodiment of the present invention, including a terminal, a client 2020, and a license terminal 2060. The terminal and the license terminal 2060 are connected through a wireless network or a limited network.
其中, 所述终端包括台式机、 笔记本、 个人数字助理、 智能电话、 平板电 脑、 便携式媒体播放器、 大尺寸墙面式显示设备等终端设备中的至少一种, 装 许可端 2060, 也可为包括台式机、 笔记本、 个人数字助理、 平板电脑等用 于实现本发明软件许可方法的终端设备。 The terminal includes at least one of a terminal device such as a desktop computer, a notebook, a personal digital assistant, a smart phone, a tablet computer, a portable media player, a large-sized wall-mounted display device, and the license terminal 2060. A terminal device for implementing the software licensing method of the present invention, including a desktop, a notebook, a personal digital assistant, a tablet, and the like.
进一步地, 用户端 2020和许可端 2060的数目均可为两个以上。 Further, the number of the client 2020 and the license terminal 2060 may be two or more.
优选地, 软件许可的操作流程可包括: Preferably, the operating procedure of the software license may include:
步骤 S901 : 用户端 2020通过互联网或云计算等环境(查找到服务信息满足 预设需求信息的软件时,向查找到的软件的许可端 2060发送下载和部署申请(软 件许可请求)。 Step S901: The client 2020 sends a download and deployment request (software permission request) to the license end 2060 of the found software through an environment such as the Internet or cloud computing (when the software that satisfies the preset demand information is found).
步骤 S902: 许可端 2060接收所述下载和部署申请后, 向用户端 2020发送 许可协议。 Step S902: After receiving the download and deployment request, the license terminal 2060 sends a license agreement to the client 2020.
步骤 S903: 用户端 2020收到许可协议后, 启动协议审核流程, 若对所述许 可协议有修改建议, 则向许可端的 2060发送修改许可协议的修改建议。 Step S903: After receiving the license agreement, the client 2020 starts the protocol review process, and if there is a suggestion for modification to the license agreement, sends a modification proposal to the license end 2060 to modify the license agreement.
步骤 S904:许可端 2060接收所述修改建议后,根据所述建议生成修改协议, 向用户端 2020发送。 Step S904: After receiving the modification proposal, the permission end 2060 generates a modification protocol according to the proposal, and sends the modification protocol to the client 2020.
步骤 S905: 用户端 2020收到修改协议后, 启动协议审核流程, 若对所述修 改协议有修改建议, 则向许可端的 2060发送修改所述修改协议的建议, 若没有 修改建议, 则接受所述修改协议向许可端 2060发送接受指令。 Step S905: After receiving the modification protocol, the client 2020 starts the protocol review process. If there is a modification suggestion to the modification protocol, the proposal for modifying the modification protocol is sent to the permission end 2060, and if there is no modification suggestion, the user is accepted. The modification protocol sends an accept command to the license terminal 2060.
步骤 S906: 许可端 2060接收到接受指令后, 向用户端 2020发送以所述修 改协议为许可协议的许可信息。 若接收到对所述修改协议的修改建议, 则重复 执行步骤 S904至步骤 S906, 直至接收到所述接受指令。 Step S906: After receiving the accepting instruction, the license terminal 2060 sends the license information with the modified protocol as the license agreement to the client 2020. If a modification suggestion for the modification protocol is received, step S904 to step S906 are repeatedly executed until the acceptance instruction is received.
步骤 S907: 在向用户端 2020发送许可信息后, 向用户端 2020的发送软件 运行环境的部署指令。 并在接收到部署完成指令后启动软件下载程序。 Step S907: After transmitting the license information to the client 2020, the deployment instruction of the software running environment is sent to the client 2020. And start the software download program after receiving the deployment completion command.
步骤 S908: 用户端 2020接收到部署指令后, 根据部署指令中的配置信息在 用户端部署软件运行环境, 部署完成后向许可端 2060发送部署完成指令, 并从 许可端 2060下载软件, 在用户端 2020安装软件。 软件经客户化和数据初始化 之后, 进入到可使用状态。 Step S908: After receiving the deployment instruction, the client 2020 is configured according to the configuration information in the deployment instruction. The client deploys the software running environment. After the deployment is completed, the deployment completion instruction is sent to the license terminal 2060, and the software is downloaded from the license terminal 2060, and the software is installed at the client terminal 2020. After the software is customized and initialized, it enters the usable state.
步骤 S909: 在完成软件的许可授权后, 在许可端 2060和用户端 2020以接 受的修改协议为最终许可协议建立并激活工作和计费的协议机制。 Step S909: After the license of the software is completed, the license mechanism is established and activated on the license end 2060 and the client 2020 by using the accepted modification protocol as the final license agreement.
以上软件许可方法的操作流程可以在 PaaS、 SaaS、 云安全、 以及云支撑平 台上使用, 支持在多种终端和异构的虚拟环境下的端到端的管理。 本发明可以 统一的模式解决云计算环境下各种类型的软件和应用服务的许可证管理的机制 和协议, 将使软件和应用服务的自动部署和用户自助服务变得切实可行。 构示意图。 The above software licensing method can be used on PaaS, SaaS, cloud security, and cloud support platforms to support end-to-end management in a variety of endpoints and heterogeneous virtual environments. The invention can solve the license management mechanism and protocol of various types of software and application services in the cloud computing environment in a unified mode, and will make the automatic deployment of software and application services and user self-service become feasible. Schematic diagram.
图 10所示实施环境用于实现本发明任意实施例或实施方式所述的软件许可 方法, 与本发明实施例的软件许可方法的实施环境的第一结构的区别在于: 许 可端 P包括软件交付服务器和许可管理服务器, 用户端 UrUM可分别包括软件 部署服务器和软件管理服务器。 The implementation environment shown in FIG. 10 is used to implement the software licensing method according to any embodiment or embodiment of the present invention. The difference from the first structure of the implementation environment of the software licensing method of the embodiment of the present invention is: the license terminal P includes software delivery. The server and the license management server, the client U r U M may include a software deployment server and a software management server, respectively.
其中, 许可端 P的许可管理服务器代替许可端 2060执行上述步骤 902、 步 骤 904、 步骤 906、 步骤 909中的操作流程。 The license management server of the license terminal P performs the operation flow in the above steps 902, 904, 906, and 909 instead of the license terminal 2060.
许可端 P的软件交付服务器代替许可端 2060执行上述步骤 907的操作流程。 用户端 UrUM的软件管理服务器可代理用户端 2020执行上述步骤 901、 步 骤 903、 步骤 905、 步骤 909中的操作流程。 The software delivery server of the license terminal P performs the operation flow of the above step 907 instead of the license terminal 2060. The software management server of the client U r U M can perform the operation flow in step 901, step 903, step 905, and step 909 described above.
用户端 UrUM的软件交付服务器代替用户端 2020执行上述步骤 908的操作 流程。 The client-side UrUM software delivery server replaces the client 2020 to perform the operation of step 908 above.
进一步地, 许可端 P 的软件交付服务器和许可管理服务器, 分别与用户端 U UM中任意一个用户端的软件部署和许可证管理服务器进行交互实现软件许 可。 实现对多个软件或多个应用服务的授权许可。 Further, the software delivery server and the license management server of the license terminal P respectively interact with the software deployment and license management server of any one of the user terminals UU M to implement the software license. Implement licenses for multiple software or multiple application services.
请参阅图 11 , 图 11是是本发明实施例的软件许可方法的实施环境的第三结 构示意图。 Referring to FIG. 11, FIG. 11 is a third structural diagram of an implementation environment of a software licensing method according to an embodiment of the present invention.
图 11所示实施环境用于实现本发明任意实施例或实施方式所述的软件许可 方法, 与本发明实施例的软件许可方法的实施环境的第一结构的区别在于: 许 可端 PRPM分别包括软件交付服务器和许可管理服务器, 用户端 LL可包括软件 部署服务器和软件管理服务器。 The implementation environment shown in FIG. 11 is used to implement the software license described in any embodiment or embodiment of the present invention. The method is different from the first structure of the implementation environment of the software licensing method of the embodiment of the present invention in that: the license terminals P R P M respectively include a software delivery server and a license management server, and the client LL may include a software deployment server and a software management server. .
其中, 许可端 PRPM的许可管理服务器代替许可端 2060执行上述步骤 902、 步骤 904、 步骤 906、 步骤 909中的操作流程。 The license management server of the license terminal P R P M performs the operation flow in the above steps 902, 904, 906, and 909 instead of the license terminal 2060.
许可端 PRPM的软件交付服务器代替许可端 2060执行上述步骤 907的操作 流程。 The software delivery server of the license terminal P R P M performs the above-described operation flow of step 907 instead of the license terminal 2060.
用户端 U的软件管理服务器可代理用户端 2020执行上述步骤 901、步骤 903、 步骤 905、 步骤 909中的操作流程。 The software management server of the client U can proxy the client 2020 to perform the operation flow in the above steps 901, 903, 905, and 909.
用户端 U的软件交付服务器代替用户端 2020执行上述步骤 908的操作流程。 进一步地, 用户端 U的软件交付服务器和许可管理服务器, 分别与许可端 P -PM 中任意一个用户端的软件部署和许可证管理服务器进行交互实现软件许可。 实 现对本用户端 U的多个软件或应用服务的自主部署和自主管理。 The software delivery server of the client U performs the operation flow of the above step 908 instead of the client 2020. Further, the software delivery server and the license management server of the client U interact with the software deployment and license management server of any one of the license terminals P-PM to implement the software license. Autonomous deployment and autonomous management of multiple software or application services of the client U are implemented.
图 12为能实现本发明实施例的一个计算机系统 1000的模块图。 该计算机 系统 1000只是一个适用于本发明的计算机环境的示例, 不能认为是提出了对本 发明的使用范围的任何限制。 计算机系统 1000也不能解释为需要依赖于或具有 图示的示例性的计算机系统 1000中的一个或多个部件的组合。 Figure 12 is a block diagram of a computer system 1000 in which embodiments of the present invention can be implemented. The computer system 1000 is merely an example of a computer environment suitable for use with the present invention and is not to be considered as limiting the scope of use of the present invention. Computer system 1000 is also not to be construed as requiring a combination of one or more components in an exemplary computer system 1000 that is dependent on or illustrated.
图 12中示出的计算机系统 1000是一个适合用于本发明的计算机系统的例 子。 具有不同子系统配置的其它架构也可以使用。 例如有大众所熟知的台式机、 笔记本、 个人数字助理、 智能电话、 平板电脑等类似设备可以适用于本发明的 一些实施例。 但不限于以上所列举的设备。 The computer system 1000 shown in Figure 12 is an example of a computer system suitable for use with the present invention. Other architectures with different subsystem configurations can also be used. For example, desktops, notebooks, personal digital assistants, smart phones, tablets, and the like, which are well known to the public, may be suitable for some embodiments of the present invention. However, it is not limited to the devices listed above.
如图 12所示, 计算机系统 1000包括处理器 1010、 存储器 1020和系统总线 1022。包括存储器 1020和处理器 1010在内的各种系统组件连接到系统总线 1022 上。 处理器 1010是一个用来通过计算机系统中基本的算术和逻辑运算来执行计 算机程序指令的硬件。 存储器 1020是一个用于临时或永久性存储计算程序或数 据(例如, 程序状态信息) 的物理设备。 系统总线 1020可以为以下几种类型的 总线结构中的任意一种, 包括存储器总线或存储控制器、 外设总线和局部总线。 处理器 1010和存储器 1020可以通过系统总线 1022进行数据通信。 其中存储器 1020 包括只读存储器 (ROM )或闪存(图中都未示出 ), 以及随机存取存储器 ( RAM ), RAM通常是指加载了操作系统和应用程序的主存储器。 As shown in FIG. 12, computer system 1000 includes a processor 1010, a memory 1020, and a system bus 1022. Various system components, including memory 1020 and processor 1010, are coupled to system bus 1022. Processor 1010 is a hardware for executing computer program instructions through basic arithmetic and logic operations in a computer system. Memory 1020 is a physical device for temporarily or permanently storing computing programs or data (e.g., program state information). System bus 1020 can be any of the following types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus. The processor 1010 and the memory 1020 can communicate via the system bus 1022. Memory 1020 includes read only memory (ROM) or flash memory (not shown), and random access memory (RAM), which generally refers to main memory loaded with an operating system and applications.
计算机系统 1000还包括显示接口 1030 (例如, 图形处理单元)、 显示设备 1040 (例如, 液晶显示器)、 音频接口 1050 (例如, 声卡) 以及音频设备 1060 (例如, 扬声器)。 显示设备 1040和音频设备 1060是用于体验多媒体内容的媒 体设备。 Computer system 1000 also includes a display interface 1030 (e.g., a graphics processing unit), a display device 1040 (e.g., a liquid crystal display), an audio interface 1050 (e.g., a sound card), and an audio device 1060 (e.g., a speaker). Display device 1040 and audio device 1060 are media devices for experiencing multimedia content.
计算机系统 1000—般包括一个存储设备 1070。 存储设备 1070可以从多种 计算机可读介质中选择, 计算机可读介质是指可以通过计算机系统 1000访问的 任何可利用的介质, 包括移动的和固定的两种介质。 例如, 计算机可读介质包 括但不限于, 闪速存储器(微型 SD卡), CD-ROM, 数字通用光盘(DVD )或 其它光盘存储、 磁带盒、 磁带、 磁盘存储或其它磁存储设备, 或者可用于存储 所需信息并可由计算机系统 1000访问的任何其它介质。 Computer system 1000 generally includes a storage device 1070. Storage device 1070 can be selected from a variety of computer readable media, which are any available media that can be accessed by computer system 1000, including both mobile and fixed media. For example, a computer readable medium includes, but is not limited to, a flash memory (micro SD card), a CD-ROM, a digital versatile disc (DVD) or other optical disc storage, a magnetic tape cartridge, a magnetic tape, a magnetic disk storage, or other magnetic storage device, or Any other medium that stores the required information and is accessible by computer system 1000.
计算机系统 1000还包括输入装置 1080和输入接口 1090(例如, 10控制器)。 用户可以通过输入装置 1080,如键盘、鼠标、显示装置 1040上的触摸面板设备, 输入指令和信息到计算机系统 1000中。输入装置 1080通常是通过输入接口 1090 连接到系统总线 1022上的, 但也可以通过其它接口或总线结构相连接, 如通用 串行总线(USB )。 Computer system 1000 also includes an input device 1080 and an input interface 1090 (e.g., a 10 controller). The user can enter commands and information into the computer system 1000 via an input device 1080, such as a keyboard, mouse, or touch panel device on the display device 1040. Input device 1080 is typically coupled to system bus 1022 via input interface 1090, but may be coupled via other interfaces or bus structures, such as a universal serial bus (USB).
计算机系统 1000可在网络环境中与一个或者多个网络设备进行逻辑连接。 网络设备可以是个人电脑、 服务器、 路由器、 智能电话、 平板电脑或者其它公 共网络节点。 计算机系统 1000通过局域网 (LAN )接口 1100或者移动通信单 元 1110与网络设备相连接。 局域网 (LAN )是指在有限区域内, 例如家庭、 学 校、计算机实验室、 或者使用网络媒体的办公楼, 互联组成的计算机网络。 WiFi 和双绞线布线以太网是最常用的构建局域网的两种技术。 WiFi是一种能使计算 机系统 1000间交换数据或通过无线电波连接到无线网络的技术。 移动通信单元 1110 能在一个广阔的地理区域内移动的同时通过无线电通信线路接听和拨打电 话。 除了通话以外, 移动通信单元 1110也支持在提供移动数据服务的 2G, 3G 或 4G蜂窝通信系统中进行互联网访问。 Computer system 1000 can be logically coupled to one or more network devices in a network environment. The network device can be a personal computer, server, router, smart phone, tablet or other public network node. The computer system 1000 is connected to the network device via a local area network (LAN) interface 1100 or a mobile communication unit 1110. A local area network (LAN) is a network of computers that are interconnected in a limited area, such as a home, a school, a computer lab, or an office building that uses network media. WiFi and twisted pair cabling Ethernet are the two most common technologies for building LANs. WiFi is a technology that enables computer system 1000 to exchange data or connect to a wireless network via radio waves. The mobile communication unit 1110 can answer and make calls over a radio communication line while moving within a wide geographical area. In addition to the call, the mobile communication unit 1110 also supports Internet access in a 2G, 3G or 4G cellular communication system providing mobile data services.
应当指出的是, 其它包括比计算机系统 1000更多或更少的子系统的计算机 系统也能适用于发明。 例如, 计算机系统 1000可以包括能在短距离内交换数据 的蓝牙单元, 用于照相的图像传感器, 以及用于测量加速度的加速计。 It should be noted that other computers including more or fewer subsystems than computer system 1000 The system can also be applied to inventions. For example, computer system 1000 can include a Bluetooth unit that can exchange data over short distances, an image sensor for photography, and an accelerometer for measuring acceleration.
如上面详细描述的, 适用于本发明的计算机系统 1000能执行软件许可方法 的指定操作。 计算机系统 1000通过处理器 1010运行在计算机可读介质中的软 件指令的形式来执行这些操作。 这些软件指令可以从存储设备 1070或者通过局 域网接口 1100从另一设备读入到存储器 1020中。 存储在存储器 1020中的软件 指令使得处理器 1010执行上述的软件许可方法。 此外, 通过硬件电路或者硬件 电路结合软件指令也能同样实现本发明。 因此, 实现本发明并不限于任何特定 硬件电路和软件的组合。 As described in detail above, computer system 1000 suitable for use with the present invention is capable of performing the specified operations of the software licensing method. Computer system 1000 performs these operations in the form of software instructions that processor 1010 runs on a computer readable medium. These software instructions can be read into memory 1020 from storage device 1070 or through local area network interface 1100 from another device. The software instructions stored in the memory 1020 cause the processor 1010 to execute the software licensing method described above. Furthermore, the present invention can also be implemented by a hardware circuit or a hardware circuit in combination with software instructions. Thus, the invention is not limited to any specific combination of hardware circuitry and software.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成, 所述的程序可存储于一计算 机可读取存储介质中, 该程序在执行时, 可包括如上述各方法的实施例的流程。 其中, 所述的存储介质可为磁碟、 光盘、 只读存储记忆体(Read-Only Memory, ROM )或随机存储记忆体 ( Random Access Memory, RAM )等。 A person skilled in the art can understand that all or part of the process of implementing the above embodiment method can be completed by a computer program to instruct related hardware, and the program can be stored in a computer readable storage medium. In execution, the flow of an embodiment of the methods as described above may be included. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
但并不能因此而理解为对本发明专利范围的限制。 应当指出的是, 对于本领域 的普通技术人员来说, 在不脱离本发明构思的前提下, 还可以做出若干变形和 改进, 这些都属于本发明的保护范围。 因此, 本发明专利的保护范围应以所附 权利要求为准。 However, it is not to be construed as limiting the scope of the invention. It should be noted that a number of variations and modifications may be made by those skilled in the art without departing from the spirit and scope of the invention. Therefore, the scope of the invention should be determined by the appended claims.
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201410239901.6A CN103984884A (en) | 2014-05-30 | 2014-05-30 | Method and system for licensing software |
| CN201410239901.6 | 2014-05-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2015180272A1 true WO2015180272A1 (en) | 2015-12-03 |
Family
ID=51276852
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2014/085116 Ceased WO2015180272A1 (en) | 2014-05-30 | 2014-08-25 | Software licensing method and system |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN103984884A (en) |
| WO (1) | WO2015180272A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105550566A (en) * | 2015-12-06 | 2016-05-04 | 北京天云融创软件技术有限公司 | Method for enabling multiple users to share software authorization USB (Universal Serial Bus) device |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103984884A (en) * | 2014-05-30 | 2014-08-13 | 广东轩辕网络科技股份有限公司 | Method and system for licensing software |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1645807A (en) * | 2004-01-21 | 2005-07-27 | 国际商业机器公司 | Method and system for electronically executing contracts within a secure computer infrastructure |
| US20110213713A1 (en) * | 2010-02-26 | 2011-09-01 | James Michael Ferris | Methods and systems for offering additional license terms during conversion of standard software licenses for use in cloud computing environments |
| CN102622538A (en) * | 2011-02-01 | 2012-08-01 | 中国电信股份有限公司 | Method and system for software licensing control |
| CN103984884A (en) * | 2014-05-30 | 2014-08-13 | 广东轩辕网络科技股份有限公司 | Method and system for licensing software |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7752139B2 (en) * | 2005-12-27 | 2010-07-06 | Michael Noel Hu | Method and system for managing software licenses and reducing unauthorized use of software |
| US20100293103A1 (en) * | 2009-05-12 | 2010-11-18 | Microsoft Corporation | Interaction model to migrate states and data |
| CN103455346B (en) * | 2013-08-19 | 2017-05-03 | 北京京东尚科信息技术有限公司 | Application program deployment method, deployment main control computer, deployment client side and cluster |
-
2014
- 2014-05-30 CN CN201410239901.6A patent/CN103984884A/en active Pending
- 2014-08-25 WO PCT/CN2014/085116 patent/WO2015180272A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1645807A (en) * | 2004-01-21 | 2005-07-27 | 国际商业机器公司 | Method and system for electronically executing contracts within a secure computer infrastructure |
| US20110213713A1 (en) * | 2010-02-26 | 2011-09-01 | James Michael Ferris | Methods and systems for offering additional license terms during conversion of standard software licenses for use in cloud computing environments |
| CN102622538A (en) * | 2011-02-01 | 2012-08-01 | 中国电信股份有限公司 | Method and system for software licensing control |
| CN103984884A (en) * | 2014-05-30 | 2014-08-13 | 广东轩辕网络科技股份有限公司 | Method and system for licensing software |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105550566A (en) * | 2015-12-06 | 2016-05-04 | 北京天云融创软件技术有限公司 | Method for enabling multiple users to share software authorization USB (Universal Serial Bus) device |
| CN105550566B (en) * | 2015-12-06 | 2019-03-29 | 北京天云融创软件技术有限公司 | A kind of method of multiple users share soft ware authorization USB device |
Also Published As
| Publication number | Publication date |
|---|---|
| CN103984884A (en) | 2014-08-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110546979B (en) | Multi-level distributed access control between services and applications | |
| CN100593166C (en) | Portable Computing Environment | |
| TWI442238B (en) | Method, system, and non-transitory machine-readable medium for communicating data between a host and a portable storage device | |
| EP3005080B1 (en) | Synchronizing device association data among computing devices | |
| JP7760673B2 (en) | Method, system, and program for controlling IoT devices using a messenger bot | |
| CN103036597B (en) | Method and device of sharing resources among devices in close range | |
| CN108628658A (en) | A kind of licence managing method and device of container | |
| WO2013182005A1 (en) | Method and device for use in intercepting call for service by application | |
| CN109460373A (en) | A kind of data sharing method, terminal device and storage medium | |
| EP2924947B1 (en) | Method and apparatus for controlling access | |
| WO2013097655A1 (en) | Storage service method and storage server applying the method | |
| US11457483B2 (en) | Managing connections between a user device and peripheral devices | |
| WO2019015491A1 (en) | Application program cloning method and apparatus, device and medium | |
| CN104168536B (en) | Data copy method and system between a kind of mobile terminal | |
| JP2023110881A (en) | Device certificate generation method and system for secure connection of IoT devices | |
| WO2023165327A1 (en) | Vehicle-based information interaction method, and mobile phone terminal and head unit terminal | |
| WO2015180272A1 (en) | Software licensing method and system | |
| US10819695B2 (en) | Electronic device including local identity provider server for single sign on and related methods | |
| CN115842656B (en) | A control method and device based on privacy data call | |
| US20200236084A1 (en) | Computing system with gateway data transfer based upon device data flow characteristics and related methods | |
| US8325133B1 (en) | Secure opportunistic use of external interfaces | |
| US20250330317A1 (en) | Device onboarding in distributed systems using meta payloads | |
| JP7030184B2 (en) | Access network quality control for VoIP | |
| CN108471409A (en) | The application programming interfaces authentication configuration method and system of voice dialogue platform | |
| CN120010977A (en) | AI assistant interaction method and device, electronic device and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14893061 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 14893061 Country of ref document: EP Kind code of ref document: A1 |