CN102739427B - 网络百科用户管理系统及其制作方法、应用的访问方法 - Google Patents

网络百科用户管理系统及其制作方法、应用的访问方法 Download PDF

Info

Publication number
CN102739427B
CN102739427B CN201110095011.9A CN201110095011A CN102739427B CN 102739427 B CN102739427 B CN 102739427B CN 201110095011 A CN201110095011 A CN 201110095011A CN 102739427 B CN102739427 B CN 102739427B
Authority
CN
China
Prior art keywords
application
encyclopedia
encyclopedic
user
roles
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
Application number
CN201110095011.9A
Other languages
English (en)
Other versions
CN102739427A (zh
Inventor
王清明
陈浩然
左莉
侯建勋
张明主
韦晨曦
王京津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201110095011.9A priority Critical patent/CN102739427B/zh
Priority to PCT/CN2012/073669 priority patent/WO2012139482A1/zh
Publication of CN102739427A publication Critical patent/CN102739427A/zh
Application granted granted Critical
Publication of CN102739427B publication Critical patent/CN102739427B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种涉及网络百科用户管理系统及其制作方法、应用的访问方法。所述系统包括:应用管理模块,所述应用管理模块包括:ID存储单元,存储有为所述每个百科应用分配注册的唯一标识ID;通用权限管理单元,其抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑,为用户在对应ID的所述百科应用里分配成员角色及其权限;第一交互接口单元,实现与所述用户中心模块之间的交互;第二交互接口单元,实现与各个百科应用之间的交互。本发明能够在尽可能少改动现有百科应用的前提下在各个异构系统百科应用间实现用户角色、权限管理,方便用户使用各种百科应用。

Description

网络百科用户管理系统及其制作方法、应用的访问方法
技术领域
本发明涉及网络百科技术领域,特别是涉及网络百科用户管理系统及其制作方法、应用的访问方法。
背景技术
随着信息技术的发展,百科全书已经由传统的纸质版本扩展到网络上。利用网络的广泛参与特点,更多信息、更快更新、能满足更多需求的百科全书的有可能由不断迅猛发展的互联网技术以及遍布全球的网民来完成。比如,从2001年“维基百科”的创立开始,到传统百科领域“在线版”的Encyclopedia、Brockhaus等、微软的Encarta、谷歌的Knol......形形色色的网络百科正在孕育、诞生、壮大。
网络的百科全书有其不同于传统百科全书的特点,其中一个重大的特点是,编辑者不限于专家团队,而是更多地是遍布全球的拥有联网计算机的众多网民。这些网民成为网络百科全书的主要编辑者,同时作为网络百科全书的用户,融入到百科全书电子系统的各项应用中。
如图1所示,现有网络百科系统中有不少独立的应用,像分类频道管理员、名片编辑用户、任务系统等,每一个这样的应用都需要用户管理模块,有些还需要支持权限管理。
现有技术中,每一个百科应用都需要用户管理模块,有些还需要支持权限管理;而每一个需要支持权限管理的应用中,都有不同的用户及其角色、权限,那么同一个用户在不同应用切换时,就存在更换用户管理模块、重复登录来访问不同的应用的技术问题。
本发明的发明人有留意到,在其他领域,存在一些相关技术,如2007年8月29日公开的中国发明专利第200610007860.3号,其涉及通信技术领域中一种集中用户安全管理方法及装置。所述装置包括:集中用户管理域及多个应用域,所述集中用户管理域提供多个接口与各应用域交互,其至少包括集中用户管理及授权服务实体和集中用户认证及审核服务实体来统一管理多个应用域;所述的集中用户管理及授权服务实体,用于为用户分配权限,并产生规则数据;所述的集中用户认证及审核服务实体,用于提供集中认证、鉴权及记录日志的服务。
发明内容
本发明所要解决的技术问题是提供一种网络百科用户管理系统及其制作方法、应用的访问方法,本发明能够在尽可能少改动现有百科应用的前提下在各个异构系统百科应用间实现用户角色、权限管理,方便用户使用各种百科应用。
本发明为解决技术问题而采用的技术方案是提供一种网络百科用户管理系统,包括:应用管理模块,所述应用管理模块作为用户中心模块和百科应用之间的通用型接口模块;所述应用管理模块包括:标识存储单元,存储有为所述每个百科应用分配注册的唯一标识;通用权限管理单元,其基于各个所述百科应用的共有逻辑为用户在对应标识的所述百科应用里分配成员角色及其权限;第一交互接口单元,用于接受来自所述用户中心模块的用户访问,反馈交互结果至所述用户中心模块,实现与所述用户中心模块之间的交互;第二交互接口单元,用于根据所述用户访问启用通用权限管理单元,接管所述百科应用的用户管理模块功能对所述百科应用进行访问,反馈交互结果至所述第一交互接口单元,实现与各个百科应用之间的交互。
其中,通用权限管理单元通过抽离并独立出各个百科应用的包括成员和权限管理在内的共有逻辑,为用户在对应标识的所述百科应用里分配成员角色及其权限,包括以下处理步骤:获取每个百科应用分配注册的唯一标识;获取各个所述百科应用的成员角色名单;获取各个百科应用的成员角色在该应用中的对应权限;检查成员角色名单和成员角色权限之间的对应关系;检查各个百科应用的关联关系/或相似度;根据成员角色名单、成员角色权限以及各个百科应用的关联关系/相似度,将相关联或相近似的百科应用抽离出来并匹配相应的成员角色和成员角色权限。
其中,所述第二交互接口单元具体用于根据携带要访问百科应用标识的所述用户访问、获取百科应用对象及成员在所述百科应用中的角色,对所述百科应用进行访问,反馈交互结果至所述第一交互接口单元,实现与各个百科应用之间的交互。
其中,所述系统包括百科应用注册单元,用于预先对各个所述百科应用进行注册,注册后将各个百科应用的标识存入标识存储单元;百科应用加载单元,用于在系统运行时加载所有注册的百科应用以实现插件功能。
其中,所述通用权限管理单元实现抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑中,具体是指用于将用户参与百科应用的关系抽象成角色和权限,并为其编写配置类文件,通过编写应用适配器配置文件将所述角色和权限抽象实现;所述百科应用注册单元具体用于通过所述适配器代码中实现的必要接口将百科应用注册;所述百科应用加载单元具体用于在系统运行时读取所述适配器配置文件,将所述百科应用作为插件加载;所述第二交互接口单元具体用于通过所述加载的百科应用所提供的接口对外提供服务,实现与各个百科应用之间的交互。
其中,包括:百科应用反注册单元,用于在系统退出运行时通过配置文件进行反注册,将所述百科应用插件卸载。
其中,包括:相互分离的读接口单元和写接口单元,所述读接口单元和写接口单元分别用于对所述百科应用进行读写操作,所述第二交互接口单元通过调用所述读接口单元和写接口单元实现与各个百科应用之间的交互。
其中,所述读接口单元配置有适配器抽象类配置文件,并且包括以下子接口:权限检查器,用于检查用户当前此百科应用中是否具备指定权限;角色查询器,用于根据用户标识查询用户在当前百科应用的角色;扩展对象查看器,用于根据百科应用的扩展名称获取当前百科应用所支持的扩展对象。
其中,包括:所述通用权限管理单元通过编写应用适配器配置文件将所述角色和权限抽象实现是指:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用扩展行为的扩展类将所述角色和权限抽象实现。
其中,包括:所述通用权限管理单元通过编写应用适配器配置文件将所述角色和权限抽象实现是指:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用抽象行为的标准将所述角色和权限抽象实现。
其中,通用权限管理单元抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑是指:所述通用权限管理单元抽离并独立出各个所述百科应用的包括成员、权限管理、相应扩展抽象图标和徽章在内的共有逻辑。
本发明为解决技术问题而采用的技术方案是提供一种网络百科用户管理系统的制作方法,包括:建立应用管理模块,使其成为网络百科的用户中心模块和百科应用之间的通用型接口模块,所述建立应用管理模块包括:抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑;
为用户在对应标识的所述百科应用里分配成员角色及其权限;
建立与所述用户中心模块之间的交互接口,使其能够接受来自所述用户中心模块的用户访问,反馈交互结果至所述用户中心模块;建立与各个百科应用之间的交互接口,使其能够根据所述用户访问启用通用权限管理单元,接管所述百科应用的用户管理模块功能;其中,建立所述应用管理模块的以上步骤不分先后。
其中,所述抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑步骤,包括:将用户参与百科应用的关系抽象成角色和权限,并为其编写配置类文件,通过编写应用适配器配置文件将所述角色和权限抽象实现。
其中,所述编写应用适配器配置文件将所述角色和权限的步骤包括:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用扩展行为的扩展类将所述角色和权限抽象实现;或所述通用权限管理单元通过在适配器配置文件中写入支持百科应用抽象行为的标准将所述角色和权限抽象实现。
其中,所述抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑的步骤包括:抽离并独立出各个所述百科应用的包括成员、权限管理、相应扩展抽象图标和徽章在内的共有逻辑。
其中,所述建立与各个百科应用之间的交互接口的步骤包括:建立相互分离的读接口单元和写接口单元,分别用于对所述百科应用进行读写操作。
本发明为解决技术问题而采用的技术方案是提供一种网络百科应用的访问方法,包括:截获来自网络百科用户中心模块并发送至百科应用的用户访问请求;根据所述用户访问请求接管所述百科应用的用户管理模块功能,为用户在对应标识的所述百科应用里分配成员角色及其权限,所述成员角色及其权限是预先对各个所述百科应用抽象而得到,即抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑而得到;依据所述成员角色及其权限对相应的百科应用进行访问。
其中,在截获来自网络百科用户中心模块并发送至百科应用的用户访问请求步骤之前,包括加载已注册的所述各个百科应用。
其中,所述依据成员角色及其权限对相应的百科应用进行访问的步骤包括:采用相互分离的读接口单元和写接口单元,依据成员角色及其权限分别用于对所述百科应用进行读写操作。
通过上述实施例,本发明重构用户基本信息、编辑统计等后台逻辑;建立围绕用户的应用和角色权限系统抽象,旨在建立一个公共的网络百科应用的管理组件,接管现有百科系统中各个独立的百科应用的用户管理模块如分类频道管理员、名片编辑用户、任务系统等,因此能够在尽可能少改动现有百科应用的前提下在各个异构系统百科应用间实现用户角色、权限管理,方便用户使用各种百科应用;并且对以后百科应用的开发和维护类似应用有较大帮助。
通过对用户的应用和角色权限系统抽象,还可以逐步建立用户激励体系比如图标和徽章体系。
附图说明
图1是本发明网络百科用户管理系统实施例一的原理框图;
图2是本发明网络百科用户管理系统实施例二的原理框图;
图3是本发明网络百科用户管理系统实施例三的原理框图;
图4是本发明网络百科用户管理系统实施例四的原理框图;
图5是本发明网络百科用户管理系统实施例五中读接口单元的原理框图;
图6是本发明中将各百科应用进行抽象的原理图;
图7是本发明中将各百科应用系统作为插件加载进网络百科平台的示意图;
图8是本发明网络百科应用的访问方法实施例的流程图。
具体实施方式
下面结合附图和实施例对本发明进行详细说明。
先介绍本发明中几个基础的基于用户管理的定义:
应用(app):这里指网络百科的各种应用,围绕百科注册用户和基本业务逻辑(编辑等)进行的独立产品或扩充应用。比如蝌蚪团、分类频道管理员、金箍棒任务系统等,可以抽象的看作百科系统的app。
角色(role):注册用户作为app的成员(member)的基础上被授予的一种关系抽象。比如分配频道管理员分为普通管理员和高级管理员。在app系统中,role作为最基本的反映成员关系和权限粒度的抽象,必须保证存在并配置。允许member在app中拥有多个role。
权限(priv):反映member在app业务范围内进行各种操作前需要被赋予条件抽象。通过给role赋予适当的priv,可以对app中的成员用户进行更加细粒度的权限控制。在百科app子系统中,priv是可选的。
以下详细介绍本发明的实施例:
参阅图1,本发明网络百科用户管理系统实施例包括:
应用管理模块,所述应用管理模块作为用户中心模块和百科应用之间的通用型接口模块;
所述应用管理模块包括:
ID存储单元,存储有为所述每个百科应用分配注册的唯一标识ID;
通用权限管理单元,其通过抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑,为用户在对应标识的所述百科应用里分配成员角色及其权限,包括以下处理步骤:
获取每个百科应用分配注册的唯一标识;
获取各个所述百科应用的成员角色名单;
获取各个所述百科应用的成员角色在该应用中的对应权限;
检查成员角色名单和成员角色权限之间的对应关系;
检查各个所述百科应用的关联关系/或相似度;
根据成员角色名单、成员角色权限以及各个所述百科应用的关联关系/相似度,将相关联或相近似的百科应用抽离出来并匹配相应的成员角色和成员角色权限。
第一交互接口单元,用于接受来自所述用户中心模块的用户访问,反馈交互结果至所述用户中心模块,实现与所述用户中心模块之间的交互;
第二交互接口单元,用于根据所述用户访问启用通用权限管理单元,接管所述百科应用的用户管理模块功能对所述百科应用进行访问,反馈交互结果至所述第一交互接口单元,实现与各个百科应用之间的交互。
以上可以了解,本发明网络百科用户管理系统实施例重构用户基本信息、编辑统计等后台逻辑;建立围绕用户的应用和角色权限系统抽象,旨在建立一个公共的网络百科应用的管理组件,接管现有百科系统中各个独立的百科应用如分类频道管理员、名片编辑用户、任务系统等,因此能够在尽可能少改动现有百科应用的前提下在各个异构系统百科应用间实现用户角色、权限管理,方便用户使用各种百科应用;并且对以后百科应用的开发和维护类似应用有较大帮助。
通过对用户的应用和角色权限系统抽象,还可以逐步建立用户激励体系比如ICON和徽章体系。
以上通过抽象成员和权限管理逻辑,开发一套围绕用户的百科应用管理组件,这种抽象至少有以下两个优点:
1)允许抽离并独立出百科应用的共有逻辑包括成员和权限管理以及相应扩展抽象如ICON等,以便于被通用权限管理单元接管,所述通用权限管理单元可以是百科应用系统基础的AppManager类;
2)可以向系统用户提供更加简明统一的接口,通过适配已有的百科应用实现或配置新的参数config,很容易开发出新的百科应用。
在另一个实施例中,所述第二交互接口单元具体用于根据携带要访问百科应用ID的所述用户访问、获取百科应用对象及成员在所述百科应用中的角色,对所述百科应用进行访问,反馈交互结果至所述第一交互接口单元,实现与各个百科应用之间的交互。
其中每一个百科应用都分配有一个百科应用ID,在使用之前注册所有的百科应用,使通用权限管理单元能够进行角色和权限分配。当然,也可以在开始时就配有各个百科应用的ID,无需注册。
参阅图2,在另一个实施例中,所述系统进一步包括:
百科应用注册单元,用于预先对各个所述百科应用进行注册,注册后将各个百科应用的ID存入ID存储单元;
百科应用加载单元,用于在系统运行时加载所有注册的百科应用以实现插件功能。
上述实施例是为方便实现百科应用的注册而专门设计的结构,利用插件注册与注销的方式实现记载与卸除,非常简易方便,不需要对系统作太多改动。
在本发明一个实施例中,可以采用网络程序的设计来实现所述通用权限管理单元、百科应用注册单元、百科应用加载单元以及第二交互接口单元,比如:
所述通用权限管理单元实现抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑中,具体是指用于将用户参与百科应用的关系抽象成角色和权限,并为其编写配置类文件,通过编写应用适配器配置文件将所述角色和权限抽象实现;
所述百科应用注册单元具体用于通过所述适配器代码中实现的必要接口将百科应用注册;
所述百科应用加载单元具体用于在系统运行时读取所述适配器配置文件,将所述百科应用作为插件加载;
所述第二交互接口单元具体用于通过所述加载的百科应用所提供的接口对外提供服务,实现与各个百科应用之间的交互。
参阅图3,在另一个实施例中,进一步包括:
百科应用反注册单元,用于在系统退出运行时通过配置文件进行反注册,将所述百科应用插件卸载。
通过配置文件进行反注册即可将插件应用从本系统中卸载,对网络百科平台没有任何副作用。这种管理器、应用、扩展、角色四个概念相互支撑的结构构成了本发明网络百科用户平台的基础,也是一种相对通用的比较灵活的插件体系设计方式。
参阅图4,在另一个实施例中,包括:
相互分离的读接口单元和写接口单元,所述读接口单元和写接口单元分别用于对所述百科应用进行读写操作,所述第二交互接口单元通过调用所述读接口单元和写接口单元实现与各个百科应用之间的交互。
从网络程序设计的角度来看,则是使百科应用的读写接口分离,分别制定了写接口IBaikeAppWriteAdapter和读抽象类BaikeAppAbstract。这种做法简化了本系统接管异构系统百科应用的复杂度,减小百科应用的粒度,降低开发受接管的网络百科的开发难度,降低迁移老系统的成本。因为本系统仅仅需要读取百科应用的基本功能,而不是写。对异构系统百科应用有写需求的客户类,只需要判断其是否实现了写接口IBaikeAppWriteAdapter即可。
参阅图5,在另一个实施例中,所述读接口单元配置有适配器抽象类配置文件,并且包括以下子接口:
权限检查器,用于检查用户当前此百科应用中是否具备指定权限;
角色查询器,用于根据用户ID查询用户在当前百科应用的角色;
扩展对象查看器,用于根据百科应用的扩展名称获取当前百科应用所支持的扩展对象。
在另一个实施例中,所述通用权限管理单元通过编写应用适配器配置文件将所述角色和权限抽象实现是指:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用扩展行为的扩展类BaikeAppExtension将所述角色和权限抽象实现。
通过上述实施例可以实现相应的扩展,使得BaikeAppExtension完全针对具体的百科应用,而不强迫每个百科应用都实现相同的扩展。
在另一个实施例中,考虑到网络应用会对想要加入其中的用户做一定的限制,比如活跃度、编辑版本通过率、用户级别等,所述通用权限管理单元通过编写应用适配器配置文件将所述角色和权限抽象实现是指:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用抽象行为的标准将所述角色和权限抽象实现。
除了可以将这样的标准写入配置文件之外,还可以允许管理员通过后台去配置。
在另一个实施例中,通用权限管理单元抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑是指:所述通用权限管理单元抽离并独立出各个所述百科应用的包括成员、权限管理、相应扩展抽象ICON和徽章在内的共有逻辑。
基于本发明精神,还提供一种网络百科用户管理系统的制作方法实施例,包括:建立应用管理模块,使其成为网络百科的用户中心模块和百科应用之间的通用型接口模块,所述建立应用管理模块包括:
1)抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑;
2)为用户在对应ID的所述百科应用里分配成员角色及其权限;
3)建立与所述用户中心模块之间的交互接口,使其能够接受来自所述用户中心模块的用户访问,反馈交互结果至所述用户中心模块;
4)建立与各个百科应用之间的交互接口,使其能够根据所述用户访问启用通用权限管理单元,接管所述百科应用的用户管理模块功能;
其中,建立所述应用管理模块的以上步骤不分先后。
所述应用管理模块建立之后,能够接管各个百科应用的用户管理模块功能,成为一个公共的用户权限管理系统组成。
其中,所述抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑步骤,包括:将用户参与百科应用的关系抽象成角色和权限,并为其编写配置类文件,通过编写应用适配器配置文件将所述角色和权限抽象实现。
其中,所述编写应用适配器配置文件将所述角色和权限的步骤包括:
1)所述通用权限管理单元通过在适配器配置文件中写入支持百科应用扩展行为的扩展类将所述角色和权限抽象实现;或
2)所述通用权限管理单元通过在适配器配置文件中写入支持百科应用抽象行为的标准将所述角色和权限抽象实现。
其中,所述抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑的步骤包括:抽离并独立出各个所述百科应用的包括成员、权限管理、相应扩展抽象ICON和徽章在内的共有逻辑。
其中,所述建立与各个百科应用之间的交互接口的步骤包括:建立相互分离的读接口单元和写接口单元,分别用于对所述百科应用进行读写操作。
以下从网络程序设计的思路,给出本发明网络百科用户管理系统一个实施例的制作方法:
此实施例的目的是:重构用户基本信息、编辑统计等后台逻辑;建立围绕用户的应用和角色权限系统抽象,旨在建立一个公共的网络百科应用的管理组件,接管现有百科系统中各个独立的百科应用如分类频道管理员、名片编辑用户、任务系统等(参阅图6所示),因此能够在尽可能少改动现有百科应用的前提下在各个异构系统百科应用间实现用户角色、权限管理,方便用户使用各种百科应用;并且对以后百科应用的开发和维护类似应用有较大帮助。
一.设计原则
1)增加而非修改:降低开发成本,提高健壮性和可恢复性;
2)组件而非框架:降低代码耦合,选择性使用而非强迫性。
二.设计思路
采用用例驱动的面向对象分析与设计方法,主要步骤如下:
1)使用用例捕捉需求,寻找分析类。
主要领域概念包括:百科应用管理器(应用管理模块)BaikeAppManger,百科应用BaikeApp,应用角色BaikeAppRole,应用权限BaikeAppPriv。BaikeAppManger通过配置管理一堆BaikeApp实例。BaikeApp中可以设置可用的BaikeAppRole和BaikeAppPriv,并且允许将多个BaikeAppPriv分配一个BaikeAppRole。使用分析类图描述静态领域模型;
2)编写原型代码完成简单的交互模拟,将分析类图转换为设计类图。考虑到PHP的特性,及实现成本的代价高低,将role和priv这样的概念类转化为字符串来处理。为了避免每次开发应用都要去继承基类,开发一个通用的App类,只需要给予不同的ID和配置就能直接复用。为了达到这个目的,设计上尽可能走配置。下面是对某些设计段落的考虑。
A、使用百科App管理器管理所有App实例。BaikeAppManger是一个singleton类,本身充当构造BaikeApp的Factory,其通过BaikeAppConfig维持所有App的详细配置。
B、采用百科App读写接口分离的设计策略。读接口是IBaikeApp,写接口是IBaikeAppWriteAdapter。作用在于减小IBaikeApp粒度,降低开发受管App开发难度,降低迁移老系统的成本。为了便于开发写应用比如实用导入脚本BaikeAppUtility,设置IBaikeAppWriteAdapter接口,只要实现该接口所有App应用均可达到写适配的目的。
3)通过开发适配器类实现IBaikeApp接口,即可让已经存在的百科应用系统被BaikeAppManager接管。不太可能从开始就移植所有老百科应用系统到新的App环境下,提供最简单的可以实现的适配器抽象类BaieAppAbstract是必要的。通过较小的实现代价,使得新的百科用户中心可以以统一的接口的访问那些已经存在的百科应用系统,并且支持像ICON这样的扩展。
其中,
1.适配器的软件结构,处理逻辑如下描述:
适配器(Adpater)是一种设计模式,表示客户希望以一种新的接口来访问老系统的转接关系。该模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。在这个软件协作关系中,主要参与者是客户(Client)、适配者(Adapter),和被适配者(Adaptee)三种角色。Adaptee是客户希望复用或者连接的异构系统百科应用,具有自己的接口。开发者通过开发Adapter,通过封装或代理老系统的接口将功能实现在Client所希望的新接口之下。
2.适配器与不同架构/系统/体系的用户权限数据的连接关系以及配置过程如下描述:
开发者编写适配配置文件,可将新接口实现转接到异构系统百科应用上。通过给异构系统百科应用分配唯一的ID,BaikeAppManager就可以按统一的方式接管异构系统百科应用,与之连接。这种接管方式是通过将用户和应用的关系抽象为用户权限系统为基础的。而这种抽象是通过为用户在某个BaikeApp里分配角色及其权限实现的。由此可见,这种连接关系是建立在为每一个异构系统百科应用里的用户抽象出角色,以一种统一的接口方式展示在BaikeAppManager面前。
示例:蝌蚪团被BaikeAppManager接管配置与注册流程
3.适配器对于外部异构百科应用的用户权限数据的扩展对象模式、扩展模块、转换方法如下描述:
扩展对象模式是使用在外部异构系统百科应用经过适配之后的情况下,BaikeApp只提供了基本的应用属性,而每个应用特别的功能不尽相同,而客户又不希望强烈依赖于这种多变性。客户通过调用具体BaikeApp的getExtension方法来查询其支持的扩展接口,并且返回其所需的扩展对象。这种设计可提高接口的通用度,降低客户代码与应用的耦合,并且更容易将BaikeApp所支持的扩展做成可选配置。
4.适配器的接口分离方式如下描述:
BaikeApp读写接口分离,分别制定了写接口IBaikeAppWriteAdapter和读抽象类BaikeAppAbstract。这种做法可简化BaikeAppManager接管异构系统百科应用的复杂度,因为BaikeAppManager仅仅需要读取BaikeApp的基本功能,而不是写。对异构系统百科应用有写需求的客户类,只需要判断其是否实现了IBaikeAppWriteAdapter即可。
5.用户中心对适配器的控制逻辑和控制方法如下描述:
用户中心是承载百科用户信息和展示的平台,是百科系统跟用户沟通的桥梁。用户中心正是通过BaikeAppManager接管众多基于用户权限系统的应用,以及它们所支持的扩展功能。这样基于用户中心平台,在扩展其运营功能上,仅仅需要简单的配置即可,无需修改其代码。
4)IBaikeApp的接口不是一成不变的。围绕app可能会建立一系列相关概念,比如用户ICON。为了保持IBaikeApp接口的稳定性,避免污染不相关的app子类,使用扩展对象模式适度支持IBaikeApp的扩展行为BaikeAppExtension。通过将扩展写入具体的App配置文件,使得BaikeAppExtension完全针对具体的百科应用,而不强迫每个App都实现相同的扩展。
5)考虑到App会对想要加入其中的User做一定的限制,比如活跃度、编辑版本通过率、用户级别等。App系统还会支持诸如BaikeAppUserLimit这样的抽象。除了可以将这样的标准写入配置文件之外,还可以允许管理员通过后台去配置。下面是整个app权限子系统的设计图。
以下结合公共的应用管理模块与适配器的设计,介绍网络百科共享平台以及应用管理模块过程的详细流程步骤:
A、理解用户与百科应用之间的关系,将其参与关系抽象成角色和权限,并为其编写配置类文件;
B、通过编写应用适配器配置文件将上述角色和权限抽象实现,适配器配置文件需要实现必要的接口,并将其注册进应用管理模块,以便让应用管理模块接纳,这也是通过配置文件完成的;
C、用户中心通过应用管理模块即AppManager读取适配器配置文件,将各百科应用系统作为插件加载进网络百科平台,通过他们提供的接口对外提供服务,如图7所示。
参阅图8,基于本发明精神,还提供一种网络百科应用的访问方法实施例,包括以下步骤:
步骤1:截获来自网络百科用户中心模块并发送至百科应用的用户访问请求;
步骤2:根据所述用户访问请求接管所述百科应用的用户管理模块功能,为用户在对应ID的所述百科应用里分配成员角色及其权限,所述成员角色及其权限是预先对各个所述百科应用抽象而得到,即抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑而得到;
步骤3:依据所述成员角色及其权限对相应的百科应用进行访问。
其中,在截获来自网络百科用户中心模块并发送至百科应用的用户访问请求步骤之前,包括加载已注册的所述各个百科应用。
其中,所述依据成员角色及其权限对相应的百科应用进行访问的步骤包括:采用相互分离的读接口单元和写接口单元,依据成员角色及其权限分别用于对所述百科应用进行读写操作。
在上述实施例中,仅对本发明进行了示范性描述,但是本领域技术人员在阅读本专利申请后可以在不脱离本发明的精神和范围的情况下对本发明进行各种修改。

Claims (19)

1.一种网络百科用户管理系统,其特征在于,包括:
应用管理模块,所述应用管理模块作为用户中心模块和百科应用之间的通用型接口模块;
所述应用管理模块包括:
标识存储单元,存储有为所述每个百科应用分配注册的唯一标识;
通用权限管理单元,其基于各个所述百科应用的共有逻辑为用户在对应标识的所述百科应用里分配成员角色及其权限;
第一交互接口单元,用于接受来自所述用户中心模块的用户访问,反馈交互结果至所述用户中心模块,实现与所述用户中心模块之间的交互;
第二交互接口单元,用于根据所述用户访问启用通用权限管理单元,接管所述百科应用的用户管理模块功能对所述百科应用进行访问,反馈交互结果至所述第一交互接口单元,实现与各个百科应用之间的交互;其中,
所述通用权限管理单元具体用于通过抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑;所述各个所述百科应用之间是相互独立的。
2.根据权利要求1所述的系统,其特征在于:
所述通用权限管理单元通过抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑,为用户在对应标识的所述百科应用里分配成员角色及其权限,包括以下处理步骤:
获取所述每个百科应用分配注册的唯一标识;
获取各个所述百科应用的成员角色名单;
获取各个所述百科应用的成员角色在该应用中的对应权限;
检查成员角色名单和成员角色权限之间的对应关系;
检查各个所述百科应用的关联关系/或相似度;
根据成员角色名单、成员角色权限以及各个所述百科应用的关联关系/相似度,将相关联或相近似的百科应用抽离出来并匹配相应的成员角色和成员角色权限。
3.根据权利要求1所述的系统,其特征在于:
所述第二交互接口单元具体用于根据携带要访问百科应用标识的所述用户访问、获取百科应用对象及成员在所述百科应用中的角色,对所述百科应用进行访问,反馈交互结果至所述第一交互接口单元,实现与各个百科应用之间的交互。
4.根据权利要求3所述的系统,其特征在于,包括:
百科应用注册单元,用于预先对各个所述百科应用进行注册,注册后将各个百科应用的标识存入标识存储单元;
百科应用加载单元,用于在系统运行时加载所有注册的百科应用以实现插件功能。
5.根据权利要求4所述的系统,其特征在于:
所述通用权限管理单元实现抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑中,具体是指用于将用户参与百科应用的关系抽象成角色和权限,并为其编写配置类文件,通过编写应用适配器配置文件将所述角色和权限抽象实现;
所述百科应用注册单元具体用于通过所述适配器代码中实现的必要接口将百科应用注册;
所述百科应用加载单元具体用于在系统运行时读取所述适配器配置文件,将所述百科应用作为插件加载;
所述第二交互接口单元具体用于通过所述加载的百科应用所提供的接口对外提供服务,实现与各个百科应用之间的交互。
6.根据权利要求5所述的系统,其特征在于,包括:
百科应用反注册单元,用于在系统退出运行时通过配置文件进行反注册,将所述百科应用插件卸载。
7.根据权利要求2至5任一项所述的系统,其特征在于,包括:
相互分离的读接口单元和写接口单元,所述读接口单元和写接口单元分别用于对所述百科应用进行读写操作,所述第二交互接口单元通过调用所述读接口单元和写接口单元实现与各个百科应用之间的交互。
8.根据权利要求7所述的系统,其特征在于,所述读接口单元配置有适配器抽象类配置文件,并且包括以下子接口:
权限检查器,用于检查用户当前此百科应用中是否具备指定权限;
角色查询器,用于根据用户标识查询用户在当前百科应用的角色;
扩展对象查看器,用于根据百科应用的扩展名称获取当前百科应用所支持的扩展对象。
9.根据权利要求5所述的系统,其特征在于:
所述通用权限管理单元通过编写应用适配器配置文件将所述角色和权限抽象实现是指:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用扩展行为的扩展类将所述角色和权限抽象实现。
10.根据权利要求5所述的系统,其特征在于:
所述通用权限管理单元通过编写应用适配器配置文件将所述角色和权限抽象实现是指:所述通用权限管理单元通过在适配器配置文件中写入支持百科应用抽象行为的标准将所述角色和权限抽象实现。
11.根据权利要求2至5任一项所述的系统,其特征在于:
通用权限管理单元抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑是指:所述通用权限管理单元抽离并独立出各个所述百科应用的包括成员、权限管理、相应扩展抽象图标和徽章在内的共有逻辑。
12.一种网络百科用户管理系统的制作方法,其特征在于,包括:
建立应用管理模块,使其成为网络百科的用户中心模块和百科应用之间的通用型接口模块,所述建立应用管理模块包括:
抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑;所述各个所述百科应用之间是相互独立的;
为用户在对应标识的所述百科应用里分配成员角色及其权限;
建立与所述用户中心模块之间的交互接口,使其能够接受来自所述用户中心模块的用户访问,反馈交互结果至所述用户中心模块;
建立与各个百科应用之间的交互接口,使其能够根据所述用户访问启用通用权限管理单元,接管所述百科应用的用户管理模块功能;
其中,建立所述应用管理模块的以上步骤不分先后。
13.根据权利要求12所述的方法,其特征在于:
所述抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑步骤,包括:将用户参与百科应用的关系抽象成角色和权限,并为其编写配置类文件,通过编写应用适配器配置文件将所述角色和权限抽象实现。
14.根据权利要求13所述的方法,其特征在于:
所述编写应用适配器配置文件将所述角色和权限的步骤包括:
所述通用权限管理单元通过在适配器配置文件中写入支持百科应用扩展行为的扩展类将所述角色和权限抽象实现;或
所述通用权限管理单元通过在适配器配置文件中写入支持百科应用抽象行为的标准将所述角色和权限抽象实现。
15.根据权利要求12所述的方法,其特征在于:
所述抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑的步骤包括:抽离并独立出各个所述百科应用的包括成员、权限管理、相应扩展抽象ICON和徽章在内的共有逻辑。
16.根据权利要求12所述的方法,其特征在于:
所述建立与各个百科应用之间的交互接口的步骤包括:建立相互分离的读接口单元和写接口单元,分别用于对所述百科应用进行读写操作。
17.一种网络百科应用的访问方法,其特征在于,包括:
截获来自网络百科用户中心模块并发送至百科应用的用户访问请求;
根据所述用户访问请求接管所述百科应用的用户管理模块功能,为用户在对应标识的所述百科应用里分配成员角色及其权限,所述成员角色及其权限是预先对各个所述百科应用抽象而得到,即抽离并独立出各个所述百科应用的包括成员和权限管理在内的共有逻辑而得到;所述各个所述百科应用之间是相互独立的;
依据所述成员角色及其权限对相应的百科应用进行访问。
18.根据权利要求17所述的方法,其特征在于:
在截获来自网络百科用户中心模块并发送至百科应用的用户访问请求步骤之前,包括加载已注册的所述各个百科应用。
19.根据权利要求17所述的方法,其特征在于:
所述依据成员角色及其权限对相应的百科应用进行访问的步骤包括:采用相互分离的读接口单元和写接口单元,依据成员角色及其权限分别用于对所述百科应用进行读写操作。
CN201110095011.9A 2011-04-15 2011-04-15 网络百科用户管理系统及其制作方法、应用的访问方法 Active CN102739427B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110095011.9A CN102739427B (zh) 2011-04-15 2011-04-15 网络百科用户管理系统及其制作方法、应用的访问方法
PCT/CN2012/073669 WO2012139482A1 (zh) 2011-04-15 2012-04-09 网络百科用户管理系统及应用的访问方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110095011.9A CN102739427B (zh) 2011-04-15 2011-04-15 网络百科用户管理系统及其制作方法、应用的访问方法

Publications (2)

Publication Number Publication Date
CN102739427A CN102739427A (zh) 2012-10-17
CN102739427B true CN102739427B (zh) 2015-07-01

Family

ID=46994263

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110095011.9A Active CN102739427B (zh) 2011-04-15 2011-04-15 网络百科用户管理系统及其制作方法、应用的访问方法

Country Status (2)

Country Link
CN (1) CN102739427B (zh)
WO (1) WO2012139482A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104268212A (zh) * 2014-09-23 2015-01-07 北京奇虎科技有限公司 一种互联网产品的发放方法和装置
CN104935599B (zh) * 2015-06-18 2018-10-16 北京京东尚科信息技术有限公司 一种通用权限控制管理方法及系统
CN106815503A (zh) * 2017-02-24 2017-06-09 郑州云海信息技术有限公司 一种操作系统用户权限管理方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026481A (zh) * 2006-02-21 2007-08-29 华为技术有限公司 一种集中用户安全管理方法及装置
CN101414253A (zh) * 2007-10-17 2009-04-22 华为技术有限公司 一种权限管理方法及系统
CN101441688A (zh) * 2007-11-20 2009-05-27 阿里巴巴集团控股有限公司 一种用户权限分配方法和一种用户权限控制方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0227049D0 (en) * 2002-11-20 2002-12-24 Bae Sys Defence Sys Ltd Management of network security domains
CN101166173B (zh) * 2006-10-20 2012-03-28 北京直真节点技术开发有限公司 一种单点登录系统、装置及方法
CN101277193A (zh) * 2008-05-05 2008-10-01 北京航空航天大学 基于面向服务架构认证服务代理的信息门户单点登录和访问系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026481A (zh) * 2006-02-21 2007-08-29 华为技术有限公司 一种集中用户安全管理方法及装置
CN101414253A (zh) * 2007-10-17 2009-04-22 华为技术有限公司 一种权限管理方法及系统
CN101441688A (zh) * 2007-11-20 2009-05-27 阿里巴巴集团控股有限公司 一种用户权限分配方法和一种用户权限控制方法

Also Published As

Publication number Publication date
WO2012139482A1 (zh) 2012-10-18
CN102739427A (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
US11799969B2 (en) Forming activity streams across heterogeneous applications
CN106685771B (zh) 电力营销全服务渠道统一接入方法
RU2586866C2 (ru) Дифференцирование набора признаков участником арендуемой среды и пользователем
CN107015853B (zh) 多阶段任务的实现方法和装置
US20140289391A1 (en) Framework for facilitating implementation of multi-tenant saas architecture
CN106649164B (zh) 一种硬件接口管理方法
CN104660680A (zh) 一种应用系统集成云终端平台及集成方法
CN103297381A (zh) 一种基于插件的业务访问方法及其系统
CN103095848B (zh) 面向企业客户端的云文件夹部署与信息交互的方法
CN109716331A (zh) 符合应用程序数据共享和决策服务平台模式的应用程序部署
US7895332B2 (en) Identity migration system apparatus and method
CN112286985B (zh) 一种基于云计算的临床研究统计分析系统
US20230177481A1 (en) Extensible, low-code integration platform
EP3374858B1 (en) Creating and modifying applications from a mobile device
CN104063762A (zh) 一种基于融合通信技术的多企业应用共享方法及装置
CN102739427B (zh) 网络百科用户管理系统及其制作方法、应用的访问方法
CN110537167A (zh) 应用程序的自动供应
CN114546563A (zh) 一种多租户页面访问控制方法和系统
CN111045928B (zh) 一种接口数据测试方法、装置、终端及存储介质
CN108804236B (zh) 一种aidl文件的共享方法及系统
CN102520971A (zh) 基于cad软件的数据交互方法及装置
CN114217796A (zh) 一种基于元数据的应用渲染方法、装置、介质
Hossain Cloud computing terms, definitions, and taxonomy
US20240119348A1 (en) Bot transport process across tenants
CN113111328B (zh) 用户身份认证方法、系统、终端及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant