• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Shiro的某高??蒲行畔⒐芾硐到y(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      2017-09-18 06:35宋成明
      關(guān)鍵詞:認(rèn)證訪問控制科研

      宋成明

      摘要: 高??蒲行畔⒐芾硐到y(tǒng)主要提供高校對(duì)科研成果的錄入、材料的初核、成果的評(píng)定、查詢統(tǒng)計(jì)與匯總等各類處理。本文介紹了Shiro框架的主要功能特征,并基于Shiro應(yīng)用框架對(duì)現(xiàn)有的高??蒲行畔⒐芾硐到y(tǒng)實(shí)現(xiàn)系統(tǒng)集成,提供系統(tǒng)所需要的用戶、角色、資源管理。為科研管理實(shí)現(xiàn)細(xì)粒度的訪問控制,為科研信息安全提供保障,滿足了高校對(duì)科研信息管理的需求。

      關(guān)鍵詞: 訪問控制; 科研; Shiro; 認(rèn)證

      中圖分類號(hào):TP393.08

      文獻(xiàn)標(biāo)志碼:A

      文章編號(hào):2095-2163(2017)04-0062-03

      0引言

      隨著我國(guó)高等教育信息化發(fā)展,推動(dòng)信息技術(shù)與科研管理融合創(chuàng)新還處于探索階段[1-2]。在科研管理信息系統(tǒng)的集成與整合上涉及到了權(quán)限管理的優(yōu)化與再造。

      結(jié)合科研信息的發(fā)展及學(xué)校自身管理的實(shí)際需求,采用Shiro安全框架與現(xiàn)有的科研信息管理系統(tǒng)集成,實(shí)現(xiàn)科研信息管理用戶、菜單、角色的靈活配置,提升了系統(tǒng)的安全性,為高校系統(tǒng)整合提供參考。

      1Shiro框架簡(jiǎn)介

      Shiro是用于身份驗(yàn)證和授權(quán)的開源安全框架,通過一個(gè)簡(jiǎn)單易用的 API 提供身份驗(yàn)證、角色授權(quán)、管理會(huì)話以及密碼加密。提供基于角色的細(xì)粒度的權(quán)限控制,增強(qiáng)了對(duì)緩存的支持。

      2科研信息管理系統(tǒng)需求

      2.1科研信息管理系統(tǒng)的現(xiàn)行技術(shù)

      某高?,F(xiàn)行的科研管理系統(tǒng)采用 B/S 體系結(jié)構(gòu),以Spring+Spring MVC+MyBatis開源框架設(shè)計(jì)開發(fā)[3-4]。系統(tǒng)采用MySQL數(shù)據(jù)庫(kù),在邏輯上劃分了 3 個(gè)層次,分別是數(shù)據(jù)層、基礎(chǔ)層和應(yīng)用層。在此,給出各層的功能闡釋如下。

      1)數(shù)據(jù)層。數(shù)據(jù)層是科研信息管理系統(tǒng)的業(yè)務(wù)模型,提供科研成果數(shù)據(jù)的管理服務(wù)。包含了各種科研成果信息數(shù)據(jù)、用戶權(quán)限信息等,是科研數(shù)據(jù)管理的基礎(chǔ)。

      2)基礎(chǔ)層。基礎(chǔ)層采用Java EE框架技術(shù)設(shè)計(jì)實(shí)現(xiàn),基于分層解耦思想,系統(tǒng)前臺(tái)界面重點(diǎn)采用Bootstrap設(shè)計(jì)開發(fā),以Spring為核心,由輕量級(jí)框架SSM(Spring + Spring MVC + MyBatis)整合系統(tǒng)開發(fā)架構(gòu)。

      3)應(yīng)用層。應(yīng)用層實(shí)現(xiàn)了科研信息管理系統(tǒng)的核心功能,功能模塊主要包括科研成果錄入、參與人員管理、院系初審、科研處核定、查詢匯總和系統(tǒng)管理等。

      2.2訪問控制需求

      隨著高校科研成果的日益增多,科研信息管理系統(tǒng)中,現(xiàn)有的科研信息管理方式給工作人員帶來了繁重的工作壓力[5]。在高校信息化發(fā)展的大前提下,科研系統(tǒng)與高校其它系統(tǒng)的整合成為必行之路。科研成果的錄入、紙質(zhì)文件的初審、成果的考核量化與界定不再由科研部門人員統(tǒng)一錄入??蒲行畔⒐芾淼膶?shí)際需要,對(duì)高校各類人員的系統(tǒng)訪問提出新的需求。研究可得,需求分析如下。

      1)用戶登錄。采用學(xué)校信息中心提供的統(tǒng)一身份編碼進(jìn)行系統(tǒng)登錄與訪問。

      2)菜單管理。將科研信息管理系統(tǒng)中的各種資源,以系統(tǒng)菜單的形式保存在數(shù)據(jù)表中,以便于后期對(duì)系統(tǒng)資源的統(tǒng)一分配與管理。

      3)數(shù)據(jù)可見性。結(jié)合學(xué)校科研管理的實(shí)際,將科研信息管理系統(tǒng)的數(shù)據(jù)范圍定義為:0-所有數(shù)據(jù);1-所在學(xué)校及以下數(shù)據(jù);2-所在部門及以下數(shù)據(jù);3-僅本人數(shù)據(jù);9-按明細(xì)設(shè)置。

      4)角色管理。能夠?qū)⑾到y(tǒng)在信息錄入、初審、終審過程中的各方面人員設(shè)計(jì)確定分組、分級(jí)。能夠?qū)χ付ń巧臄?shù)據(jù)可見性進(jìn)行實(shí)時(shí)管理。

      5)用戶與角色管理。靈活管理各組人員的用戶。能夠?qū)崟r(shí)地根據(jù)學(xué)校人事處對(duì)教職工人員變化做出動(dòng)態(tài)的管理。

      3系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      [JP2]本文采用MyEclipse2017 + Maven進(jìn)行系統(tǒng)開發(fā)。研究采用的主要技術(shù)為Spring + SpringMVC + Shiro。項(xiàng)目通過導(dǎo)入現(xiàn)有的源代碼對(duì)Spring和SpringMVC進(jìn)行配置。為了對(duì)系統(tǒng)有效展開整合研究,實(shí)現(xiàn)通過Shiro安全框架來設(shè)計(jì)支持用戶的訪問控制,則需要引入Shiro以及Shiro集成到Spring的包。[JP]

      3.1數(shù)據(jù)庫(kù)設(shè)計(jì)

      本文對(duì)現(xiàn)行的科研信息管理系統(tǒng)的集成基于Shiro安全框架,結(jié)合Shiro框架中提供的API接口,充分利用Shiro提供的通配符特性,實(shí)現(xiàn)科研信息管理系統(tǒng)對(duì)訪問控制細(xì)粒度管理的需求,設(shè)置訪問控制模型,能夠?qū)eb應(yīng)用內(nèi)的權(quán)限和資源(URL鏈接、操作按鈕、頁(yè)面的HTML元素)進(jìn)行管理。具體內(nèi)容如下:

      1)SYS_USER:用戶信息表,用于存儲(chǔ)學(xué)校所有師生用戶信息。同時(shí)為學(xué)校其它應(yīng)用系統(tǒng)的融合提供數(shù)據(jù)支持。

      2)SYS_ROLE:角色信息表,用于存儲(chǔ)科研信息管理系統(tǒng)的角色信息。表中內(nèi)置基本的用戶角色,提供系統(tǒng)啟動(dòng)運(yùn)行的必須角色信息。該表是Shiro框架的核心組件。

      3)SYS_MENU:系統(tǒng)資源表,用于存儲(chǔ)系統(tǒng)內(nèi)可訪問的菜單信息、操作信息。表中的PERMISSION字段結(jié)合Shiro框架的通配符機(jī)制設(shè)計(jì),結(jié)合資源和操作來定義細(xì)粒度的資源訪問,PERMISSION字段中的數(shù)據(jù)值命名規(guī)則為[業(yè)務(wù)模塊]:[資源名稱]:[操作名稱],如sr:project:view(權(quán)限:查看項(xiàng)目)。

      4)SYS_USER_ROLE:用戶與角色對(duì)應(yīng)關(guān)系表,存儲(chǔ)系統(tǒng)中用戶與指定角色的對(duì)應(yīng)信息。

      5)SYS_ROLE_MEUN:角色與權(quán)限對(duì)應(yīng)關(guān)系表,存儲(chǔ)系統(tǒng)中角色與資源(操作)的對(duì)應(yīng)信息。

      6)SYS_DICT:數(shù)據(jù)字典表,存儲(chǔ)本系統(tǒng)的數(shù)據(jù)字典信息,如項(xiàng)目類型、本人角色。

      3.2定義Shiro攔截器

      [JP2]在項(xiàng)目集成時(shí),對(duì)指定的URL進(jìn)行攔截,如果沒有驗(yàn)證成功的需要驗(yàn)證,然后額外給用戶賦予角色和權(quán)限。通過繼承AuthorizingRealm實(shí)現(xiàn)自定義的攔截器SystemAuthorizingRealm,[JP]在子類中實(shí)現(xiàn)登錄驗(yàn)證和賦予角色權(quán)限的2個(gè)方法,使得Shiro從自定義的Realm中獲取相應(yīng)的用戶認(rèn)證信息。可以對(duì)用戶登錄的驗(yàn)證碼、用戶狀態(tài)、登錄次數(shù)做出統(tǒng)一的管理。對(duì)于登錄成功的用戶,取得其相應(yīng)的角色,記錄登錄的IP與登錄時(shí)間,同時(shí)保存用戶的登錄日志。endprint

      3.3與SpringMVC集成

      在Web.xml設(shè)計(jì)配置Shiro的過濾器來實(shí)現(xiàn)Shiro與基于SpringMVC框架系統(tǒng)應(yīng)用的集成。配置完成后,Shiro 過濾器會(huì)將用戶每個(gè)請(qǐng)求進(jìn)行處理。根據(jù)科研信息管理的實(shí)際業(yè)務(wù)需要,調(diào)用特定的業(yè)務(wù)邏輯方法來確保請(qǐng)求的資源在滿足業(yè)務(wù)規(guī)則的條件下方可訪問。下面的代碼顯示了Web.xml文件中相對(duì)應(yīng)的配置片段。

      shiroFilter

      org.springframework.web.filter.DelegatingFilterProxy

      targetFilterLifecycletrue

      shiroFilter

      /*

      需要在classpath路徑下配置spring-shiro-web.xml文件。配置代碼如下:

      <!-- Realm實(shí)現(xiàn) -->

      [JP6][JP]

      <!--安全管理器 -->

      <!-- Shiro的Web過濾器 -->

      [JP4][JP]

      /authc/admin = roles[admin]

      /authc/** = authc

      /** = anon

      shiroFilter里面配置了多個(gè)property,其中,loginUrl屬性指沒有登錄的用戶請(qǐng)求需要登錄的頁(yè)面時(shí)自動(dòng)跳轉(zhuǎn)到登錄頁(yè)面; unauthorizedUrl屬性指沒有權(quán)限默認(rèn)跳轉(zhuǎn)的頁(yè)面。 filterChainDefinitions屬性對(duì)于過濾器的規(guī)則為:

      1)Shiro校驗(yàn)配置的順序?yàn)閺纳隙?。Shiro驗(yàn)證URL鏈接時(shí),如果匹配成功便不再繼續(xù)查找。

      2)Web應(yīng)用程序運(yùn)行時(shí),Shiro將會(huì)自動(dòng)創(chuàng)建Filter實(shí)例。

      4結(jié)束語(yǔ)

      本文簡(jiǎn)述了某高校科研信息管理系統(tǒng)的技術(shù)架構(gòu),提出在系統(tǒng)訪問控制集成中的實(shí)際需求,設(shè)計(jì)實(shí)現(xiàn)了基于Shiro的應(yīng)用系統(tǒng)整合實(shí)例。研究中,通過Shiro框架的特性進(jìn)行數(shù)據(jù)表的設(shè)計(jì),系統(tǒng)的整合,從而有效保證了科研管理在訪問控制中的業(yè)務(wù)需求。實(shí)際應(yīng)用表明,基于Shiro安全框架對(duì)系統(tǒng)資源訪問粒度進(jìn)行自由配置,并且在系統(tǒng)運(yùn)行中,能夠通過CacheManager提高系統(tǒng)權(quán)限管理的執(zhí)行效率,對(duì)高校信息化發(fā)展中的權(quán)限管理有一定的借鑒意義。

      參考文獻(xiàn):

      [WTBZ][ST6BZ][HT6SS][1] [ZK(#〗

      習(xí)近平. 科技是國(guó)之利器[EB/OL].[2016-06-06]. http://news.xinhuanet.com/politics/2016-06/06/c_129043555.htm.

      [2] 李嵐冰,律明. 高校就業(yè)信息化建設(shè)的問題與對(duì)策研究[J]. 情報(bào)科學(xué), 2017,35 (2):107-111.

      [3] 劉建圻, 曾碧, 鄭秀璋. 基于RBAC權(quán)限管理模型的改進(jìn)與應(yīng)用[J]. 計(jì)算機(jī)應(yīng)用, 2008,28(9):2449-2451.

      [4] 徐孝成. 基于Shiro 的Web 應(yīng)用安全框架的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電腦知識(shí)與技術(shù),2015,11(16):93-95.

      [5] 陳玲. 科研院所科研信息化管理系統(tǒng)的設(shè)計(jì)與應(yīng)用[J]. 數(shù)字技術(shù)與應(yīng)用,2016 (9) :135-137.

      [6] 吳江棟, 李偉華, 安喜鋒. 基于RBAC的細(xì)粒度訪問控制方法[J]. 計(jì)算機(jī)工程, 2008,34(20):52-54.endprint

      猜你喜歡
      認(rèn)證訪問控制科研
      云的訪問控制研究
      云計(jì)算訪問控制技術(shù)研究綜述
      中職校園網(wǎng)絡(luò)安全管理系統(tǒng)設(shè)計(jì)
      大學(xué)教學(xué)與科研關(guān)系的再辨識(shí)
      教育行動(dòng)研究可促進(jìn)中小學(xué)教師科研發(fā)展
      校園骨干層網(wǎng)絡(luò)交換機(jī)的訪問控制技術(shù)
      洪江市| 张家口市| 修武县| 军事| 万安县| 新建县| 巴彦淖尔市| 元氏县| 泰安市| 房产| 东辽县| 奉节县| 乌拉特前旗| 固安县| 清丰县| 丰原市| 搜索| 临安市| 蒙自县| 黑山县| 广东省| 时尚| 句容市| 翁源县| 措勤县| 军事| 崇阳县| 林周县| 华亭县| 库车县| 平山县| 饶阳县| 集贤县| 绥化市| 永修县| 辉南县| 娄烦县| 紫云| 图木舒克市| 琼结县| 田阳县|