CN111182058B - 在Android端实现跨租户访问的方法、存储介质 - Google Patents
在Android端实现跨租户访问的方法、存储介质 Download PDFInfo
- Publication number
- CN111182058B CN111182058B CN201911394935.1A CN201911394935A CN111182058B CN 111182058 B CN111182058 B CN 111182058B CN 201911394935 A CN201911394935 A CN 201911394935A CN 111182058 B CN111182058 B CN 111182058B
- Authority
- CN
- China
- Prior art keywords
- tenant
- access
- page
- android
- management
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/148—Migration or transfer of sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供在Android端实现跨租户访问的方法、存储介质,方法包括:服务端预设不同业务范围各自对应的租户ID;A租户访问租户管理中间页,并透传B租户地址和B租户ID;租户管理中间页更新当前租户全局变量为B租户ID,并跳转到B租户地址。本发明通过让租户对Android端业务功能透明,从而大大降低已有业务功能对租户支持的难度;在满足需求的同时,不引入更多复杂度;还能节省开发测试成本,为用户提供良好地跨租户访问业务的体验。
Description
技术领域
本发明涉及Android端业务处理领域,具体涉及在Android端实现跨租户访问的方法、存储介质。
背景技术
Android端随着业务需求的不断变化,应用场景的不断增加,原本满足某个维度范围的应用,需要进行调整,支持不同业务范围下的数据隔离。
这里的业务范围可以理解为一种组织形态,例如:区域、学校、班级等。原本一个应用针对的是某个区域(如北京市),后续新增需求,需要支持区域内的用户,在指定用户群体范围(如学校)内进行各种活动,数据可见范围仅限于该用户所属群体范围(学校),用户操作app业务所生成的数据,对非本群体用户不可见。传统的做法针对隔离的需求,各业务服务及数据库增加隔离字段(租户ID),在各业务应用场景内透传租户ID。但在业务繁多且复杂的应用场景,同时修改如此之多的业务系统或者服务势必引入复杂度,带来巨大风险。这样处理的代价将非常巨大,从开发到测试都带来巨大成本。
因此,有必要提供一种能够成本低、复杂度低且满足需求的跨租户访问方案。
发明内容
本发明所要解决的技术问题是:提供在Android端实现跨租户访问的方法、存储介质,花费成本低,且实施复杂度低。
为了解决上述技术问题,本发明采用的技术方案为:
在Android端实现跨租户访问的方法,包括:
服务端预设不同业务范围各自对应的租户ID;
A租户访问租户管理中间页,并透传B租户地址和B租户ID;
租户管理中间页更新当前租户全局变量为B租户ID,并跳转到B租户地址。
本发明提供的另一个技术方案为:
一种计算机可读存储介质,其上存储有计算机程序,所述程序在被处理器执行时,能够实现上述在Android端实现跨租户访问的方法所包含的步骤。
本发明的有益效果在于:服务端仅针对业务范围办法租户ID,Android端利用技术平台页面显示机制,管理各种跨租户访问的租户ID切换,并利用底层统一处理非业务租户ID和租户地址透传,让租户对Android端业务功能透明,从而大大降低已有业务功能对租户支持的难度;在满足需求的同时,又不引入更多复杂度;还能节省开发测试成本,为用户提供良好地跨租户访问业务的体验。
附图说明
图1为本发明实施例一种在Android端实现跨租户访问的方法的流程示意图;
图2为本发明实施例一一种在Android端实现跨租户访问的方法中切换租户环境的流程示意图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:仅针对业务范围办法租户ID,Android端利用技术平台页面显示机制,管理各种跨租户访问的租户ID切换,并利用底层统一处理非业务租户ID和租户地址透传,让租户对Android端业务功能透明。
本发明涉及的技术术语解释:
请参照图1以及图2,本发明提供在Android端实现跨租户访问的方法,包括:
服务端预设不同业务范围各自对应的租户ID;
A租户访问租户管理中间页,并透传B租户地址和B租户ID;
租户管理中间页更新当前租户全局变量为B租户ID,并跳转到B租户地址。
从上述描述可知,本发明的有益效果在于:让租户对端业务功能透明,大大降低已有业务功能对租户支持的难度;在满足类似需求的同时,不引入更多的复杂度;还能节省开发测试成本;为用户提供良好地跨租户访问业务的体验。
进一步地,还包括:
Android端使用当前租户全局变量对应的租户ID与服务端进行业务交互。
由上述描述可知,跨租户后进行业务操作时,上报给服务端的业务数据将带上当前全局变量对应的租户ID以区分不同租户环境,从而实现不同租户的数据隔离。
进一步地,还包括:
返回至租户管理中间页;
租户管理中间页还原当前租户全局变量为A租户ID;
退出租户管理中间页。
由上述描述可知,在有需求返回原本的租户环境时,直接返回到中间页即可自动跳转到原本的租户环境,轻松实现跨租户访问。
进一步地,还包括:
A租户访问租户管理中间页时,租户管理中间页缓存A租户ID。
由上述描述可知,通过缓存跨租户访问前的租户ID,以便在换回原租户时快速读取,实现高效切换。
进一步地,还包括:
定制租户管理中间页的样式。
由上述描述可知,支持中间页样式自定义,给用户带来无感知的切换效果。
本发明提供的另一个技术方案为:
一种计算机可读存储介质,其上存储有计算机程序,所述程序在被处理器执行时,能够实现在Android端实现跨租户访问的方法所包含的下述步骤:
在Android端实现跨租户访问的方法,包括:
服务端预设不同业务范围各自对应的租户ID;
A租户访问租户管理中间页,并透传B租户地址和B租户ID;
租户管理中间页更新当前租户全局变量为B租户ID,并跳转到B租户地址。
进一步地,还包括:
Android端使用当前租户全局变量对应的租户ID与服务端进行业务交互。
进一步地,还包括:
返回至租户管理中间页;
租户管理中间页还原当前租户全局变量为A租户ID;
退出租户管理中间页。
进一步地,还包括:
A租户访问租户管理中间页时,租户管理中间页缓存A租户ID。
进一步地,还包括:
定制租户管理中间页的样式。
从上述描述可知,对应本领域普通技术人员可以理解实现上述技术方案中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来实现的,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时,可包括如上述各方法的流程。同理,在各方法的流程被执行后,同样能够获取各方法对应的有益效果。
其中,所述的存储介质可以是磁盘、光碟、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
实施例一
请参照图2,本实施例提供在Android端实现跨租户访问业务的方法。所述方法包括:
S1:配置跨租户访问执行中间页,下称租户管理中间页。该页面利用Android端的技术平台页面显示机制,即页面堆栈机制实现,用于管理各种跨租户访问场景的租户切换,同时支持从底层统一处理非业务租户ID和租户地址的透传。
S2:服务端预设不同业务范围各自对应的租户ID。
在本实施例中,仅针对业务范围颁发租户ID,有别于现有技术对业务服务以及数据库同时颁发隔离字段(即租户ID)。
S3:A租户访问租户管理中间页,并透传B租户地址和B租户ID。
在Android端当前所处的A租户场景下,有需求进行跨租户访问业务时,通过访问租户管理中间页,同时透传目标租户地址和目标租户ID至租户管理中间页。其中,A租户场景持有目标租户B租户的ID和地址。所述透传,指的是通过Android端平台的页面访问机制(页面间跳转,Android端是Intent+bundle,其实各种移动端、web端都有类似的跳转机制,都可以添加参数,这是一种普通的应用场景),将目标租户的地址和目标租户的ID以参数的方式,透传到租户管理中间页。
S4:A租户访问租户管理中间页时,租户管理中间页将缓存切换前租户场景的ID,即A租户ID,以便在跨租户访问后高效地返回到原来的场景。
S5:租户管理中间页更新B租户ID到租户全局变量globalTenant,并依据步骤S3透传过来的地址(即B租户地址)跳转到B租户场景。
S6:Android端使用当前租户全局变量对应的租户ID与服务端进行业务交互。
也就是说,用户通过Android端当前在B租户场景下进行的所有业务操作,在业务上报至服务端时都将带上当前租户ID(B租户ID),实现在数据环节支持租户隔离,即数据隔离。其是服务端数据层面的概念,数据存储在数据库的表上,客户端(Android端)请求业务接口带上当前运行环境下的"租户ID-A"信息,后端业务根据这个字段(租户ID)的具体值"租户ID-A"作为条件检索数据,检索出来的数据必定是包含"租户ID-A"属性的数据范围。即实现"租户ID-A"、"租户ID-B"、"租户ID-C"等不同租户场景下的数据隔离。
S7:用户在B租户场景结束操作后,返回至上一页,即租户管理中间页;
S8:基于页面栈特性,将先返回到租户管理中间页。中间页读取跨租户前缓存的租户ID,即A租户ID,将该ID更新到租户全局变量globalTenant。
此时,已经返回到了A租户场景下,完成跨租户访问。
优选地,还包括预定制租户管理中间页的样式,使得返回过程让用户无感知,优化用户体验。
S9:执行还原操作完毕,自动退出租户管理中间页。
优选地,将自动销毁中间页,腾出更多资源。
本实施例通过让租户对端业务功能透明,大大降低已有业务功能对租户支持的难度;在满足类似需求的同时,又不引入更多的复杂度;进一步地,还能节省开发测试成本,为用户提供良好地跨租户访问业务的体验。
实施例二
本实施例对应实施例一,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序在被处理器执行时,能够实现上述在Android端实现跨租户访问的方法所包含的步骤。具体的步骤内容在此不进行复述,详情请参阅实施例一的记载。
所述方法通过新增租户管理中间页,租户A访问租户B时,跳转场景将获得的目标租户B的ID,透传给租户管理中间页,该页面执行全局租户ID切换(切换为目标租户B的ID)并缓存管理上一个场景租户A的ID,然后进入租户B范围的业务场景进行业务操作,操作的业务数据会带上当前的全局租户ID提交给服务端,在数据环节支持租户隔离。当用户操作完毕,从租户B返回到租户A时,由于Android页面栈的机制,必定会先返回到中间页,中间页读取上一次缓存的租户ID完成还原,并还原全局租户ID为租户A的ID,返回到租户A的场景,完成跨租户访问。
综上所述,本发明提供的在Android端实现跨租户访问的方法、存储介质,不仅能够实现跨租户访问业务能力,而且做到数据隔离;进一步地,大大降低已有业务功能对租户支持的难度;另外,还同时具备成本小、复杂度低,且易于实施等优点。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (5)
1.在Android端实现跨租户访问的方法,其特征在于,包括:
服务端预设不同业务范围各自对应的租户ID;
A租户访问租户管理中间页,并透传B租户地址和B租户ID;
租户管理中间页更新当前租户全局变量为B租户ID,并跳转到B租户地址;
还包括:
在返回原本的租户环境时,返回至租户管理中间页;
租户管理中间页还原当前租户全局变量为A租户ID;
退出租户管理中间页。
2.如权利要求1所述的在Android端实现跨租户访问的方法,其特征在于,还包括:
Android端使用当前租户全局变量对应的租户ID与服务端进行业务交互。
3.如权利要求1所述的在Android端实现跨租户访问的方法,其特征在于,还包括:
A租户访问租户管理中间页时,租户管理中间页缓存A租户ID。
4.如权利要求1所述的在Android端实现跨租户访问的方法,其特征在于,还包括:
定制租户管理中间页的样式。
5.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序在被处理器执行时,能够实现上述权利要求1-4任意一项所述的在Android端实现跨租户访问的方法所包含的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911394935.1A CN111182058B (zh) | 2019-12-30 | 2019-12-30 | 在Android端实现跨租户访问的方法、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911394935.1A CN111182058B (zh) | 2019-12-30 | 2019-12-30 | 在Android端实现跨租户访问的方法、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111182058A CN111182058A (zh) | 2020-05-19 |
CN111182058B true CN111182058B (zh) | 2022-07-26 |
Family
ID=70650580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911394935.1A Active CN111182058B (zh) | 2019-12-30 | 2019-12-30 | 在Android端实现跨租户访问的方法、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111182058B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456028A (zh) * | 2010-10-27 | 2012-05-16 | 金蝶软件(中国)有限公司 | 一种面向多租户的数据获取方法、装置及系统 |
CN104717651A (zh) * | 2013-12-13 | 2015-06-17 | 华为技术有限公司 | 租户切换方法及装置 |
CN104866513A (zh) * | 2014-02-26 | 2015-08-26 | 国际商业机器公司 | 用于跨租户数据访问的系统和方法 |
CN105871880A (zh) * | 2016-05-10 | 2016-08-17 | 华中科技大学 | 一种云环境下基于信任模型的跨租户访问控制方法 |
CN107395532A (zh) * | 2017-07-11 | 2017-11-24 | 北京航空航天大学 | 一种基于sdn的多租户虚拟网络隔离方法 |
CN108062230A (zh) * | 2018-01-04 | 2018-05-22 | 安徽大学 | 一种因特网范围内串口透传和程序更新系统及其方法 |
CN108449282A (zh) * | 2018-05-29 | 2018-08-24 | 华为技术有限公司 | 一种负载均衡方法及其装置 |
-
2019
- 2019-12-30 CN CN201911394935.1A patent/CN111182058B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456028A (zh) * | 2010-10-27 | 2012-05-16 | 金蝶软件(中国)有限公司 | 一种面向多租户的数据获取方法、装置及系统 |
CN104717651A (zh) * | 2013-12-13 | 2015-06-17 | 华为技术有限公司 | 租户切换方法及装置 |
CN104866513A (zh) * | 2014-02-26 | 2015-08-26 | 国际商业机器公司 | 用于跨租户数据访问的系统和方法 |
CN105871880A (zh) * | 2016-05-10 | 2016-08-17 | 华中科技大学 | 一种云环境下基于信任模型的跨租户访问控制方法 |
CN107395532A (zh) * | 2017-07-11 | 2017-11-24 | 北京航空航天大学 | 一种基于sdn的多租户虚拟网络隔离方法 |
CN108062230A (zh) * | 2018-01-04 | 2018-05-22 | 安徽大学 | 一种因特网范围内串口透传和程序更新系统及其方法 |
CN108449282A (zh) * | 2018-05-29 | 2018-08-24 | 华为技术有限公司 | 一种负载均衡方法及其装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111182058A (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8849802B2 (en) | Historical browsing session management | |
US9069835B2 (en) | Organizing data in a distributed storage system | |
AU2016202333B2 (en) | Historical browsing session management | |
CN109032797A (zh) | 用于提供网页访问的方法及设备 | |
US20130080577A1 (en) | Historical browsing session management | |
US20130080576A1 (en) | Historical browsing session management | |
CN107391758A (zh) | 数据库切换方法、装置及设备 | |
CA2406565A1 (en) | Method and apparatus for using business rules or user roles for selecting portlets in a web portal | |
CN108280080A (zh) | 一种数据同步方法、装置以及电子设备 | |
US10057320B2 (en) | Offline browsing session management | |
CN103607424A (zh) | 一种服务器连接方法及服务器系统 | |
CN106933891A (zh) | 访问分布式数据库的方法和分布式数据服务的装置 | |
US9741060B2 (en) | Recursive navigation in mobile CRM | |
CN111182058B (zh) | 在Android端实现跨租户访问的方法、存储介质 | |
CN116701413A (zh) | 主数据处理方法及装置 | |
CN109542925A (zh) | 数据库访问系统、方法、设备及多用户商城系统 | |
US10205679B2 (en) | Resource object resolution management | |
CN110515979B (zh) | 数据查询方法、装置、设备和存储介质 | |
CN108494870A (zh) | 基于cdn的动态数据加载方法及装置 | |
US20080126309A1 (en) | Hybrid groups | |
US20120102360A1 (en) | System and method for business function reversibility | |
US11645211B2 (en) | Augmenting storage functionality using emulation of storage characteristics | |
CN115544321B (zh) | 一种图数据库存储的实现方法、装置及存储介质 | |
CN109840156A (zh) | 一种数据缓存方法及其设备、存储介质、终端 | |
US7660785B1 (en) | Techniques for managing interactions between applications and a data store |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |