资源域名绑定

域名绑定  时间:2021-01-27  阅读:()
>>第56卷第7期2012年4月图书馆行业OpenAPI利用的权限控制贾西兰郭建峰北京师范大学图书馆北京100875〔摘要〕分析图书馆行业OpenAPI利用的类型、OpenAPI来源、权限控制需求;介绍典型的OpenAPI访问权限控制途径:IP地址范围控制、授权(OAuth、APIkey)、访问频次控制,分析其适用性,并阐述它们在图书馆行业的应用前景.
结合北京师范大学图书馆在解决书目数据共享中的OpenAPI权限控制实践,给出基于XServices的按需授权控制实例.
〔关键词〕图书馆行业OpenAPI权限控制安全〔分类号〕G250.
71AccessControlofOpenAPIinLibraryFieldJiaXilanGuoJianfengLibraryofBeijingNormalUniversity,Beijing100875〔Abstract〕ThetypesofOpenAPIapplicationinlibraryfieldareanalyzed,aswellasOpenAPIprovidersandaccesscontrolrequirements.
ThemainwaysofOpenAPIaccesscontrolaredescribed:byIPaddress,authorization(OAuth,APIkey)andaccesstimescontrol.
Theirapplicabilityandprospectinlibraryfieldarediscussed.
WiththeOpenAPIaccesscontrolpracticesofsharingcatalogresourcesinBeijingNormalUniversityLibrary,anexampleofXServicesauthorizationondemandisgiven.
〔Keywords〕libraryfieldOpenAPIaccesscontrolsecurity本文系《图书情报工作》杂志社出版基金项目"数字图书馆OpenAPI的标准化和权限控制技术"(项目编号:2011CB004)研究成果之一.
收稿日期:2011-10-11修回日期:2011-12-25本文起止页码:21-25本文责任编辑:徐健OpenAPI是在互联网上开放的应用编程接口,在Web2.
0环境下得到了快速发展.
OpenAPI基于HTTP协议,以XML、JSON等格式返回信息,为在Web上构建新的应用、达成各异构系统间的资源共享和互操作提供了方便.
OpenAPI正在成为图书馆行业独立系统间互通互联的新选择.
然而,随着OpenAPI数量的激增和种类的丰富,开放背后的安全问题也显现出来,有些OpenAPI可以对整个互联网开放,任何用户都可以访问,更多的OpenAPI涉及受保护资源或关键性业务环节,只有被授权的用户才能访问.
如何控制OpenAPI利用的权限,避免非法访问、越权访问、信息泄密、数据篡改、无度滥用等问题出现,是亟待解决的问题.
笔者通过CNKI、GoogleScholar、SpringerLink等进行了文献调研,没有发现系统论述OpenAPI利用权限控制方面的文章.
相关研究有OAuth认证[1]、Web2.
0安全问题[2]、云安全[3]等.
本文试对图书馆行业OpenAPI利用的权限控制问题进行探讨.
1图书馆行业OpenAPI的使用分析1.
1图书馆行业OpenAPI的常见应用类型分析OpenAPI在解决"信息孤岛"问题、方便异构系统互通互联上的优势与数字图书馆建设中的瓶颈问题形成了高度吻合的针对性解决途径.
目前,图书馆行业OpenAPI应用的常见类型主要有如下6种:①整合检索:将多个资源系统的数据通过统一的检索入口提供一站式检索服务,如:资源门户、联合书目等.
②信息导航:将多个系统中的信息按照某种秩序逐层组织起来,如:按类别、按顺序等,引导用户通过层层深入的方法获得感兴趣的信息.
③资源集成:将分散存在于多个系统中的数字资源作为一个有机的整体,通过一定的关联条件将它们无缝地集成在一个应用系统中使用.
如:在OPAC上集成豆瓣网的书评.
④延伸传统图书馆功能:利用多种网络协议,将传统图书馆的服务与功能延伸到更多的平台和设备上.
如基于WAP的手机移动图书馆[4]、短信服务平台12>第56卷第7期2012年4月资源为中心的通过OpenAPI访问受保护资源的安全开放授权协议.
它很好地解决了这样一个问题:当一个资源中心存在多种托管资源时,谁能访问这些资源,不由OpenAPI服务提供者决定,必须由资源拥有者授权,而且可以对其中的部分资源单独授权,且需要收权和放权都方便.
一般情况下,资源拥有者访问他们的资源是通过"用户名/密码"方式的,如果授权时把"用户名/密码"提供给资源使用者将非常不安全,等于把对资源的全部使用权都开放了,而且若想收回授权,只有修改密码才可以.
OAuth可以不通过"用户名/密码"解决这个问题.
OAuthCore1.
0发布于2007年12月4日[10],最新版的TheOAuth2.
0AuthorizationProtocol发布于2011年7月25日[11],它定义了4种角色:①资源拥有者:可以为受保护资源批准访问权限的实体;②资源服务器:承载被托管的受保护资源,并且能够接受和响应使用访问令牌(accesstokens)访问受保护资源的请求;③客户端:持有资源拥有者的授权、代表资源拥有者发出请求访问受保护资源的应用程序;④授权服务器:在成功地验证了资源拥有者并获得授权后,将访问令牌发放给客户端.
OAuth的开放授权过程如图1所示:图1OAuth开放授权过程(A)客户端向资源拥有者请求授权;(B)客户端接受一个资源拥有者的授权获准;(C)客户端用授权获准向授权服务器请求访问令牌,并接受身份验证;(D)授权服务器验证客户端的合法性和授权获准的有效性后向客户端发放访问令牌;(E)客户端用访问令牌向资源服务器请求访问受保护资源;(F)资源服务器验证了访问令牌的有效性后提供所请求的服务.
访问令牌的生命周期是短暂的,在资源拥有者授权的允许访问时间段内,要依靠刷新令牌不断地更新,同时它包含了授权访问的资源范围.
OAuth协议很快得到了工业化的应用,首先是一些大型互联网服务提供商宣布对OAuth的支持:Google、Twitter、亚马逊、豆瓣网,等等.
OAuth对于图书馆行业的意义也很明显.
图书馆有很多受保护资源,如:机构知识库、学位论文、课件、个人图书馆、学科馆员专题资源等,目前对这些资源的使用控制大多采用比较简单的方式,有些资源拥有者不愿意将资源提供给图书馆,典型的例子是课件,很多课件要求仅提供给与课程相关的师生使用,目前还难以做到.
OAuth将在图书馆加大服务深度、优化个性化服务上起到关键的推进作用.
APIkeyAPIkey是OpenAPI服务提供者为OpenAPI服务使用者发放的授权许可.
APIkey一经申请获得,相对稳定,不会自动失效.
APIkey一般由一个字母与数字混合的字符串组成,使用上比较简单,当程序请求OpenAPI服务时,把相应的APIkey作为参数传递过去即可.
支持APIkey授权方式的互联网服务提供者更为普遍,但目前并没有什么标准形成.
由于APIkey不是动态变化的,一经泄露就会产生伪装用户,进行非法使用,所以视不同需求常与https加密传输、签名验证等结合使用;有些网站也将APIkey与申请使用APIkey的网站域名绑定在一起进行验证.
APIkey适用于OpenAPI使用者比较固定、OpenAPI服务提供者能够进行使用授权的情况.
2.
3通过频次限制控制OpenAPI访问权限频次控制是在上述控制的基础上对单位时间内的访问频次规定上限,超出这个上限时采取禁用、停用等处理.
比如LibraryThingAPI限制用户访问次数每天不超过1000次,OCLC的相关API非商业用户访问次数每天不能超过500次,通过IP认证的用户每天不能超过1000次.
每天超出正常范围的OpenAPI访问量最明显地带来两个问题:①对服务器承受能力的冲击;②非法数据套录.
因此,采用频次控制在一定程度上可以防止资源被滥用或恶意使用.
2.
4OpenAPI访问权限控制实例在实际应用中,以上几种控制OpenAPI访问权限的方法是可以组合使用的,下面分析两个具体例子.
GoogleBooksAPIFamily(Labs)[12]:Google支持OAuth,原来的AuthSub和ClientLogin已经作为旧协议,不再提倡使用.
Google新推出的"BooksAPIv1(Labs)"有如下规定:首先,使用者要向Google注册登记相关的应用系统,应用系统的域名是将来访问OpenAPI的检验条件之一.
Google提供OAuth和API32do("CREATETABLEAPIkeyop(idotext,authtext,ctime)");dbh->do("CREATEUNIQUEindexAPIkeyop_idonAPIkeyop(ido)");获取传递的参数cgi=newCGI;myid=cgi->param("id");myop=cgi->param("op");myid1=id.
op;从APIkeyop中查找APIkey对op操作的授权sqr=dbh->prepare("SELECTido,authFROMAPIkeyopwhereido='id1'");sqr->execute()ordiedbh->errstr;如果授权为"Y",构建访问X-service的URL,并发送请求:while(@t=sqr->fetchrow_array){if(@t[0]eqid1){auth1=@t[1];}}if(auth1eq"Y"){my@params=cgi->param;myurl="bnuopac_base/X";42>>第56卷第7期2012年4月foreachmypa(@params){if(pane"id"){url.
='&'.
pa.
'='.
cgi->param(pa);}}content=geturl;die"Couldn'tgeturl"unlessdefinedcontent;}返回结果printcontent;效果验证表明:持有APIkey的联盟成员,通过验证程序aleph_services请求XServices服务时,可以顺利使用已经授权的XServices服务操作,当越权请求其他XServices服务操作时,将获得"noAuthentication"提示,同时,频次控制也有效控制了过度频繁的异常访问.
本方案可以扩展到对任意个体和组织的XServices服务访问授权,不同的APIkey可以形成不同的XServices服务权限组,满足不同应用需求.
而且可以将授权精确到单次服务请求操作,如:检索服务有两个请求操作:①检索,返回命中数;②在命中结果中获取书目详细信息,本方案可以只授权前者操作.
本方案也可以借鉴到其他应用系统对OpenAPI权限控制的实践中.
4结语OpenAPI在图书馆行业有极好的应用前景,通过OpenAPI实现独立系统间的互通互联可以产生单一系统无法达到的增值性应用,将推动图书馆服务的创新、资源的充分利用以及对外合作的共赢.
OpenAPI应用的权限控制直接影响着OpenAPI的深入应用,目前,全球范围内相关的工业化标准正在发展和形成之中,图书馆行业也应当积极参与其中,努力实践,不仅要利用已有的OpenAPI,也要开发自己的OpenAPI、改进现用的OpenAPI,解决发展中的实际问题,发挥本行业的信息服务优势,推动服务模式的创新以及相关标准的建立和应用.
参考文献:[1]张卫全,胡志远.
浅析作用于Web2.
0安全防范的OpenID和OAuth机制[J].
通信管理与技术,2011(2):15-18.
[2]徐毅,王红阳.
Web2.
0安全性刍议[J].
软件世界,2006(19):62-63.
[3]Cloudidentitysummit[EB/OL].
[2011-08-01].
http://www.
cloudidentitysummit.
com/2011-07-18.
[4]林颖,孙魁明.
基于WAP的图书馆移动信息服务体系及WAPOPAC应用实例[J].
现代图书情报技术,2007(9):80-83.
[5]张红,只莹莹.
利用自助模式提升读者服务[J].
数字图书馆论坛,2010(12):51-55.
[6]王文清,陈凌.
CALIS数字图书馆云服务平台模型[J].
大学图书馆学报,2009(4):13-18.
[7]KDEV2.
0接口使用帮助[EB/OL].
[2011-08-01].
http://kde.
cnki.
net/KDEService/Search/Help/.
[8]肖铮,陈晓亮.
厦门大学图书馆馆藏书目信息API开发实例及其应用[EB/OL].
[2011-08-01].
http://dspace.
xmu.
edu.
cn/dspace/bitstream/2288/7073/2/%E5%8E%A6%E9%97%A8%E5%A4%A7%E5%AD%A6%E5%9B%BE%E4%B9%A6%E9%A6%86%E9%A6%86%E8%97%8F%E4%BF%A1%E6%81%AFAPI%E5%BC%80%E5%8F%91%E5%AE%9E%E4%BE%8B%E5%8F%8A%E5%85%B6%E5%BA%94%E7%94%A8.
pdf.
[9]OAuth[EB/OL].
[2011-08-01].
http://en.
wikipedia.
org/wiki/OAuth.
[10]TheOAuth1.
0Guide[EB/OL].
[2011-08-01].
http://hueniverse.
com/oauth/guide/.
[11]TheOAuth2.
0AuthorizationProtocoldraftietfoauthv220[EB/OL].
[2011-08-01].
http://tools.
ietf.
org/html/draftietfoauthv220.
[12]GoogleBooksAPIFamily(Labs)[EB/OL].
[2011-08-01].
http://code.
google.
com/intl/zhCN/apis/books/docs/gettingstarted.
html.
[13]豆瓣API[EB/OL].
[2011-08-01].
http://www.
douban.
com/service/apidoc/.
〔作者简介〕贾西兰,女,1957年生,研究馆员,发表论文10余篇.
郭建峰,男,1970年生,副研究馆员,发表论文近10篇檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶檶殞殞殞殞.
《图书情报工作网刊》征稿启事为了给广大图书情报工作者提供更多的学术交流机会,拓展学术成果传播的途径,《图书情报工作》杂志社于2007年12月发布了中国图书情报界第一份纯网络学术期刊《图书情报工作网刊》(2010年6月获批正式刊号:ISSN2095-0586).
稿件从编辑部日常来稿中筛选;同时,面向社会广泛征文(有关会议或学术PPT、学术论文、会议论文、学位论文、消息资讯类等).
详见本刊主页www.
lis.
ac.
cn之"网络期刊".
52

HostHatch(15美元)大硬盘VPS,香港NVMe,美国、英国、荷兰、印度、挪威、澳大利亚

HostHatch在当地时间7月30日发布了一系列的促销套餐,涉及亚洲和欧美的多个地区机房,最低年付15美元起,一次买2年还能免费升级双倍资源。商家成立于2011年,提供基于KVM架构的VPS主机,数据中心包括中国香港、美国、英国、荷兰、印度、挪威、澳大利亚等国家的十几个地区机房。官方网站:https://hosthatch.com/NVMe VPS(香港/悉尼)1 CPU core (12.5%...

iON Cloud七月促销适合稳定不折腾的用户,云服务器新购半年付8.5折,洛杉矶/圣何塞CN2 GT线路,可选Windows系统

iON Cloud怎么样?iON Cloud今天发布了7月份优惠,使用优惠码:VC4VF8RHFL,新购指定型号VPS半年付或以上可享八五折!iON的云服务器包括美国洛杉矶、美国圣何塞(包含了优化线路、CN2 GIA线路)、新加坡(CN2 GIA线路、PCCW线路、移动CMI线路)这几个机房或者线路可供选择,有Linux和Windows系统之分,整体来说针对中国的优化是非常明显的,机器稳定可靠,比...

gcorelabs:CDN业务节点分布100多个国家地区,免费版提供1T/月流量

卢森堡商家gcorelabs是个全球数据中心集大成的运营者,不但提供超过32个数据中心的VPS、13个数据中心的cloud(云服务器)、超过44个数据中心的独立服务器,还提供超过100个数据中心节点的CDN业务。CDN的总带宽容量超过50Tbps,支持免费测试! Gcorelabs根据业务分,有2套后台,分别是: CDN、流媒体平台、DDoS高防业务、块存储、cloud云服务器、裸金属服务器...

域名绑定为你推荐
软银赛富李念老公是谁锦天城和君合哪个好和君咨询(王明夫为董事长)到底怎么样?有人说很好,空间大;也有人说像待遇差。麒麟990和骁龙865哪个好5G手机芯片高通865对比麒麟990 5G SOC哪个好?法兰绒和珊瑚绒哪个好法兰绒和珊瑚绒睡衣哪个好?华为p40和mate30哪个好华为mate30和荣耀3O那个好?绝地求生加速器哪个好现在绝地求生哪个加速器好点?手机音乐播放器哪个好手机音乐播放器哪个好炒股软件哪个好用玩股票哪个软件好?dns服务器未响应电脑上不了网了,显示DNS服务器未响应,什么意思360云盘360云盘和百度云网盘哪个好
青岛虚拟主机 看国外视频直播vps 如何注销域名备案 net主机 enzu 美国翻墙 香港cdn 创梦 赞助 php空间购买 免费美国空间 电信主机 如何建立邮箱 360云服务 徐州电信 ssl加速 重庆服务器 存储服务器 乐视会员免费领取 umax 更多