A login system compatible with single tenant and multi-tenant
By designing a login system that is compatible with both single-tenant and multi-tenant logins, the problem of being unable to log in when switching accounts is solved, seamless switching and data visualization are achieved, and user experience and system compatibility are improved.
Patent Information
- Application Number
- CN202210671759.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-14
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2042-06-14
AI Technical Summary
When users switch from single-tenant to multi-tenant on existing SaaS platforms, user accounts are incompatible, resulting in login issues.
Design a login system that is compatible with single-tenants and multi-tenants. By determining whether the user account has a tenant identifier, it can log in directly or after program processing. It supports two account formats, uses historical login data to predict demand, and generates 3D animation for data visualization.
It enables users to switch to a multi-tenant system seamlessly, reduces switching costs, improves user experience, and updates information on pending items in real time through data visualization.
Smart Images

Figure CN114996685B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of leasing technology, and in particular to a login system compatible with single tenants and multiple tenants. Background Art
[0002] Multi-tenancy: Multi-tenancy technology, also known as multi-tenancy technology, abbreviated as SaaS, is a software architecture technology that implements how to share the same system or program components in a multi-user environment (the multi-users here are generally enterprise users) and ensure the isolation of data between users.
[0003] Single-tenant: Single-tenancy creates a separate software application and supporting environment for each user. Each customer has a database and operating system on a separate server or in a virtual network environment isolated by strong security measures.
[0004] Regardless of the technical solution currently used, multi-tenant SaaS platforms or systems on the market require a tenant identifier to identify tenant information. For example, a common corporate email address can be identified by adding the tenant identifier to the username, such as zhangsan@isyscore.com, where isyscore is the tenant identifier. Alternatively, a second-level domain name can be added to the login URL, such as https: / / isyscore.yuque.com.
[0005] If the system is single-tenant, a tenant ID is not required. For example, the login name is "zhangsan". Currently, instruction set IoT operating systems offer both single-tenant and multi-tenant product features. If a user initially disables multi-tenancy and then requires it as business development progresses, users created during the single-tenant learning period will be unable to log in to the system due to the lack of a tenant ID. Therefore, it is essential to design a practical login system that is compatible with both single-tenant and multi-tenant systems. Summary of the Invention
[0006] The purpose of the present invention is to provide a login system that is compatible with single tenants and multi-tenants, so as to solve the problems raised in the above background technology.
[0007] In order to solve the above technical problems, the present invention provides the following technical solutions: a login system compatible with single tenants and multi-tenants, in which each user account under a single tenant is only used as a means of login, and there is no tenant identification in the account;
[0008] User accounts for each tenant in a multi-tenant environment: If upgrading from a single tenant to a multi-tenant environment, the account remains unchanged. For other tenants, users within the same tenant must provide the tenant information.
[0009] When upgrading from single-tenancy to multi-tenancy, incomplete accounts without tenant IDs may still exist in the original system. Therefore, the login system needs to be compatible with this situation. All interfaces that support account numbers as parameters, including the login interface and the user details interface, must be compatible with two account formats: user accounts with and without the tenant ID suffix.
[0010] According to the above technical solution, the working method of the login system is:
[0011] S1. The system starts running and users enter their respective accounts;
[0012] S2. Determine whether the user's account contains a tenant identifier;
[0013] S3. If there is a tenant ID, log in directly to the specified tenant and jump to S5;
[0014] S4. If there is no tenant ID, after program processing, log in to the original tenant;
[0015] S5. The program ends.
[0016] According to the above technical solution, in the above step S4, the program processing method is:
[0017] Set the time range between the current time and the expected time as T, and collect the number of account logins within this time range every day in the historical data. The set of multi-tenant user account login times is recorded as C1 = {x1, x2, x3, ..., xn}, and the set of single-tenant user account login times is recorded as C2 = {y1, y2, y3, ..., yn}, and the historical login status of the account is counted.
[0018] According to the above technical solution, in the above step S4, the number of single-tenant and multi-tenant logins on the same day is predicted according to the formula:
[0019]
[0020] Among them, x i 、y i They are respectively the predicted number of logins for multi-tenant user accounts and the predicted number of logins for single-tenant user accounts within the time range T on the same day, and the number of random refreshes of the pending items information on the day is determined based on the predicted number. The more logins, the stronger the need to understand the current situation of the pending items at this time, and the more the pending items are refreshed, and the more real-time updates of the pending items are made.
[0021] According to the above technical solution, after the user logs into the system, the demand for the user's items to be processed is estimated according to the formula:
[0022]
[0023] Among them, m x 、m y are the predicted demand of multi-tenant user accounts and single-tenant user accounts when the items to be processed start to be supplied; m max 、m min They are the demand for multi-tenant user accounts and single-tenant user accounts at the current time.
[0024] According to the above technical solution, the data information left after logging into the system is analyzed and compared, and the number of multi-tenants exceeds m x Or the total number of tenants exceeds m x +m y , then the output result is 1; otherwise, the output result is 0.
[0025] According to the above technical solution, a demand matching module is also included, and the demand matching module includes the following units:
[0026] The area detection unit extracts the area data of the tenants who are going to place items in the same storage space. If the area is smaller than the current storage space area, it enters the simulation modeling unit; if it is larger than the current storage space area, it is re-planned; the simulation modeling unit is used to simulate the internal space of the account storage space area to simulate the placement of tenants; the animation placement unit generates an animation icon based on the simulated placement method and sends it to the processing personnel terminal; the scanning unit is used for the processing personnel to use the processing personnel terminal to scan the number, authenticate and transmit the data to the automatic entry permission unit at the same time; the automatic entry permission unit is used to automatically activate the account storage space insurance measures according to the scanning results of the processing personnel.
[0027] According to the above technical solution, the animation placement unit includes the following units: a placement unit, which uses a computer to perform placement attempts based on the space of the account accommodation space, and inputs the obtained placement order into the instruction unit as basic animation data; an instruction unit, which obtains a three-dimensional animation generation instruction based on the three-dimensional animation binding logic dynamic link library, the three-dimensional animation control initial information and the basic animation data; an acquisition unit, which is used to obtain a three-dimensional animation initial model according to the three-dimensional animation generation instruction, and set a control node identifier in the three-dimensional animation initial model; a parameter unit, which is used to generate attribute information corresponding to the control node identifier according to the three-dimensional animation control initial information, and input the attribute information corresponding to the control node identifier into the plug-in to calculate and obtain the three-dimensional animation control parameter information; an animation generation unit, which drives the three-dimensional animation initial model according to the three-dimensional animation control parameter information to generate a three-dimensional animation;
[0028] During the generation process, in the two-dimensional plane model, the coordinates of the observation point position are W = (x, y), and the set of vertex coordinates of the effective area of the items to be processed is Q = {(a1, b1), (a2, b2), (a3, b3), (a4, b4)}. The placement points of different items to be processed are determined according to their heights, and the coordinates of the placement points of different items to be processed in the corresponding storage space are T = {(c1, d1)(c2, d2)(c3, d3)...(cm, dm)}.
[0029] According to the formula: the distance between the placement point of the items to be processed and the vertices of each valid area is M:
[0030]
[0031] The distance between the location of the items to be processed and the observation point is L:
[0032]
[0033] The angle between the placement point and the observation point is:
[0034]
[0035] When M exceeds the preset value and the angle When the time t is greater than the preset value, it indicates that the items to be processed are placed reasonably, otherwise, the placement is unreasonable. i ,b i ,c i ,d i is one of the coordinates.
[0036] Compared with the prior art, the beneficial effects achieved by the present invention are: the present invention supports users to switch from a single-tenant system to a multi-tenant system without any feeling, with good user experience and no switching cost. By setting up the login system, the account storage space insurance measure is automatically activated according to the scanning results of the processing personnel, and the three-dimensional animation initial model is driven according to the three-dimensional animation control parameter information to generate a three-dimensional animation, so as to better reflect the data visualization effect, and the number of random refreshes of the information of the items to be processed on the day is determined according to the predicted amount. The more login times, the stronger the demand for understanding the current situation of the items to be processed at this time, and the more times the items to be processed are refreshed, the more real-time updates of the real-time dynamic display effect of the items to be processed. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation of the present invention. In the accompanying drawings:
[0038] Figure 1It is a schematic diagram of the overall module structure of the present invention;
[0039] Figure 2 It is a schematic diagram of the overall process of the present invention. DETAILED DESCRIPTION
[0040] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0041] See also Figure 1-2 ,The present invention provides a technical solution: a login system compatible with single tenants and multi-tenants.,Under a single tenant, each user account is only used as a means of login, and there is no tenant identification in the account;
[0042] User accounts for each tenant in a multi-tenant environment: If upgrading from a single tenant to a multi-tenant environment, the account remains unchanged. For other tenants, users within the same tenant must provide the tenant information.
[0043] When upgrading from single-tenancy to multi-tenancy, incomplete accounts without tenant IDs still exist in the original system. In this case, the login system needs to be compatible with this situation. All interfaces that support account numbers as parameters, including the login interface and the user details interface, must be compatible with two account formats: user accounts with and without the tenant ID suffix.
[0044] The login system works as follows:
[0045] S1. The system starts running and users enter their respective accounts;
[0046] S2. Determine whether the user's account contains a tenant identifier;
[0047] S3. If there is a tenant ID, log in directly to the specified tenant and jump to S5;
[0048] S4. If there is no tenant ID, after program processing, log in to the original tenant;
[0049] S5, the program ends running;
[0050] In the above step S4, the program processing method is:
[0051] Set the time range between the current time and the expected time to T. Collect the number of account logins within this time range every day in the historical data. The set of multi-tenant user account login times is recorded as C1 = {x1, x2, x3, ..., xn}, and the set of single-tenant user account login times is recorded as C2 = {y1, y2, y3, ..., yn}. Count the historical login status of the account.
[0052] In the above step S4, the number of single-tenant and multi-tenant logins on the same day is predicted according to the formula:
[0053]
[0054] Among them, x i 、y i The predicted number of logins for multi-tenant user accounts and single-tenant user accounts within the time range T on the same day are used. The number of random refreshes of pending items on that day is determined based on the predicted number of logins. The more logins there are, the stronger the need to understand the current status of pending items. The more frequently the pending items are refreshed, the more real-time updates are made on the pending items.
[0055] After the user logs in to the system, the demand for the user's items to be processed is estimated according to the formula:
[0056]
[0057] Among them, m x 、m y are the predicted demand of multi-tenant user accounts and single-tenant user accounts when the items to be processed start to be supplied; m max 、m min The demand for multi-tenant user accounts and single-tenant user accounts at the current time respectively;
[0058] According to the data information left after logging into the system, the number of multi-tenants exceeds m x Or the total number of tenants exceeds m x +m y , then the output result is 1; otherwise, the output result is 0;
[0059] It also includes a demand matching module, which includes the following units:
[0060] The area detection unit extracts the area data of tenants who are going to place items in the same storage space. If the area is smaller than the current storage space area, it enters the simulation modeling unit; if it is larger than the current storage space area, it is re-planned; the simulation modeling unit is used to simulate the internal space of the account storage space area to simulate the placement of tenants; the animation placement unit generates an animated diagram based on the simulated placement method and sends it to the processing personnel terminal; the scanning unit is used for the processing personnel to use the processing personnel terminal to scan the number, authenticate and transmit the data to the automatic entry permission unit at the same time; the automatic entry permission unit is used to automatically activate the account storage space security measures based on the processing personnel's scanning results;
[0061] The animation placement unit includes the following units:
[0062] The placement unit uses a computer to try placement according to the space of the account accommodation space, and inputs the obtained placement order into the instruction unit as basic animation data; the instruction unit obtains the 3D animation generation instruction based on the 3D animation binding logic dynamic link library, the 3D animation control initial information and the basic animation data; the acquisition unit is used to obtain the 3D animation initial model according to the 3D animation generation instruction, and set a control node identifier in the 3D animation initial model; the parameter unit is used to generate attribute information corresponding to the control node identifier according to the 3D animation control initial information, and input the attribute information corresponding to the control node identifier into the plug-in to calculate the 3D animation control parameter information; the animation generation unit is based on The 3D animation control parameter information drives the 3D animation initial model to generate 3D animation, supporting users to seamlessly switch from a single-tenant system to a multi-tenant system, with a good user experience and no switching cost. By setting up the login system, the account space insurance measure is automatically activated according to the scanning results of the processing personnel. The 3D animation control parameter information drives the 3D animation initial model to generate 3D animation, which is convenient for better reflecting the data visualization effect. The number of random refreshes of the pending items information on the day is determined according to the predicted amount. The more logins, the stronger the demand for understanding the current situation of the pending items at this time, and the more the pending items are refreshed, the more real-time updates of the real-time dynamic display effect of the pending items are updated;
[0063] During the generation process, in the two-dimensional plane model, the coordinates of the observation point position are W = (x, y), and the set of vertex coordinates of the effective area of the items to be processed is Q = {(a1, b1), (a2, b2), (a3, b3), (a4, b4)}. The placement points of different items to be processed are determined according to their heights, and the coordinates of the placement points of different items to be processed in the corresponding storage space are T = {(c1, d1)(c2, d2)(c3, d3)...(cm, dm)}.
[0064] According to the formula: the distance between the placement point of the items to be processed and the vertices of each valid area is M:
[0065]
[0066] The distance between the location of the items to be processed and the observation point is L:
[0067]
[0068] The angle between the placement point and the observation point is:
[0069]
[0070] When M exceeds the preset value and the angle When the time t is greater than the preset value, it indicates that the items to be processed are placed reasonably, otherwise, the placement is unreasonable. i ,b i ,c i ,d i is one of the coordinates.
[0071] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that includes a list of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus.
[0072] Finally, it should be noted that the above descriptions are merely preferred embodiments of the present invention and are not intended to limit the present invention. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art will be able to modify the technical solutions described in the aforementioned embodiments or substitute equivalents for some of the technical features. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention.
Claims
1. A login system compatible with single tenant and multi-tenant, characterized in that: Under a single tenant, each user account is only used as a means of login, and there is no tenant identifier in the account; When logging in with user accounts of each tenant in a multi-tenant system, if the system is upgraded from single tenant to multi-tenant, the account remains unchanged. In other situations, users within the same tenant need to bring the tenant information. When upgrading from single-tenancy to multi-tenancy, incomplete accounts without tenant IDs still exist in the original system. In this case, the login system needs to be compatible with this situation. All interfaces that support account numbers as parameters, including the login interface and the user details interface, must be compatible with two account formats: user accounts with and without the tenant ID suffix. The login system works as follows: S1. The system starts running and users enter their respective accounts; S2. Determine whether the user's account contains a tenant identifier; S3. If there is a tenant ID, log in directly to the specified tenant and jump to S5; S4. If there is no tenant ID, after program processing, log in to the original tenant; S5. The program ends.
2. A login system compatible with single tenants and multiple tenants according to claim 1, characterized in that: In the above S4, the program processing method is: Set the time range between the current time and the expected time as T, and collect the number of account logins within this time range every day in the historical data. The set of multi-tenant user account login times is recorded as C1={x1, x2, x3, ..., x n }, the number of login times of user accounts of a single tenant is recorded as C2={y1, y2, y3, ..., y n }, collect statistics on the historical login status of accounts within this time range every day.
3. A login system compatible with single tenants and multiple tenants according to claim 2, characterized in that: In the above S4, the number of single-tenant and multi-tenant logins on the same day is predicted according to the formula: ; in, They are respectively the predicted number of logins for multi-tenant user accounts and the predicted number of logins for single-tenant user accounts within the time range T on the same day, and the number of random refreshes of the pending items information on the day is determined based on the predicted number. The more logins, the stronger the need to understand the current situation of the pending items at this time, and the more the pending items are refreshed, and the more real-time updates of the pending items are made.
4. A login system compatible with single tenants and multiple tenants according to claim 3, characterized in that: After the user logs in to the system, the demand for the user's items to be processed is estimated according to the formula: ; in, The predicted demand of multi-tenant user accounts and single-tenant user accounts when the items to be processed start to be supplied; They are the demand for multi-tenant user accounts and single-tenant user accounts at the current time.
5. A login system compatible with single tenants and multiple tenants according to claim 4, characterized in that: According to the data information left after logging into the system, the number of multi-tenants exceeds or the total number of tenants exceeds , then the output result is 1; Otherwise, the output is 0.
6. A login system compatible with single tenants and multiple tenants according to claim 5, characterized in that: It also includes a demand matching module, which includes the following units: The area detection unit extracts the area data of tenants who are going to place items in the same storage space. If the area is smaller than the current storage space area, it enters the simulation modeling unit; if it is larger than the current storage space area, it is re-planned; A simulation modeling unit is used to simulate and model the internal space of the account accommodation space area to simulate the placement of tenants; The animation placement unit generates an animation icon based on the simulated placement method and sends it to the processing personnel terminal; the scanning unit is used for the processing personnel to use the processing personnel terminal to scan the number, and at the same time transmit the data to the automatic entry permission unit for authentication; the automatic entry permission unit is used to automatically activate the account storage space security measures according to the processing personnel's scanning results.
7. A login system compatible with single tenants and multiple tenants according to claim 6, characterized in that: The animation placement unit includes the following units: The placement unit uses a computer to perform placement attempts based on the space of the account accommodation space, and inputs the resulting placement sequence into the instruction unit as basic animation data; the instruction unit obtains a 3D animation generation instruction based on the 3D animation binding logic dynamic link library, the 3D animation control initial information and the basic animation data; An acquisition unit, configured to acquire a 3D animation initial model according to a 3D animation generation instruction, and to set a control node identifier in the 3D animation initial model; The parameter unit is used to generate attribute information corresponding to the control node identifier based on the initial 3D animation control information, and input the attribute information corresponding to the control node identifier into the plug-in to calculate the 3D animation control parameter information; the animation generation unit drives the 3D animation initial model based on the 3D animation control parameter information to generate the 3D animation; During the generation process, in the two-dimensional plane model, the coordinates of the observation point position are W=(x,y), and the set of vertex coordinates of the effective area of the items to be processed is Q={(a1,b1),(a2,b2),(a3,b3),(a4,b4)}. According to the height of different items to be processed, the placement points of different items to be processed are judged, and the coordinates of the placement points of different items to be processed in the corresponding accommodation space are T={(c1,d1)(c2,d2)(c3,d3)...(c m ,d m )}; According to the formula: the distance between the placement point of the items to be processed and the vertices of each valid area is M: ; The distance between the location of the items to be processed and the observation point is L: ; The angle between the placement point and the observation point is: ; When M exceeds the preset value and the angle When the time t is greater than the preset value, it indicates that the items to be processed are placed reasonably, otherwise, the placement is unreasonable. is one of the coordinates.
Citation Information
Patent Citations
Multi-tenant database isolation method and device and electronic equipment
CN112906054A