亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于開源軟件的數(shù)字圖書館資源遠程訪問的總設計

        2011-04-29 00:00:00溫明章
        現(xiàn)代情報 2011年1期

        〔摘 要〕針對目前數(shù)字圖書館資源遠程訪問困難的實際情況,設計一個基于開源軟件(apache和josso)的遠程訪問系統(tǒng),此方案是一個設有身份認證、日志記錄和負載均衡等功能的完整設計方案,便利了讀者在校外遠程訪問圖書館電子資源。

        〔關鍵詞〕url重寫;遠程訪問;josso;apache

        DOI:10.3969/j.issn.1008-0821.20.01.016

        〔中圖分類號〕G250.76 〔文獻標識碼〕B 〔文章編號〕1008-0821(20)01-0063-04

        The Total Design of Remote Access System for Digital

        Library Resources Based on Open-source SoftwareWen Mingzhang

        (Library,South China Agricultural University,Guangzhou 510642,China)

        〔Abstract〕According to the difficultness that remote access to digital library resources,the author designed the Remote Access System for Digital Library Resources based on Open-source software,this program was a complete design that set up authentication,logging,and load balancing features,facilitate the readers in the off-campus remote access to library electronic resources.

        〔Keywords〕url rewriter;remote access;josso;apache

        現(xiàn)在全國圖書館都以數(shù)字圖書館為建設目標,而且都已經有幾年的建設基礎了。在數(shù)字圖書館建設中,網絡數(shù)據庫(電子資源)為重點建設對象;目前每個圖書館都有各種各樣的網絡數(shù)據庫(電子資源)可供讀者通過網絡進行查詢、瀏覽和閱讀,但是這些網絡資源都是對讀者進行ip控制,讀者只有使用學校內部網絡才可以訪問;有些學校已經意識到這種限制不利于讀者在校外學習和工作,并且在網絡中心的幫助下引入vpn技術來解決校外訪問圖書館資源的IP限制問題;但是這種方法只是暫時的,在讀者數(shù)量大的情況下,vpn的用戶數(shù)不夠用,而且有一致命弱點就網絡速度慢。從以上問題來看,本設計方案就是要解決校外訪問圖書館資源IP限制問題,而且讀者數(shù)量不受用戶數(shù)量的限制,在網絡速度上有很好的優(yōu)化。

        1 設計思路

        本設計方案是實現(xiàn)校內的圖書館網絡資源的共享服務,它采用URL重寫技術、單點登錄和統(tǒng)一認證技術,實現(xiàn)基于Web數(shù)字訪問對象、內部辦公訪問的安全認證系統(tǒng),通過認證讀者與電子訪問對象服務器、內部辦公服務器的直接通訊,而且進行負載均衡設計,從而避免代理服務器和vpn等方式易導致的網絡瓶頸、配置復雜和難于管理等問題。

        該設計方案考慮進一步延伸信息提供者的服務空間與拓展網絡接入者的接入范圍,將現(xiàn)有局域網上基于Web的遠程訪問系統(tǒng)功能、內網辦公平臺等通過Internet網絡拓展到用戶家庭、出差酒店、會議室等互聯(lián)網上世界的任何一個角落。

        1.1 系統(tǒng)硬件設計

        遠程訪問服務器部署在圖書館校外可以訪問的網上或校網絡中心出口網絡上,設計采用1臺(配置:四核CPU內存為2.3G,2塊 000兆自適應網卡的服務器作為遠程訪問認證服務,并分別配置3~4個或更多個遠程訪問服務器及對外固定IP地址,實現(xiàn)遠程訪問服務,防止因單個IP地址實現(xiàn)遠程電子數(shù)據庫的訪問被供應廠商監(jiān)控或訪問用戶下載速度受影響。

        本設計方案可以將圖書館所屬的電子資源進行訪問負載分配,特別是針對遠程電子數(shù)據庫的訪問需要進行地址負載分配和流量負載分配。見圖1所示。

        圖1 系統(tǒng)硬件設計

        1.2 應用結構設計

        對于基于Web發(fā)布的電子資源,系統(tǒng)采用基于URL重寫技術,以及單點登錄技術(SSO),來實現(xiàn)讀者透明的訪問,對于基于Web的圖書館電子資源,讀者可以不用安裝任何插件和修改任何設置,即可隨時隨地訪問圖書館的電子資源。

        系統(tǒng)硬件主要由2個部分組成:身份認證服務器和URL重寫服務器機群。身份認證服務器運行在一臺獨立的服務器上,主要提供用戶身份驗證及權限管理、流量控制及日志記錄等功能。URL重寫服務器機群運行在多臺服務上,對讀者所有的http請求的URL進行重寫控制和管理等功能。

        3 系統(tǒng)功能和系統(tǒng)工作流程

        系統(tǒng)軟件主要使用開源軟件,身份認證(安全認證)使用Josso,遠程訪問系統(tǒng)使用Apache Web Server;讀者通過Web瀏覽器訪問遠程訪問系統(tǒng),遠程訪問系統(tǒng)通過LDAP協(xié)議調用Josso進行身份核對和認證(Josso通過Mysql數(shù)據的讀者已經注冊信息來核對),如果沒有認證過的,則要通過Josso認證后才可以訪問遠程訪問系統(tǒng);當讀者通過Josso認證后,訪問遠程訪問系統(tǒng)的電子資源時,系統(tǒng)對相應的讀者請求進行URL重寫和管理,并且對讀者的各種網絡行為進行跟蹤和記錄,最后把讀者想要的正確信息發(fā)回給讀者;系統(tǒng)工作流程可以參考圖2。

        系統(tǒng)具體功能設計如下:

        (1)身份認證(單點登錄和統(tǒng)一認證);

        (2)URL重寫功能;

        (3)負載均衡;

        (4)日志功能。

        2 安全設計

        目前身份認證技術非常發(fā)達,認證的方法也很多,例

        圖2 工作流程

        如:USBKEY認證、基于SSL的HTTPS證書認證、電子令牌、與SSO認證等等。本設計方案使用SSO認證方式,而且遠程訪問系統(tǒng)可以與SSO認證服務無縫集成。

        SSO認證方式有以下優(yōu)點:

        (1)減少用戶在不同系統(tǒng)中登錄耗費的時間,減少用戶登錄出錯的可能性;

        (2)實現(xiàn)安全的同時避免了處理和保存多套系統(tǒng)用戶的認證信息;

        (3)減少了系統(tǒng)管理員增加、刪除用戶和修改用戶權限的時間;

        (4)增加了安全性:系統(tǒng)管理員有了更好的方法管理用戶,包括可以通過直接禁止和刪除用戶來取消該用戶對所有系統(tǒng)資源的訪問權限。

        3 軟件設計以及關鍵技術的實現(xiàn)方法

        本設計方案的軟件設計將使用開源軟件Apache和Josso,具體實現(xiàn)方法,下面將具體介紹。

        3.1 URL重寫技術

        本設計方案使用Apache的ModRewriter和ModProxy功能模塊實現(xiàn)重寫功能;圖書館的電子資源實際URL,都在遠程訪問系統(tǒng)上有對應重寫過的URL,這里就以Cnki為例,Cnki實際URL為:http:∥www.dlib.cnki.net/kns50/,重寫到遠程訪問系統(tǒng)上為:http:∥外部ip/kns50/;具體流程和重寫規(guī)則如圖3[4]。

        圖3 重寫URL原理

        模塊具體實現(xiàn)配置如下:現(xiàn)在到Apache的http.conf上加載ModRewriter和ModProxy模塊,然后在文件尾部加入下面代碼:

        RewriteEngine on#啟動URL重寫功能;

        Proxyrequest on #啟動代理功能;

        RewriteRule^(.*)D|S ?。模营?/ [R]

        #解決結尾斜杠問題,如果訪問http:∥localhost/cnki時,重寫為#http:∥localhost/cnki/rewriterule ^/kns/(.*)?。模营?http:∥www.dlib.cnki.net/kns50/?。模营?

        啟動Apache就可以看到如圖4效果:圖4 實現(xiàn)重寫URL的效果

        更多具體的配置,可以讀者感興趣的話,可以到Apache網站上下載使用文檔了解更多的信息,這里就不具體展開。

        3.2 安全認證(單點登錄和統(tǒng)一認證)

        3.2.1 Josso工作原理

        本設計方案安全認證使用Josso開源軟件來實現(xiàn),并且與Apache進行無縫集成。Josso單點登錄技術通過基于信任主機的跨域名Cookie技術來實現(xiàn),由于用戶的登錄信息需要保存在Cookie里,但IE的安全性不允許Cookie跨域名或IP地址。因此,Josso當通過用戶輸入的用戶名和口令(或者使用其它方式)對用戶進行驗證成功后,將發(fā)送一個身份標識給用戶并將其存放在用戶瀏覽器的Cookie里面,然后將用戶重定向到所請求的服務上。如果讀者訪問其他服務器時,則共享讀者第1次登錄后信息不需要重新認證,上述過程對用戶是透明的,從而實現(xiàn)了單點登錄。

        3.2.2 Josso與遠程訪問系統(tǒng)集成

        Josso是在LDAP基礎上與Apache Directory Server進行無縫集成,從而使得Josso與遠程訪問系統(tǒng)集成。

        具體配置如下:

        (1)Apache Directory Server:

        class=″org.apache.directory.server.ldap.LdapConfiguration″>

        進行配置。

        輸入認證信息,這里的信息從之前提到的server.xml中獲得,比如其中Bind DN or user和Bind password分別為server.xml中的

        uid=admin,ou=system

        secret

        的值。

        (2)Josso的LDAP的配置如下:

        配置Josso的josso-gateway-config.xml:

        ①修改中的內容如下:

        org.josso.gateway.identity.service.store.ldap.LDAPIdentityStore

        com.sun.jndi.ldap.LdapCtxFactory

        ldap:∥localhost:10389/

        uid=admin,ou=system

        secret

        simple

        SUBTREE

        ou=People,dc=example,dc=com

        uid

        ou=Roles,dc=example,dc=com

        uniquemember

        cn

        uid=username,mail=password

        mail=mail,cn=description

        ②修改中的內容如下:

        org.josso.gateway.identity.service.store.ldap.LDAPIdentityStore

        com.sun.jndi.ldap.LdapCtxFactory

        ldap:∥localhost:10389/

        uid=admin,ou=system

        secret

        simple

        ONELEVEL

        ou=People,dc=example,dc=com

        uid

        ou=Roles,dc=example,dc=com

        uniquemember

        cn

        uid=username,mail=password

        mail=mail,cn=description

        SUBTREE

        3.2.3 Josso后臺數(shù)據庫的設計

        本設計方案的認證后臺數(shù)據使用開源的軟件Mysql,讀者庫信息建立3張表如下:

        (1)用戶表User,用于存放用戶的登錄信息,包括用戶編號、登錄名稱、登錄密碼、用戶名稱、用戶描述等。

        (2)角色表Role,存放角色信息,包括角色編號、角色名稱、角色描述等。

        (3)用戶角色表UserRole,存放用戶與角色的對應關系。表1 用戶表User

        用戶編號登錄名稱登錄密碼用戶名稱用戶描述1Admin溫明章高級管理員2Test歐 陽一般用戶3Tracy陳 總管理員

        表2 角色表Role

        角色編號角色名稱角色描述1System高級管理員(擁有所有權限)2Manager管理員(只有管理權限,沒有系統(tǒng)本身參數(shù)修改權):用戶修改密碼,添加用戶等權限)3Guest一般用戶(作為登錄身份認證)

        表3 用戶角色表UserRole

        ID用戶編號角色編號描述1Admin1有高級管理員權限2Tracy2管理員 3Test3只有一般用戶權限

        3.3 負載均衡

        負載均衡可以分3個層次:操作系統(tǒng)層次壓力分擔;負載均衡集群(較高級的集群式負載);應用層次負載分擔。本方案主要是使用開源軟件設計的,所以這里主要介紹應用層上進行負載均衡;本系統(tǒng)的遠程訪問系統(tǒng)也是使用開源軟件Apache實現(xiàn),Apache本身就可以通過modproxybalancer模塊實現(xiàn)應用層上負載分擔;具體情況如下:

        首先將在主配置文件http.conf(每個host主機的配置文件)以下Module的注釋去掉

        LoadModule proxymodule modules/modproxy.so

        LoadModule proxybalancermodule modules/modproxybalancer.so

        LoadModule proxyhttpmodule modules/modproxyhttp.so

        再并增加以下元素

        ProxyRequests Off

        ProxyPass/kns50/balancer:∥xuanfei stickysession=jsessionid nofailover=On

        BalancerMember http:∥host0 loadfactor=1

        BalancerMember http:∥host1 loadfactor=1

        BalancerMember http:∥host2 loadfactor=2

        BalancerMember http:∥host3 loadfactor=3

        ProxyPass為代理轉發(fā)的URL,即將所有訪問/kns50/的請求轉發(fā)到群集balancer:∥test,loadfactor是負載因子,Apache會按負載因子的比例向后端節(jié)點轉發(fā)請求,負載因子越大;BalancerMember為群集的成員,即群集服務器A或B,負載均衡服務器會根據均衡規(guī)則來將請求轉發(fā)給BalancerMember。

        3.4 日志功能設計

        日志統(tǒng)計功能在這里是使用apache的log4(開源)和mysql實現(xiàn)的,日志粗細粒度可以根據具體情況而定(本文不具體展開),下面是log4與mysql一些連接配置

        #---JDBC---輸出到數(shù)據庫

        # JDBCAppender log4j.properties file

        #log4j.rootCategory=WARN,JDBC

        # APPENDER JDBC

        log4j.appender.JDBC=org.apache.log4j.jdbc.JDBCAppender

        log4j.appender.JDBC.driver=com.mysql.jdbc.Driver

        log4j.appender.JDBC.URL=jdbc:mysql:∥localhost:3306/test

        log4j.appender.JDBC.user=use

        log4j.appender.JDBC.password=password

        log4j.appender.JDBC.layout=org.apache.log4j.PatternLayout

        log4j.appender.JDBC.sql=INSERT INTO LOGGING(logdate,loglevel,location,message)VALUES(’%d{ISO8601}’,’%-5p’,’%C,%L’,’%m’)

        4 結 語

        本系統(tǒng)設計方案已經可以解決每個圖書館內部IP限制電子資源的校外訪問的問題,系統(tǒng)整個內部工作流對讀者來說是透明的,讀者就像訪問一般Web網站一樣;讀者要使用遠程訪問系統(tǒng),就需要到圖書館注冊一個帳號,然后就可以在有網絡環(huán)境的任何地方訪問圖書館的有IP限制電子資源;本系統(tǒng)設計主要是使用開源軟件進行設計的,實際上還有它開源軟件或商業(yè)軟件可以實現(xiàn)這樣的功能;不過本人認為利用開源軟件開發(fā)圖書館遠程訪問系統(tǒng),是每個圖書館最好的選擇,不但可以減少經濟上的壓力,而且還可以提升圖書館內部員工的業(yè)務知識和工作積極性。

        參考文獻

        [1]高,金玉玲,劉凡儒.URL重寫技術及在國內外授權訪問系統(tǒng)中的應用研究[J].現(xiàn)代情報,2008,(7):126-128.

        [2]李洪文.基于URL重寫技術的電子資源統(tǒng)一授權訪問系統(tǒng)的原理和實現(xiàn)[J].大學圖書館學報,2008,(4):68-71.

        [3]郭邁.單點登陸技術的研究和實現(xiàn)[D].西安:西北工業(yè)大學,2007.

        [4]The Apache Software Foundation.Apache HTTP Server Version 2.2 Documentation[EB/OL].http:∥httpd.apache.org/docs/2.2/,2008--20.

        [5]Sebastian Gonzalez Oyuela.JOSSO-Java Open Single Sign-On Project Home[EB/OL].http:∥www.josso.org/confluence/display/JOSSO1/JOSSO+-+Java+Open+Single+Sign-On+Project+Home,2008-09-20.

        亚洲动漫成人一区二区| 国产精品久免费的黄网站| 亚洲女同性恋激情网站| 国产不卡精品一区二区三区| 中文字幕人妻少妇引诱隔壁| 国内精品久久久久久久久久影院| 亚洲AV秘 无码一区二区三| 国产精品午夜福利天堂| 久久日日躁夜夜躁狠狠躁| 粗壮挺进人妻水蜜桃成熟漫画| 日韩免费小视频| 美女草逼视频免费播放| 成人日韩精品人妻久久一区| 黑人巨大跨种族video| 国产精品亚洲A∨天堂| 久久国产女同一区二区| 精品国产yw在线观看| 天堂中文在线资源| 成人无码视频在线观看网站| 少妇我被躁爽到高潮在线影片 | 精品人妻久久一日二个| 成人午夜特黄aaaaa片男男| 热の国产AV| 亚洲成人黄色av在线观看| 蜜桃成熟时在线观看免费视频| 少妇无码吹潮| 国产精品久久久久影视不卡| 91国产精品自拍视频| 国产欧美性成人精品午夜| 亚洲成色在线综合网站| 91精品国产91久久综合桃花| 日产分东风日产还有什么日产 | 国产另类av一区二区三区| 国产 高潮 抽搐 正在播放| 理论片午午伦夜理片影院| 亚洲AV无码国产精品久久l | 欧美人妻日韩精品| 免费无码又爽又刺激高潮的视频网站 | 国产激情视频在线| 国产饥渴的富婆一凶二区| 特黄特色的大片观看免费视频|