所属的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。计算机可读存储介质例如可以是但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
背景技术:
1、在标准多租户系统中,租户无论是在逻辑上还是物理上,都应存在数据隔离。为了能够让web请求访问到不同租户的数据区,我们需要明确当前请求中的租户标识。
2、租户标识通常是用于识别特定租户的唯一标识。传统的租户隔离方法通常采用域名、header、参数等方式来识别租户标识,但这些方法存在一定的局限性。例如,域名识别方式需要租户使用独立的域名,header识别方式需要租户在请求中额外携带租户标识,参数识别方式需要租户在请求中指定租户标识。因此,现有的租户标识识别方法通常固定单一,无法满足不同模式下的请求的识别需求。
技术实现思路
1、为了克服现有的租户标识识别方法通常固定单一,无法满足不同模式下的请求的识别需求的问题,本发明提供了一种识别租户标识的方法、系统、计算设备及介质。
2、第一方面,为了解决上述技术问题,本发明提供了一种识别租户标识的方法,包括:
3、获取用户发送的不同类型的请求,并获取每种请求对应的saas入口模式;
4、解析和识别每种请求中的多个关键参数,并将每种请求的各个关键参数组装成为对应的租户上下文对象;
5、对于每种类型,根据对应的saas入口模式,确定每个同类型的请求对应的至少一个租户标识解析器,并根据各个租户标识解析器的解析优先级,确定每个同类型的请求对应的目标解析器;
6、对于每种类型的各个请求,利用对应的目标解析器对对应的租户上下文对象进行解析,获得每个请求对应的租户标识。
7、第二方面,本发明还提供了一种识别租户标识的系统,包括:
8、获取模块,用于获取用户发送的不同类型的请求,并获取每种请求对应的saas入口模式;
9、组装模块,用于解析和识别每种请求中的多个关键参数,并将每种请求的各个关键参数组装成为对应请求的租户上下文对象;
10、确定模块,用于对于每种类型,根据对应的saas入口模式,确定每个同类型的请求对应的至少一个租户标识解析器,并根据各个租户标识解析器的解析优先级,确定每个同类型的请求对应的目标解析器;
11、解析模块,用于对于每种类型的各个请求,利用对应的目标解析器对对应的租户上下文对象进行解析,获得每个请求对应的租户标识。
12、第三方面,本发明还提供了一种计算设备,包括存储器、处理器及存储在存储器上并在处理器上运行的程序,处理器执行程序时实现如上述的一种识别租户标识的方法的步骤。
13、第四方面,本发明还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在终端设备上运行时,使得终端设备执行一种识别租户标识的方法的步骤。
14、本发明的有益效果是:通过利用不同类型的请求对应的saas入口模式,使得每种类型的请求都能确定出对应的至少一个能够满足识别需求的租户标识解析器。然后通过根据各个租户标识解析器的优先级,确定出每种请求对应的目标解析器,并利用各个目标解析器对每种请求对应的租户上下文对象进行解析,确定对应的租户标识,使得除目标解析器之外的其他租户标识解析器无需对租户上下文对象进行解析,从而能够在减少数据处理量的同时,也能确定出每种请求对应的租户标识。这样,通过上述方式能够对每种saas入口模式对应类型的请求进行解析识别,确定每种请求对应的租户标识,从而能够满足不同模式下的请求的识别需求。
1.一种识别租户标识的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述对于每种类型,根据对应的所述saas入口模式,确定每个同类型的所述请求对应的至少一个租户标识解析器,包括:
3.根据权利要求1所述的方法,其特征在于,所述对于每种类型,根据所述请求对应的各个所述租户标识解析器的解析优先级,确定每个同类型的所述请求对应的目标解析器,包括:
4.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
5.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
6.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
7.一种识别租户标识的系统,其特征在于,包括:
8.根据权利要求7所述的系统,其特征在于,所述确定模块,具体用于:
9.一种计算设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述的一种识别租户标识的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1至6任一项所述的一种识别租户标识的方法的步骤。