Data processing method, system and electronic device

By working together with the gateway service and the authentication subsystem, the tenant identifier is parsed and mapped to the target application, solving the problem of centralized license management in SaaS deployment. This achieves unified tenant authorization management and data request processing, reducing costs.

CN115883179BActive Publication Date: 2026-04-24MINGDU ZHIYUN (ZHEJIANG) TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
MINGDU ZHIYUN (ZHEJIANG) TECH CO LTD
Filing Date
2022-11-28
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

In existing technologies, SaaS deployment methods cannot meet the requirements of all customers at the same time, especially the inability to centrally manage licenses. This results in high costs for private deployments, while pure SaaS deployments cannot meet the needs of all customers. There is an urgent need for a unified and centralized system and method for authorizing and managing authorization information.

Method used

The gateway service receives data requests from target tenants, parses the tenant identifier, and the authentication subsystem determines the tenant's permissions. Based on the preset mapping relationship between tenants and applications, the data request is forwarded to the target application, thereby achieving unified authentication and authorization management.

Benefits of technology

It enables unified management of permission information for different tenants, reduces management costs, ensures the reasonable distribution and processing of data requests, and meets the needs of different customers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115883179B_ABST
    Figure CN115883179B_ABST
Patent Text Reader

Abstract

The application provides a data processing method, system and electronic equipment, the method comprises the following steps: in the embodiment, the gateway service is used for parsing the target tenant's identifier from the data request; the authentication subsystem determines whether the target tenant has the use right according to the target tenant's identifier; if yes, the gateway service determines the target application program corresponding to the target tenant according to the preset mapping relationship between the tenant and the application program, and forwards the data request to the target application program corresponding to the target tenant; the target application program processes the data request, obtains the processing result, and sends the processing result to the target tenant through the gateway service. By uniformly authenticating and managing each application program, the permission information of different tenants can be determined according to different data requests of the tenants, the target application program can be determined according to the data requests of different tenants, the data requests of different tenants can be processed, the unified management of the authorization information of all tenants can be realized, and the cost is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and more specifically, to a data processing method, system, and electronic device. Background Technology

[0002] With the development of Internet technology, more and more companies are beginning to digitize their enterprise assets. Many customers choose Software-as-a-Service (SaaS) systems, where SaaS vendors deploy software on their own servers. After users order from the vendor, they use the software services provided by the SaaS vendor through the network, and the user's data is stored by the SaaS vendor. For network and data security reasons, many customers also choose to deploy entirely privately, deploying the ordered applications on their own servers.

[0003] However, SaaS deployment may not meet the requirements of all customers at the same time, and local private deployment cannot centrally manage licenses. Summary of the Invention

[0004] The purpose of this application is to address the shortcomings of the prior art by providing a data processing method, system, and electronic device to achieve unified management and authentication of authorization information for different tenants.

[0005] To achieve the above objectives, the technical solutions adopted in the embodiments of this application are as follows:

[0006] In a first aspect, embodiments of this application provide a data processing method applied to a data processing system, the data processing system including: a gateway service, an authentication subsystem, and multiple applications, the method including:

[0007] The gateway service receives a data request from the target tenant and parses the identifier of the target tenant from the data request;

[0008] The authentication subsystem determines whether the target tenant has usage rights based on the target tenant's identifier;

[0009] If so, the gateway service determines the target application corresponding to the target tenant based on the preset mapping relationship between tenants and applications, and forwards the data request to the target application corresponding to the target tenant.

[0010] The target application processes the data request, obtains the processing result, and sends the processing result to the target tenant through the gateway service.

[0011] Optionally, the authentication subsystem determines whether the target tenant has usage rights based on the target tenant's identifier, including:

[0012] The authentication subsystem receives the identifier of the target tenant sent by the gateway service;

[0013] The authentication subsystem searches for the authorization information of the target tenant in the permission database based on the target tenant's identifier;

[0014] The authentication subsystem determines whether the target tenant has the necessary permissions based on the target tenant's authorization information.

[0015] Optionally, if so, the gateway service determines the target application corresponding to the target tenant based on a preset tenant-application mapping relationship, including:

[0016] The gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, wherein the application database is used to record the mapping relationship between tenants and applications;

[0017] If an application corresponding to the target tenant is found, then the application corresponding to the target tenant is taken as the target application.

[0018] Optionally, after the gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, it further includes:

[0019] If no application corresponding to the target tenant is found, a failure response is sent to the target tenant, indicating that no application corresponding to the target tenant exists.

[0020] Optionally, after the gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, it further includes:

[0021] If no application corresponding to the target tenant is found, a preset standard application will be used as the target application.

[0022] Optionally, before receiving a data request from a target tenant, the gateway service further includes:

[0023] The gateway service receives the registration request from the target tenant and forwards the registration request to the authentication subsystem. The registration request includes the original information of the target tenant.

[0024] The authentication subsystem generates an identifier and authorization information for the target tenant based on the target tenant's original information, and saves the identifier and authorization information to the permission database.

[0025] Optional, also includes:

[0026] The authentication subsystem obtains application configuration information for the target tenant, and the application configuration information is used to indicate the target application corresponding to the target tenant.

[0027] The authentication subsystem generates a unique service identifier corresponding to the target tenant based on the application configuration information;

[0028] Save the unique service identifier and the target application corresponding to the target tenant to the application database.

[0029] Optionally, the gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, including:

[0030] The gateway service iterates through each unique service identifier in the application database. If the currently iterated unique service identifier matches the identifier of the target tenant, it reads the application corresponding to the unique service identifier.

[0031] Secondly, embodiments of this application also provide a data processing system, which includes: a gateway service, an authentication subsystem, and multiple applications.

[0032] The gateway service is used to receive data requests from the target tenant and parse the identifier of the target tenant from the data request;

[0033] The authentication subsystem is used to determine whether the target tenant has usage rights based on the target tenant's identifier;

[0034] If so, the gateway service is used to determine the target application corresponding to the target tenant based on the preset mapping relationship between tenants and applications, and forward the data request to the target application corresponding to the target tenant;

[0035] The target application is used to process the data request, obtain the processing result, and send the processing result to the target tenant through the gateway service.

[0036] Optionally, the authentication subsystem is specifically used for:

[0037] The authentication subsystem receives the identifier of the target tenant sent by the gateway service;

[0038] The authentication subsystem searches for the authorization information of the target tenant in the permission database based on the target tenant's identifier;

[0039] The authentication subsystem determines whether the target tenant has the necessary permissions based on the target tenant's authorization information.

[0040] Optionally, if so, the gateway service is specifically used for:

[0041] The gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, wherein the application database is used to record the mapping relationship between tenants and applications;

[0042] If an application corresponding to the target tenant is found, then the application corresponding to the target tenant is taken as the target application.

[0043] Optionally, the gateway service is specifically used for:

[0044] If no application corresponding to the target tenant is found, a failure response is sent to the target tenant, indicating that no application corresponding to the target tenant exists.

[0045] Optionally, the gateway service is specifically used for:

[0046] If no application corresponding to the target tenant is found, a preset standard application will be used as the target application.

[0047] Optionally, the gateway service is specifically used for:

[0048] The gateway service receives the registration request from the target tenant and forwards the registration request to the authentication subsystem. The registration request includes the original information of the target tenant.

[0049] The authentication subsystem generates an identifier and authorization information for the target tenant based on the target tenant's original information, and saves the identifier and authorization information to the permission database.

[0050] Optionally, the gateway service is specifically used for:

[0051] The authentication subsystem obtains application configuration information for the target tenant, and the application configuration information is used to indicate the target application corresponding to the target tenant.

[0052] The authentication subsystem generates a unique service identifier corresponding to the target tenant based on the application configuration information;

[0053] Save the unique service identifier and the target application corresponding to the target tenant to the application database.

[0054] Optionally, the gateway service is specifically used for:

[0055] The gateway service iterates through each unique service identifier in the application database. If the currently iterated unique service identifier matches the identifier of the target tenant, it reads the application corresponding to the unique service identifier.

[0056] Thirdly, embodiments of this application also provide an electronic device, including: a processor, a storage medium, and a bus, wherein the storage medium stores program instructions executable by the processor, and when the application runs, the processor communicates with the storage medium via the bus, and the processor executes the program instructions to perform the steps of the data processing method described in the first aspect above.

[0057] The beneficial effects of this application are:

[0058] This application provides a data processing method, apparatus, electronic device, and storage medium. It receives data requests from target tenants through a gateway service and parses the target tenant's identifier from the data request. An authentication subsystem determines whether the target tenant has usage permissions based on the identifier. If so, the gateway service determines the target application corresponding to the target tenant based on a preset mapping relationship between tenants and applications, and forwards the data request to the corresponding target application. The target application processes the data request, obtains the processing result, and sends the result back to the target tenant through the gateway service. By implementing unified authentication management for various applications, it is possible to determine the permission information of different tenants based on their data requests, identify the target application for each tenant's data request, and process the data requests of different tenants. This achieves unified management of authorization information for all tenants and reduces costs. Attached Figure Description

[0059] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0060] Figure 1 This is a schematic diagram of the structure of a data processing system provided in an embodiment of this application;

[0061] Figure 2 A flowchart illustrating a data processing method provided in an embodiment of this application;

[0062] Figure 3 A schematic diagram illustrating another data processing method provided in an embodiment of this application;

[0063] Figure 4 This is a structural block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0064] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the accompanying drawings in this application are for illustrative and descriptive purposes only and are not intended to limit the scope of protection of this application. Furthermore, it should be understood that the schematic drawings are not drawn to scale. The flowcharts used in this application illustrate operations implemented according to some embodiments of this application. It should be understood that the operations in the flowcharts may not be implemented in sequence, and steps without logical contextual relationships may be reversed or implemented simultaneously. In addition, those skilled in the art, guided by the content of this application, may add one or more other operations to the flowcharts, or remove one or more operations from the flowcharts.

[0065] Furthermore, the described embodiments are merely some, not all, of the embodiments of this application. The components of the embodiments of this application described and illustrated herein can typically be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

[0066] It should be noted that the term "comprising" will be used in the embodiments of this application to indicate the presence of the features declared thereafter, but does not exclude the addition of other features.

[0067] Private deployment generally refers to deploying third-party applications on your own servers. Since the data is stored on the company's own servers, it is more secure and controllable. The advantages of private deployment are: good confidentiality, good isolation, and the company has independent control, resulting in higher security. However, private deployment is expensive, and companies need to pay higher management fees.

[0068] SaaS platform providers deploy application software uniformly on their own servers. Customers can order the required application software services from the vendor via the Internet according to their actual work needs, pay the vendor according to the amount of service ordered and the duration, and obtain the services provided by the SaaS platform provider via the Internet.

[0069] SaaS applications come in three models: free, paid, and value-added services. Paid services are typically all-inclusive, covering application license fees, software maintenance fees, and technical support fees, all bundled into a single monthly subscription fee for each user. SaaS is not only suitable for small and medium-sized enterprises (SMEs); businesses of all sizes can benefit from it.

[0070] Since private deployments cannot centrally manage authorizations, and pure SaaS deployments cannot meet the requirements of all customers, there is an urgent need for a system and method that can centrally and uniformly authorize and manage authorization information.

[0071] Figure 1 This is a schematic diagram of the structure of a data processing system provided in an embodiment of this application, such as... Figure 1 As shown, this may include a gateway service, an authentication subsystem, and multiple applications. The data processing system can process the received request data from different tenants using the methods provided in this application embodiment, obtain the target data requested by the tenant, and return the target data to the requesting tenant. This data processing system can, for example, be a server implemented on a cloud platform.

[0072] Optionally, both private and SaaS applications can be deployed in the data processing system, enabling unified centralized authorization and authentication as well as unified centralized management of authorization information.

[0073] Figure 2 This is a flowchart illustrating a data processing method provided in an embodiment of this application. The execution entity of this method is as described in the aforementioned data processing system. Figure 2 As shown, the method includes:

[0074] S101. The gateway service receives the data request from the target tenant and parses the identifier of the target tenant from the data request.

[0075] Optionally, a gateway service refers to an external identification service that enables interconnection between local area networks (LANs) and wide area networks (WANs), allowing free communication between different networks. It acts as a converter between computers and devices, facilitating the translation of different protocols, languages, and data between different systems. For example, a gateway service can be a software program that handles all tenant data requests, forwarding them to the appropriate application based on predefined rules.

[0076] Optionally, a target tenant's data request refers to a data request sent by the target tenant through its client. Specifically, the target tenant can input its data request in its client and send the input data request to the gateway service in the data processing system through its client. The gateway service then receives the data request sent through the target tenant's client.

[0077] Optionally, the target tenant's data request may include the target tenant's identifier. Therefore, when the gateway service receives the target tenant's data request, it can parse the received data request to obtain the target tenant's identifier from the data request.

[0078] S102. The authentication subsystem determines whether the target tenant has the right to use the service based on the target tenant's identifier. If yes, it executes the following step S103. If no, it returns a message indicating that the target tenant does not have the right to use the service.

[0079] The authentication subsystem can include the permission authentication information of all tenants. This permission authentication information can include each tenant's identifier, each tenant's available time, each tenant's start and end time, and each tenant's payment information. Permission authentication can be performed on each tenant through their permission authentication information.

[0080] Optionally, when the gateway service parses the target tenant's data request to obtain the target tenant's identifier, it can use a preset method based on the parsed target tenant's identifier to determine whether the target tenant has the right to use the service.

[0081] S103. If so, the gateway service determines the target application corresponding to the target tenant based on the preset mapping relationship between tenants and applications, and forwards the data request to the target application corresponding to the target tenant.

[0082] The target application corresponding to the target tenant refers to the application subscribed by the target tenant. It can be a private application or a SaaS application. For example, it can be a software application service, such as video on demand, video transcoding, video watermarking, etc.; it can also be a third-party application, such as WeChat application, navigation application, etc.; or it can be a service system, such as expense reimbursement system, payroll system, human resources system, etc.

[0083] Optionally, each tenant may have a preset tenant-application mapping relationship with the applications it subscribes to. The gateway service can determine the target application of the target tenant based on the preset tenant-application mapping relationship and forward the data request to the target application corresponding to the target tenant.

[0084] S104. The target application processes the data request, obtains the processing result, and sends the processing result to the target tenant through the gateway service.

[0085] Optionally, when the target application receives a data request from the target tenant sent by the gateway service, it processes the data request in the target application. The data request may also include the specific business data requested by the target tenant, that is, the specific business operation that the target tenant needs to perform in the target application, such as searching for data in the application software. The target application can query the data requested in the data request in the target application according to the search business in the data request.

[0086] Optionally, the target application processes the received data request and obtains a processing result, which may include a successful processing result or a failed processing result. If the processing is successful, the successful processing result and the data requested by the target tenant can be returned to the target tenant; if the processing fails, the failed processing result can be returned to the target tenant, where returning to the target tenant refers to the client where the target tenant is located.

[0087] In this embodiment, a gateway service receives data requests from target tenants and parses the target tenant's identifier from the data requests. The authentication subsystem determines whether the target tenant has the necessary permissions based on the identifier. If so, the gateway service determines the target application corresponding to the target tenant based on a pre-defined mapping relationship between tenants and applications, and forwards the data request to the corresponding target application. The target application processes the data request, obtains the processing result, and sends the result back to the target tenant through the gateway service. By implementing unified authentication management for all applications, it is possible to determine the permission information of different tenants based on their data requests, identify the target application for each tenant's data request, and process the data requests of different tenants. This achieves unified management of authorization information for all tenants and reduces costs.

[0088] Figure 3 A schematic diagram of another data processing method provided in the embodiments of this application, as shown below. Figure 3 As shown, in step S102 above, the authentication subsystem determines whether the target tenant has usage rights based on the target tenant's identifier, which may include:

[0089] S201. The authentication subsystem receives the target tenant's identifier sent by the gateway service.

[0090] Optionally, after the gateway service resolves the identifier of the target tenant, it can send the resolved identifier of the target tenant to the authentication subsystem, which will then receive the identifier of the target tenant sent by the gateway service.

[0091] S202. The authentication subsystem searches for the target tenant's authorization information in the permission database based on the target tenant's identifier.

[0092] Optionally, the permission database may include authorization information for all tenants. The authorization information for a tenant refers to the authorization information of the target application subscribed by the target tenant. For example, it may include the target tenant's identifier, the target tenant's usage time for the target application, the start and end time of the target application, and the target tenant's payment information for the target application.

[0093] Optionally, each tenant can save their authorization information to the permission database in the authentication subsystem when they need to authorize the target application.

[0094] Optionally, the authentication subsystem can look up the target tenant's identifier in the permissions database. If the target tenant's identifier is found, the authorization information of the target tenant can be obtained.

[0095] S203. The authentication subsystem determines whether the target tenant has the necessary permissions based on the target tenant's authorization information.

[0096] Optionally, if the target tenant's authorization information indicates that the target tenant's usage time for the target application has not expired, it means that the target tenant can still use the target application normally, that is, the target tenant has access rights; if the target tenant's authorization information indicates that the target tenant's usage time for the target application has expired or has expired, it means that the target tenant cannot use the target application normally, that is, the target tenant does not have permission to access it.

[0097] Optionally, if the target tenant has access permissions, the gateway service can determine the target application corresponding to the target tenant based on the preset mapping relationship between tenants and applications; if the target tenant does not have access permissions, the gateway service can return an access denied message and a renewal request to the client where the target tenant is located. If the target tenant successfully renews, the target tenant's access permissions are restored, and access can continue.

[0098] It is worth noting that the gateway service can send the target tenant's identifier to the authentication subsystem. The authentication subsystem then searches for the target tenant's permission information in the permission database based on the received target tenant's identifier to determine whether the target tenant has the necessary permissions. In another implementation, the gateway service can also directly obtain the target tenant's authorization information from the permission database in the authentication subsystem based on the target tenant's identifier to determine whether the target tenant has the necessary permissions. This is not a limitation here.

[0099] In this embodiment, by determining whether a tenant has permissions based on the tenant identifier in the data request and the tenant authorization information in the permission database, it is possible to query the permissions of each tenant for different tenants.

[0100] Optionally, in step S103 above, if so, the gateway service determines the target application corresponding to the target tenant based on the preset tenant-application mapping relationship, which may include:

[0101] Optionally, the gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier. If the application corresponding to the target tenant is found, it is used as the target application.

[0102] The preset application database is used to record the mapping relationship between tenants and applications. An application that has a mapping relationship with a target tenant refers to an application that can provide services to the target tenant. In other words, an application that has a mapping relationship with a target tenant can also be an application subscribed to by the target tenant.

[0103] Optionally, when each tenant needs to authorize a target application, where authorization may also refer to the target tenant subscribing to the target application, a mapping relationship between each tenant and the application can be stored in a preset application database. Based on the mapping relationship between each tenant and the application stored in the preset application database, the application corresponding to the target tenant can be found, and the found application will be used as the target application.

[0104] Optionally, after the gateway service determines the target application corresponding to the target tenant based on the preset tenant-application mapping relationship in step S103 above, it may further include:

[0105] Optionally, if no application corresponding to the target tenant is found, a failure response is sent to the target tenant, wherein the failure response may be used to indicate that no application corresponding to the target tenant exists.

[0106] Optionally, if the gateway service cannot find the application corresponding to the target tenant in the preset application database, it can send a failure response to the client where the target tenant is located.

[0107] Optionally, after the gateway service determines the target application corresponding to the target tenant based on the preset tenant-application mapping relationship in step S103 above, it may further include:

[0108] Optionally, if no application corresponding to the target tenant is found, a preset standard application will be used as the target application. This standard application can be a preset default application. When no application corresponding to the target tenant is found, this standard application can be sent to the target tenant as the target application, through which business services can be provided to the target tenant.

[0109] Optionally, before the gateway service receives the data request from the target tenant in step S101 above, it may further include:

[0110] Optionally, the gateway service receives the registration request from the target tenant and forwards it to the authentication subsystem. The registration request may include the target tenant's original information. The registration request may refer to the target tenant's request to authorize the target application for the first time. The target tenant's original information may include information such as the username when the target tenant needs to authorize the target application for the first time. When the authentication subsystem receives the target tenant's original information, it does not find the target tenant's original information in the preset permission database. That is to say, the target tenant is a new tenant and is making an authorization request for the target program for the first time.

[0111] Optionally, the target tenant can input its original information through the client where it is located, and send the input original information to the gateway service through the client where it is located. The gateway service receives the target tenant's original information and sends the received original information to the authentication subsystem.

[0112] Optionally, the authentication subsystem can generate an identifier and authorization information for the target tenant based on the received original information of the target tenant, and save the generated identifier and authorization information to the permission database. The identifier generated by the authentication subsystem is a unique identifier for the target tenant in the authentication subsystem. That is, the identifier generated for the target tenant is inconsistent with the identifiers of other tenants in the preset permission database of the authentication subsystem. The authorization information can be the usage time of the target tenant for the target application.

[0113] In this embodiment, by generating a unique identifier for the target tenant and saving all tenant identifiers and authorization information to the permission database, unified management of authorization information for different tenants can be achieved.

[0114] Optionally, before the gateway service receives the data request from the target tenant in step S101 above, it may further include:

[0115] Optionally, the authentication subsystem obtains application configuration information for the target tenant. The application configuration information is used to indicate the target application corresponding to the target tenant. The configuration information for the target tenant's application may refer to the name of the application.

[0116] Optionally, the authentication subsystem can generate a unique service identifier corresponding to the target tenant based on the application configuration information. Specifically, the generated unique service identifier can be a combination of the identifier generated for the target tenant and the name of the application for which the target tenant is requesting authorization. Alternatively, the generated identifier can be appended to the name of the application for which the target tenant is requesting authorization, or the generated identifier can be appended to the name of the application for which the target tenant is requesting authorization. The combination of the generated identifier and the name of the application for which the target tenant is requesting authorization constitutes the unique service identifier corresponding to the target tenant. This unique service identifier can represent the mapping relationship between the target tenant and the application.

[0117] Optionally, the authentication subsystem can save the generated unique service identifier for the target tenant and the target application for the target tenant to the application database.

[0118] In this embodiment, by generating a unique service identifier for the target tenant and saving the unique service identifiers of all tenants and their corresponding applications to a preset application database, unified management of application information for different tenants can be achieved.

[0119] Optionally, the gateway service described above may search for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, and may include:

[0120] Optionally, the gateway service can traverse each unique service identifier in the application database. If the currently traversed unique service identifier matches the identifier of the target tenant, then the application corresponding to that unique service identifier is read.

[0121] Optionally, since each of the above unique service identifiers is a combination of the target tenant identifier and the application name, the gateway service can iterate through the preset application database to find a unique service identifier that matches the target tenant's identifier. If the unique service identifier found includes the target tenant's identifier, it means that the application name in the unique service identifier is the target application name corresponding to the target tenant. Then the gateway service can read the application corresponding to the unique service identifier and use the read application as the target application corresponding to the target tenant.

[0122] Figure 4 This is a structural block diagram of an electronic device 300 provided in an embodiment of this application. This electronic device can, for example, be the device containing the data processing system described in the foregoing embodiments. Figure 4 As shown, the electronic device may include: a processor 301 and a memory 302.

[0123] Optionally, a bus 303 may also be included, wherein the memory 302 is used to store machine-readable instructions executable by the processor 301. When the electronic device 300 is running, the processor 301 and the memory 302 communicate via the bus 303. When the machine-readable instructions are executed by the processor 301, the method steps in the above method embodiments are performed.

[0124] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems and devices described above can be referred to the corresponding processes in the method embodiments, and will not be repeated here. In the several embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed mutual coupling or direct coupling or communication connection can be through some communication interfaces; the indirect coupling or communication connection of devices or modules can be electrical, mechanical, or other forms.

[0125] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. If the functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes: USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, optical disks, and other media capable of storing program code.

[0126] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.

Claims

1. A data processing method, characterized in that, The method is applied to a data processing system, which includes a gateway service, an authentication subsystem, and multiple applications. The data processing system deploys both private and SaaS applications. The gateway service receives a data request from the target tenant and parses the identifier of the target tenant from the data request; The authentication subsystem determines whether the target tenant has usage rights based on the target tenant's identifier; If so, the gateway service determines the target application corresponding to the target tenant based on the preset mapping relationship between tenants and applications, and forwards the data request to the target application corresponding to the target tenant. The target application processes the data request, obtains the processing result, and sends the processing result to the target tenant through the gateway service.

2. The data processing method according to claim 1, characterized in that, The authentication subsystem determines whether the target tenant has usage rights based on the target tenant's identifier, including: The authentication subsystem receives the identifier of the target tenant sent by the gateway service; The authentication subsystem searches for the authorization information of the target tenant in the permission database based on the target tenant's identifier; The authentication subsystem determines whether the target tenant has the necessary permissions based on the target tenant's authorization information.

3. The data processing method according to claim 1, characterized in that, If so, the gateway service determines the target application corresponding to the target tenant based on a preset tenant-application mapping relationship, including: The gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, wherein the application database is used to record the mapping relationship between tenants and applications; If an application corresponding to the target tenant is found, then the application corresponding to the target tenant is taken as the target application.

4. The data processing method according to claim 3, characterized in that, After the gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, it also includes: If no application corresponding to the target tenant is found, a failure response is sent to the target tenant, indicating that no application corresponding to the target tenant exists.

5. The data processing method according to claim 3, characterized in that, After the gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, it also includes: If no application corresponding to the target tenant is found, a preset standard application will be used as the target application.

6. The data processing method according to claim 3, characterized in that, Before the gateway service receives the data request from the target tenant, it also includes: The gateway service receives the registration request from the target tenant and forwards the registration request to the authentication subsystem. The registration request includes the original information of the target tenant. The authentication subsystem generates an identifier and authorization information for the target tenant based on the target tenant's original information, and saves the identifier and authorization information to the permission database.

7. The data processing method according to claim 6, characterized in that, Also includes: The authentication subsystem obtains application configuration information for the target tenant, and the application configuration information is used to indicate the target application corresponding to the target tenant. The authentication subsystem generates a unique service identifier corresponding to the target tenant based on the application configuration information; Save the unique service identifier and the target application corresponding to the target tenant to the application database.

8. The data processing method according to claim 7, characterized in that, The gateway service searches for the application corresponding to the target tenant in a preset application database based on the target tenant's identifier, including: The gateway service iterates through each unique service identifier in the application database. If the currently iterated unique service identifier matches the identifier of the target tenant, it reads the application corresponding to the unique service identifier.

9. A data processing system, characterized in that, include: The data processing system includes a gateway service, an authentication subsystem, and multiple applications. Private applications and SaaS applications are deployed within the data processing system. The gateway service is used to receive data requests from the target tenant and parse the identifier of the target tenant from the data request; The authentication subsystem is used to determine whether the target tenant has usage rights based on the target tenant's identifier; If so, the gateway service is used to determine the target application corresponding to the target tenant based on the preset mapping relationship between tenants and applications, and forward the data request to the target application corresponding to the target tenant; The target application is used to process the data request, obtain the processing result, and send the processing result to the target tenant through the gateway service.

10. An electronic device, characterized in that, The device includes a memory and a processor, wherein the memory stores a computer program executable by the processor, and the processor executes the computer program to implement the steps of the data processing method according to any one of claims 1-8.

Citation Information

Patent Citations

  • Multi-tenant system achievement based on software as a service (SAAS) application

    CN103036856A

  • Server security defense method and system, communication equipment and storage medium

    CN112565318A

  • Multi-tenant access service implementation method, apparatus and device, and storage medium

    WO2021218328A1

  • Micro-service access method, apparatus and device, and storage medium

    WO2022126968A1