服務(wù)近2000家企業(yè),依托一系列實(shí)踐中打磨過的技術(shù)和產(chǎn)品,根據(jù)企業(yè)的具體業(yè)務(wù)問題和需求,針對(duì)性的提供各行業(yè)大數(shù)據(jù)解決方案。
標(biāo)準(zhǔn)化用戶統(tǒng)一認(rèn)證平臺(tái)(SSO)解決方案
來源:未知 時(shí)間:2018-37-27 瀏覽次數(shù):2,378次
一、項(xiàng)目總體需求
1-1.需求背景
隨著信息技術(shù)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,企業(yè)內(nèi)部的應(yīng)用系統(tǒng)越來越多。比如在媒體行業(yè),常見的應(yīng)用系統(tǒng)就有采編系統(tǒng)、排版系統(tǒng)、印刷系統(tǒng)、廣告管理系統(tǒng)、財(cái)務(wù)系統(tǒng)、辦公自動(dòng)化系統(tǒng)、決策支持系統(tǒng)、客戶關(guān)系管理系統(tǒng)和網(wǎng)站發(fā)布系統(tǒng)等。由于這些系統(tǒng)互相獨(dú)立,用戶在使用每個(gè)應(yīng)用系統(tǒng)之前都必須按照相應(yīng)的系統(tǒng)身份進(jìn)行登錄,為此用戶必須記住每一個(gè)系統(tǒng)的用戶名和密碼,這給用戶帶來了不少麻煩。特別是隨著系統(tǒng)的增多,出錯(cuò)的可能性就會(huì)增加,受到非法截獲和破壞的可能性也會(huì)增大,安全性就會(huì)相應(yīng)降低。針對(duì)于這種情況,統(tǒng)一用戶認(rèn)證、單點(diǎn)登錄等概念應(yīng)運(yùn)而生,同時(shí)不斷地被應(yīng)用到企業(yè)應(yīng)用系統(tǒng)中1-2.開發(fā)目的
- 增加系統(tǒng)安全性
- 標(biāo)準(zhǔn)化子系統(tǒng)接入方式降低接入成本
1-3.系統(tǒng)技術(shù)解決方案
- 總體說明
- 表示層:HTML、Java語言
- 功能層: JAVA語言
- 數(shù)據(jù)層: My SQL。
- 插件開發(fā):插件使用C++語言實(shí)現(xiàn)
系統(tǒng)硬件資源配置主要是: 高性能的服務(wù)器兩臺(tái)(系統(tǒng)數(shù)據(jù)庫服務(wù)器、系統(tǒng)的Web 服務(wù)器)、基本網(wǎng)絡(luò)設(shè)備、暢通的網(wǎng)絡(luò)環(huán)境以及打印機(jī)等設(shè)備。
- 系統(tǒng)運(yùn)行環(huán)境:服務(wù)器端Linux+tomcat+java+Mysql系統(tǒng)生產(chǎn)環(huán)境:NetBeans IDE 8.0.1+WAMP+Windows;
- 開發(fā)語言與框架:java+Mysql+Html+Javascript;
- 輔助設(shè)計(jì)工具:應(yīng)用Visio、Balsamiq Mockups等工具進(jìn)行輔助設(shè)計(jì);
- 系統(tǒng)網(wǎng)絡(luò)架構(gòu):平臺(tái)使用B/S架構(gòu),技術(shù)架構(gòu)如下圖(1-1)所示。
- 協(xié)議與技術(shù)框架:
業(yè)務(wù)層架構(gòu):shiro+springmvc+mybatis+spring
二、系統(tǒng)功能設(shè)計(jì)架構(gòu)圖

三、系統(tǒng)業(yè)務(wù)流程設(shè)計(jì)

標(biāo)準(zhǔn)化用戶統(tǒng)一認(rèn)證平臺(tái)設(shè)計(jì)方案,點(diǎn)擊下載
- 用戶單點(diǎn)登錄流程圖

- Auth2.0第三方賬號(hào)登錄流程

- 子系統(tǒng)驗(yàn)證流程

四、平臺(tái)功能設(shè)計(jì)概要
4-1用戶管理系統(tǒng)
4-1-1用戶信息管理
- 添加用戶:添加,修改用戶基本信息,包括用戶姓名,郵箱,手機(jī)號(hào)碼,設(shè)置用戶登錄名和密碼。
- 用戶信息查看:根據(jù)用戶名或登錄時(shí)間查詢用戶列表,并顯示用戶信息。
4-1-2用戶審計(jì)
統(tǒng)計(jì)用戶登錄日志,設(shè)置用戶登錄狀態(tài)(凍結(jié)賬戶,解凍賬戶)4-1-2用戶組及權(quán)限管理
- 系統(tǒng)權(quán)限機(jī)制:系統(tǒng)權(quán)限模塊使用自定義用戶角色機(jī)制;
- 自定義用戶角色 :管理員可創(chuàng)建用戶角色組,并設(shè)置角色組名稱,查看角色組所有用戶;
- 自定義權(quán)限:針對(duì)不同的角色組設(shè)置不同的權(quán)限;
- 自定義用戶:創(chuàng)建用戶賬戶并加入到不同的角色組(用戶權(quán)限設(shè)置)。
- 操作流程簡(jiǎn)述:創(chuàng)建角色-à選擇功能模塊—>添加管理員-à將管理員添加到該角色(管理員獲得該角色權(quán)限)、編輯角色權(quán)限后對(duì)應(yīng)管理員權(quán)限相應(yīng)改變(需注銷登錄)。
4-2身份認(rèn)證系統(tǒng)
4-2-1子系統(tǒng)管理
添加(注冊(cè))修改認(rèn)證子系統(tǒng)信息,按子系統(tǒng)名稱查找顯示子系統(tǒng)信息4-2-2身份認(rèn)證接口
平臺(tái)提供標(biāo)準(zhǔn)化統(tǒng)一的身份認(rèn)證接口,供子系統(tǒng)認(rèn)證用戶身份時(shí)使用,通訊協(xié)議使用LDAP標(biāo)準(zhǔn)協(xié)議,認(rèn)證成功后返回用戶信息4-3安全系統(tǒng)
4-3-1動(dòng)態(tài)密碼系統(tǒng)
按規(guī)則生成動(dòng)態(tài)密碼,以電子郵件(須提供smtp服務(wù)器接口)或短信方式(短信發(fā)送接口)發(fā)送給用戶,登錄時(shí)驗(yàn)證動(dòng)態(tài)密碼(若系統(tǒng)設(shè)置開啟動(dòng)態(tài)密碼驗(yàn)證登錄)4-3-2安全證書模塊
- 安全證書管理:生成安全證書VIN(證書標(biāo)識(shí))并寫入U(xiǎn)KEY中,完成VIN與用戶綁定,設(shè)置證書登錄有限期,設(shè)置登錄是否有效狀態(tài),修改并重新寫入U(xiǎn)KEY。
- UKEY插件:使用C++語言開發(fā)瀏覽器插件(支持IE內(nèi)核),用戶運(yùn)行登錄界面時(shí)提示用戶下載并按照該插件,插件安裝后,用戶插入U(xiǎn)KEY硬件實(shí)現(xiàn)自動(dòng)讀取其內(nèi)容,用戶登錄時(shí)將讀取到的內(nèi)容提交至服務(wù)進(jìn)行驗(yàn)證(若系統(tǒng)設(shè)置中開啟證書等驗(yàn)證)
- 第三方登錄:系統(tǒng)支持客戶使用第三方賬號(hào)登錄(微信,QQ,微博),后臺(tái)支持對(duì)第三方賬號(hào)管理(修改是否開啟,修改接口地址,修改認(rèn)證秘鑰),不支持動(dòng)態(tài)添加
4-4系統(tǒng)設(shè)置
4-4-1通訊接口設(shè)置
添加修改短信、電子郵件發(fā)送API相關(guān)信息4-4-2登錄設(shè)置
設(shè)置用戶登錄驗(yàn)證方式,驗(yàn)證方式為(用戶名密碼登錄,動(dòng)態(tài)密碼登錄,安全證書登錄),登錄方式組合如下表所示用戶名密碼驗(yàn)證 |
用戶名密碼驗(yàn)證+動(dòng)態(tài)密碼驗(yàn)證 |
用戶名密碼驗(yàn)證+動(dòng)態(tài)密碼驗(yàn)證+安全證書驗(yàn)證 |
![]() |
標(biāo)準(zhǔn)化用戶統(tǒng)一認(rèn)證平臺(tái)設(shè)計(jì)方案 |