![(完整版)Saas公共服務(wù)平臺架構(gòu)及實(shí)現(xiàn)_畢業(yè)設(shè)計(jì).doc_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-8/31/79b63bcb-9972-49ea-bda6-c265e979623e/79b63bcb-9972-49ea-bda6-c265e979623e1.gif)
![(完整版)Saas公共服務(wù)平臺架構(gòu)及實(shí)現(xiàn)_畢業(yè)設(shè)計(jì).doc_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-8/31/79b63bcb-9972-49ea-bda6-c265e979623e/79b63bcb-9972-49ea-bda6-c265e979623e2.gif)
![(完整版)Saas公共服務(wù)平臺架構(gòu)及實(shí)現(xiàn)_畢業(yè)設(shè)計(jì).doc_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-8/31/79b63bcb-9972-49ea-bda6-c265e979623e/79b63bcb-9972-49ea-bda6-c265e979623e3.gif)
![(完整版)Saas公共服務(wù)平臺架構(gòu)及實(shí)現(xiàn)_畢業(yè)設(shè)計(jì).doc_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-8/31/79b63bcb-9972-49ea-bda6-c265e979623e/79b63bcb-9972-49ea-bda6-c265e979623e4.gif)
![(完整版)Saas公共服務(wù)平臺架構(gòu)及實(shí)現(xiàn)_畢業(yè)設(shè)計(jì).doc_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-8/31/79b63bcb-9972-49ea-bda6-c265e979623e/79b63bcb-9972-49ea-bda6-c265e979623e5.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1. SaaS介紹1.1SaaS 概念SaaS是 Software-as-a-service(軟件即服務(wù) )的簡稱,是隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展和應(yīng)用軟件的成熟,而在21 世紀(jì)開始興起的一種完全創(chuàng)新的軟件應(yīng)用模式。它是一種通過 Internet 提供軟件的模式, 廠商將應(yīng)用軟件統(tǒng)一部署在自己的服務(wù)器上,客戶可以根據(jù)自己實(shí)際需求, 通過互聯(lián)網(wǎng)向廠商定購所需的應(yīng)用軟件服務(wù),按定購的服務(wù)多少和時(shí)間長短向廠商支付費(fèi)用,并通過互聯(lián)網(wǎng)獲得廠商提供的服務(wù)。用戶不用再購買軟件,而改用向提供商租用基于Web 的軟件,來管理企業(yè)經(jīng)營活動, 且無需對軟件進(jìn)行維護(hù), 服務(wù)提供商會全權(quán)管理和維護(hù)軟件,軟件廠商在向客戶提供互聯(lián)
2、網(wǎng)應(yīng)用的同時(shí), 也提供軟件的離線操作和本地?cái)?shù)據(jù)存儲,讓用戶隨時(shí)隨地都可以使用其定購的軟件和服務(wù)。對于許多小型企業(yè)來說,SaaS 是采用先進(jìn)技術(shù)的最好途徑,它消除了企業(yè)購買、構(gòu)建和維護(hù)基礎(chǔ)設(shè)施和應(yīng)用程序的需要。在這種模式下,客戶不再像傳統(tǒng)模式那樣花費(fèi)大量投資用于硬件、軟件、人員,而只需要支出一定的租賃服務(wù)費(fèi)用,通過互聯(lián)網(wǎng)便可以享受到相應(yīng)的硬件、軟件和維護(hù)服務(wù),享有軟件使用權(quán)和不斷升級,這是網(wǎng)絡(luò)應(yīng)用最具效益的營運(yùn)模式。1.2 SaaS 專用名詞1.多重租賃(Multi-tenancy)SaaS的 多重租賃概念就是,多個(gè)公司將其數(shù)據(jù)和業(yè)務(wù)流程托管存放在SaaS服務(wù)商的同一服務(wù)器組上,相當(dāng)于服務(wù)商將一
3、套在線軟件同時(shí)出租給多個(gè)公司,每個(gè)公司只能看到自己的數(shù)據(jù),由服務(wù)商來維護(hù)這些數(shù)據(jù)和軟件。也就是說, 多個(gè)公司登錄到同一網(wǎng)站,但登錄后看到的界面和數(shù)據(jù),不同的公司大不相同。2.單點(diǎn)登錄 (Single sign-on)這個(gè)概念應(yīng)用在 SaaS 上,就是指把多個(gè)不同的在線應(yīng)用軟件服務(wù)搭建成為一種新型的整合服務(wù)。用戶通常只需要登錄一次就可以使用集成好的應(yīng)用軟件組合。3.基礎(chǔ)架構(gòu)平臺 (Platform infrastructure)有時(shí)候 SaaS的擁護(hù)者希望出現(xiàn)一種基礎(chǔ)架構(gòu)的平臺來推動SaaS更好地發(fā)展。這是因?yàn)槭紫鹊糜幸粋€(gè)平臺來支撐SaaS軟件應(yīng)用程序的運(yùn)行,如今最著名的是國外Salesforc
4、e 公司的 APP Exchange 平臺,國內(nèi) 800CRM 的 800APP Native 的平臺與Salesforce兼容。4. SaaS(軟件作為服務(wù))厲害的 SaaS銷售代表直接用SaaS就能解決你所有管理軟件問題。比起其它軟件,SaaS軟件更便宜,靈活性更強(qiáng),能省掉更多的麻煩。5 SaaS成熟度模型(SaaS Maturity Model)(1)Level1:定制開發(fā)這是最初級的成熟度模型,其定義為Ad HocCustom,即特定的定制的,對于最初級的成熟度模型,技術(shù)架構(gòu)上跟傳統(tǒng)的項(xiàng)目型軟件開發(fā)或者軟件外包沒什么區(qū)別,按照客戶的需求來定制一個(gè)版本,每個(gè)客戶的軟件都有一份獨(dú)立的代碼。
5、不同的客戶軟件之間只可以共享和重用的少量的可重用組件,庫以及開發(fā)人員的經(jīng)驗(yàn)。最初級的SaaS 應(yīng)用成熟度模型與傳統(tǒng)模式的最大差別在于商業(yè)模式,即軟硬件以及相應(yīng)的維護(hù)職責(zé)由SaaS服務(wù)商負(fù)責(zé),而軟件使用者只需按照時(shí)間,用戶數(shù),空間等逐步支付軟件租賃使用費(fèi)用即可。(2)Level2:可配置第二級成熟度模型相對于最初級的成熟度模型,增加了可配置性,可以通過不同的配置來滿足不同客戶的需求,而不需要為每個(gè)客戶進(jìn)行特定定制,以降低定制開發(fā)的成本。 但在第二級成熟度模型中, 軟件的部署架構(gòu)沒有發(fā)生太大的變化,每個(gè)客戶獨(dú)立部署一個(gè)運(yùn)行實(shí)例。 只是每個(gè)運(yùn)行實(shí)例運(yùn)行的是同一個(gè)代碼,依然是為通過配置的不同來滿足不同
6、客戶的個(gè)性化需求。(3)Level3:高性能的多租戶架構(gòu)在應(yīng)用架構(gòu)上, 第一級和第二級的成熟度模型與傳統(tǒng)軟件沒有多大差別,只是在商業(yè)模式上符合 SaaS的定義。多租戶單實(shí)例的應(yīng)用架構(gòu)才是通常真正意義上的應(yīng)用架構(gòu),即 Multi-Tenant 架構(gòu)。多租戶單實(shí)例的應(yīng)用架構(gòu)可以有效地降低SaaS SaaS 應(yīng)用的硬件及運(yùn)行維護(hù)成本,最大化地發(fā)揮SaaS應(yīng)用的規(guī)模效應(yīng)。要實(shí)現(xiàn) Multi-Tenant架構(gòu)的關(guān)鍵是通過一定的策略來保證不同租戶間的數(shù)據(jù)隔離,確保不同租戶既能共享同一個(gè)應(yīng)用的運(yùn)行實(shí)例,又能為用戶提供獨(dú)立的應(yīng)用體驗(yàn)和數(shù)據(jù)空間。(4)Level4:可伸縮性的多租戶架構(gòu)在實(shí)現(xiàn)了多租戶但單實(shí)例的應(yīng)
7、用架構(gòu)之后, 隨著租戶數(shù)量的逐漸增加, 集中式的數(shù)據(jù)庫性能就將成為整個(gè) SaaS應(yīng)用的性能瓶頸。 因此,在用戶數(shù)大量增加的情況下,無須更改應(yīng)用架構(gòu), 而僅需簡單的增加硬件設(shè)備的數(shù)量, 就可以支持應(yīng)用規(guī)模的增長。不管用戶多少, 都能像單用戶一樣方便地實(shí)施應(yīng)用修改。 這就是第四級也是最高級別的 SaaS成熟度模型所要致力解決的問題。5.獨(dú)立軟件開發(fā)者(ISV)開發(fā)軟件的個(gè)人或者公司,ISV 通過平臺來出售自己的軟件6.軟件入口ISV 出售軟件時(shí),提供給用戶使用的接口,即ISV 開發(fā)的軟件的進(jìn)入網(wǎng)址。7.創(chuàng)建子版本ISV 根據(jù)軟件的功能,版軟件分成幾個(gè)不同的子版本,用戶可以根據(jù)所需運(yùn)用購買不同的版本
8、,其工作有isv完成8.租戶購買了軟件的個(gè)人或者公司。9.注冊序列號isv注冊軟件時(shí)獲得的序列號, 是 isv軟件唯一不可變更的序列號, 可不計(jì)入數(shù)據(jù)庫,單必須保存在 isv 軟件的配置文件中。10.免登陸由平臺跳到isv 軟件時(shí), 不需進(jìn)行再登陸,isv 軟件根據(jù)傳過來的用戶信息,直接初始化用戶信息。11.Token身份驗(yàn)證令牌,在saas平臺跳到isv軟件時(shí)使用,用于驗(yàn)證跳轉(zhuǎn)用戶的合法性。Token 動態(tài)生成,為了安全,其生命長度只有10-20 秒。12 免登入接口由平臺提供的一組驗(yàn)證程序,修改其中的注冊序列號后綁定到isv 軟件,以實(shí)現(xiàn)用戶的免登入。13參與的軟件不是自己購買開發(fā)的軟件,
9、而是由別人購買并添加,其所有軟件顯示為參與的軟件。14 AssP軟件互聯(lián)平臺,在這既SaaS平臺2 SaaS平臺功能2.1軟件注冊2.1.1 業(yè)務(wù)流程圖注冊用戶點(diǎn)擊注冊軟件填寫軟件信息和軟件入口提交成功失敗在用戶開發(fā)的軟件列表添加此軟件,獲得序列號在用戶軟件上綁定軟件序列號失敗調(diào)試軟件成功平臺管理員審核軟件成功失敗軟件上架,進(jìn)入商場進(jìn)入開發(fā)的軟件結(jié)束編輯軟件信息圖 1 軟件注冊流程圖2.1.2 業(yè)務(wù)詳細(xì)說明用戶先注冊一個(gè)平臺的帳號,登錄后,點(diǎn)擊我的軟件(即開發(fā)的軟件)進(jìn)入,后點(diǎn)擊注冊軟件,填寫相關(guān)信息,提交成功后,會產(chǎn)生一個(gè)軟件注冊序列號,此序列號為核對客戶軟件的憑證。最后還需通過平臺管理員審
10、核,該軟件才會出現(xiàn)在軟件商城中,才可供平臺用戶購買。2.1.3 功能描述注冊軟件主要是用于給想在該平臺上出售軟件的第三方客戶(軟件提供商)提供軟件入口,同時(shí)填寫軟件相關(guān)詳細(xì)信息,圖片,類別等。注意:注冊軟件時(shí)需要客戶填寫軟件入口,即客戶所提供軟件的發(fā)布網(wǎng)址,當(dāng)平臺上的客戶購買了軟件后,點(diǎn)擊進(jìn)入使用時(shí),將通過該軟件入口進(jìn)入軟件。2.1.4 用例圖軟件審核查看軟件信息審核軟件平臺管理員刪除軟件圖 2 軟件審核用例圖注冊軟件注冊信息獲得序列號注冊用戶綁定序列號圖 3 注冊軟件用例圖2.2軟件編輯2.2.1 業(yè)務(wù)流程圖開始編輯子版本獲得子版本序列號綁定序列號軟件上架結(jié)束圖 4 軟件編輯流程圖2.2.2
11、 業(yè)務(wù)詳細(xì)說明軟件注冊成功并通過審核后,即可在我的軟件(開發(fā)的軟件)中查看,編輯或刪除該軟件信息,同時(shí)還可為軟件進(jìn)行版本分類,可創(chuàng)建,查看,刪除子版本。2.2.3 功能描述在我的軟件中可查看,編輯,刪除該軟件信息,同時(shí)還可為軟件進(jìn)行版本分類,可創(chuàng)建,查看,刪除子版本。2.2.4 用例圖軟件開發(fā)者編輯軟件查看子版本創(chuàng)建子版本編輯軟件信息刪除軟件圖 5 軟件編輯用例圖2.3 軟件購買2.3.1 業(yè)務(wù)流程圖注冊用戶進(jìn)入軟件商城點(diǎn)擊購買某軟件,進(jìn)入購買頁面選擇購買版本填寫購買授權(quán)個(gè)數(shù)點(diǎn)擊取消和年限確定購買是否已經(jīng)購買沒有購買成功進(jìn)入購買的軟件進(jìn)入添加用戶是已添加的用戶個(gè)數(shù) 授權(quán)個(gè)數(shù)?有否進(jìn)入續(xù)費(fèi)頁面,
12、添用戶是否存在否加授權(quán)個(gè)數(shù)添加用戶,把用戶注冊用戶添加到相應(yīng)軟件中授權(quán)期限未否到?是進(jìn)入續(xù)費(fèi)頁面,添進(jìn)入使用加授權(quán)期限結(jié)束圖 6 軟件購買流程圖2.3.2 業(yè)務(wù)詳細(xì)說明用戶在軟件商城可查看所有平臺已通過審核的軟件,若用戶已登錄并未購買過該軟件,則可點(diǎn)擊購買進(jìn)行購買軟件;點(diǎn)擊查看詳細(xì)信息,可查看軟件的詳細(xì)信息, 點(diǎn)擊購買可進(jìn)行購買 (前提是用戶已登錄并未購買過該軟件) ,若此用戶已購買過該軟件則會提示已購買并跳到購買的軟件頁面,用戶可點(diǎn)擊進(jìn)入使用,若此用戶未登錄,則提示請先注冊并登錄。添加用戶:若租戶購買的授權(quán)個(gè)數(shù)大于 1,則可添加其他用戶使用軟件,添加用戶有兩種方式:1. 若用戶已存在, 即添
13、加已在平臺上注冊的用戶, 則可通過注冊時(shí)填寫的電子郵件地址進(jìn)行查找,并添加,添加成功后,對方即可在參與的軟件中使用該軟件。2. 若用戶不存在, 即添加還未在平臺上注冊的用戶, 則可通過創(chuàng)建新用戶來進(jìn)行添加, 并把創(chuàng)建的信息告知對方, 對方即可在參與的軟件中使用該軟件。若不在想讓某用戶使用該軟件,可通過刪除操作來刪除。續(xù)費(fèi):租戶可根據(jù)僅追加使用授權(quán)個(gè)數(shù), 僅追加購買授權(quán)期限或同時(shí)追加個(gè)數(shù)和權(quán)限來進(jìn)行續(xù)費(fèi)2.3.3 功能描述軟件商城顯示所有注冊了并通過審核的軟件,平臺上已注冊并登錄的用戶充值后可選擇相應(yīng)的軟件根據(jù)授權(quán)個(gè)數(shù)和授權(quán)時(shí)間進(jìn)行購買。購買成功后即可在購買的軟件中查看并使用,同時(shí)還可進(jìn)行續(xù)費(fèi),
14、添加用戶等操作。添加用戶用于租戶添加自己所購買軟件的使用人員,也可根據(jù)需要進(jìn)行刪除。注意:授權(quán)個(gè)數(shù)即可使用該軟件的人數(shù), 客戶購買了軟件后即成為租戶,租戶可通過添加用戶操作添加用戶。授權(quán)時(shí)間即該軟件可使用的時(shí)間,若租戶想增加授權(quán)個(gè)數(shù)或增加授權(quán)人數(shù),即可通過續(xù)費(fèi)來完成。2.3.4 用例圖購買軟件查看軟件信息注冊用戶購買軟件添加用戶續(xù)費(fèi)圖 7 軟件購買用例圖2.4 參與軟件2.4.1 業(yè)務(wù)流程圖無業(yè)務(wù)流程圖。2.4.2 業(yè)務(wù)詳細(xì)說明通過軟件購買中的添加用戶可添加用戶,成功后, 用戶點(diǎn)擊參加的軟件中相應(yīng)軟件的進(jìn)入使用,可使用包括自己購買的和通過其他租戶添加進(jìn)去使用的軟件2.4.3 功能描述參加的軟件
15、中顯示用戶可使用的軟件列表,包括自己購買的和通過其他租戶添加進(jìn)去使用的軟件2.4.4 用例圖參與的軟件使用軟件軟件參與者圖 8 參與軟件用例圖2.5 賬戶與個(gè)人信息2.5.1 業(yè)務(wù)流程圖無業(yè)務(wù)流程圖。2.5.2 業(yè)務(wù)詳細(xì)說明用戶可根據(jù)需要查看余額,進(jìn)行充值,查看個(gè)人信息,修改密碼等2.5.3 功能描述帳戶與個(gè)人信息可查看用戶的余額,可進(jìn)行充值, 查看個(gè)人信息,修改密碼等操作2.5.4 用例圖系統(tǒng)修改密碼個(gè)人充值注冊用戶查看個(gè)人信息圖 9 帳戶與個(gè)人信息用例圖02.6 SaaS 平臺免登陸接口2.6.1 業(yè)務(wù)流程圖用戶請求登陸SaaS軟件,平臺對SaaS軟件傳參數(shù)SaaS軟件對 CheckLog
16、in.aspx請求訪問調(diào)用接口判斷請求接口的名稱 未找到相應(yīng)的接口名返回調(diào)用未聲明接口的錯(cuò)誤信息 存在此接口名稱獲取請求的參數(shù) 請求的參數(shù)不完全或?yàn)榭辗祷匦枰埱髤?shù)為空的參數(shù)信息 調(diào)用接口的參數(shù)全部獲取判斷請求信息是否超時(shí)重傳 調(diào)用接口的 Token已經(jīng)超時(shí) 返回超時(shí)重傳的錯(cuò)誤信息Token 未超時(shí) 判斷請求參數(shù)信息的合法性 根據(jù)參數(shù)計(jì)算的sipsign不符合要求 返回不存在或非法的參數(shù)錯(cuò)誤信息 計(jì)算的 sipsign符合要求 處理接口調(diào)用請求, 返回結(jié)果數(shù)組圖 1-6-1 免登陸接口的處理流程2.6.2 業(yè)務(wù)詳細(xì)說明用戶請求訪問購買的SaaS軟件:用戶請求使用用戶購買的SaaS軟件時(shí),平臺
17、會將用戶ID(User_ID),軟件ID(Application_ID),購買此軟件的租戶ID(Renter_ID),防止重傳的Token這4 個(gè)參數(shù)傳值提供軟件提供商提供的網(wǎng)址。同時(shí)將此時(shí)生成的Token序列和時(shí)間與訪問的用戶id,軟件 id 一起保存在數(shù)據(jù)庫里,Token的有效時(shí)間理應(yīng)當(dāng)設(shè)為10 秒到 20 秒左右。SaaS軟件訪問CheckLogin.aspx調(diào)用免登陸接口:SaaS 軟件在注冊時(shí)候會獲得一個(gè)獨(dú)有的軟件序列號,軟件提供商在軟件開始運(yùn)行的代碼中加入請求,訪問平臺判斷此用戶和本軟件是否是合法的軟件和用戶,SaaS軟件應(yīng)該將軟件序列號,時(shí)間戳(系統(tǒng)當(dāng)前時(shí)間) ,請求的接口名,與
18、傳送過來的四個(gè)值用 md5 加密生成一個(gè)新的 sipsign的值,再把 sipsign,時(shí)間戳,請求的接口名和傳送過來的四個(gè)值傳給平臺的CheckLogin.aspx頁面請求調(diào)用免登陸接口。 (如圖1-6-2 和 圖 1-6-3)圖 1-6-2 sipsign驗(yàn)證的生成圖 1-6-3 請求接口的 URL判斷請求接口的名稱:請求接口理應(yīng)當(dāng)分為很多類型,所以在處理頁面上應(yīng)當(dāng)做分類處理,當(dāng)然目前只實(shí)現(xiàn)的免登陸接口,但為了以后的擴(kuò)展這種業(yè)務(wù)流程上的判斷不能少(接口名稱的命名規(guī)則建議為:公司名.模塊名 .功能名,這樣可以用split 做分類操作) 。如果不存在此名稱的接口,則返回一個(gè)錯(cuò)誤信息。獲取請求的
19、數(shù)據(jù):根據(jù)接口類型的不同,獲取不同名稱的數(shù)據(jù)參數(shù)。如果獲取的某一個(gè)數(shù)據(jù)參數(shù)為空,則返回一個(gè)錯(cuò)誤信息。判斷是否重傳:根據(jù)傳送過來的Token序列號和用戶id,從數(shù)據(jù)庫讀出相應(yīng)的Token記錄,并比較 Token中的時(shí)間與平臺上的當(dāng)前時(shí)間是否超出了果超出了防重傳的時(shí)間限制, 則返回一個(gè)錯(cuò)誤信息。任何數(shù)據(jù),也返回一個(gè)錯(cuò)誤信息。Token 防重傳的時(shí)間限制。 如如果根據(jù) Token從數(shù)據(jù)庫讀不出Token 存取的流程如圖1-6-4:圖 1-6-4Token存取流程判斷參數(shù)的合法性:根據(jù)傳送過來的參數(shù),和平臺從數(shù)據(jù)庫讀出相應(yīng)的軟件序列號重新做一次sipsign的運(yùn)算,再將運(yùn)算結(jié)果和SaaS軟件傳送過來的
20、值做比較,如果相同則合法,如果不相同則返回一個(gè)錯(cuò)誤信息。處理接口調(diào)用請求,返回結(jié)果數(shù)值:通過一系列的合法判斷,最后執(zhí)行接口的處理請求,不同的接口處理方式不同,需要返回結(jié)果由&特殊字符拼接成一個(gè)字符串返回給SaaS軟件 (也可以返回一個(gè)xml),如果不需要返回結(jié)果的,可以返回一個(gè)成功信息。(這部分還需要對安全性進(jìn)行考慮 )2.6.3 功能描述接口的實(shí)現(xiàn)主要是針對 SaaS軟件與 SaaS平臺之間的關(guān)聯(lián)矛盾。 因?yàn)橛脩魯?shù)據(jù)與買賣交易數(shù)據(jù)都存放在 SaaS平臺之中。 當(dāng) SaaS軟件需要獲得買賣此軟件的某些合法的用戶數(shù)據(jù)的時(shí)候就需要和平臺進(jìn)行一定的交互,此時(shí)候就要通過接口來實(shí)現(xiàn)此種交互。目前 Saa
21、S平臺上只實(shí)現(xiàn)了免登陸的接口,免登陸接口實(shí)現(xiàn)用戶從平臺到第三方軟件的鏈接不需要二次登陸,只需要在平臺上購買了此軟件,則可以從平臺上直接登陸第三方軟件使用。接口的種類可以有很多種,如果要擴(kuò)展的話還可能要有獲取購買此軟件用戶授權(quán)的接口,查詢購買此軟件的用戶信息的接口,以及其他等等。2.6.4 用例圖接口模塊不存在用例圖。2.7 SaaS 軟件用戶初始化2.7.1 業(yè)務(wù)流程圖用戶在平臺登陸選擇購買的軟件進(jìn)入SaaS軟件調(diào)用免登陸接口 用戶非法提示錯(cuò)誤信息,返回平臺 用戶合法判斷用戶所屬租戶是否存在 本地?cái)?shù)據(jù)不存在此租戶初始化租戶信息及相關(guān)信息 本地?cái)?shù)據(jù)存在此租戶判斷用戶是否存在 本地?cái)?shù)據(jù)不存在此用戶
22、初始化用戶信息 本地?cái)?shù)據(jù)存在此用戶載入登陸用戶的權(quán)限,信息使用屬于此用戶的軟件圖 1-7-1 SaaS軟件初始化流程2.7.2 業(yè)務(wù)詳細(xì)說明用戶在平臺登陸:基于 SaaS平臺的 SaaS軟件的用戶都是在平臺上實(shí)現(xiàn)注冊登陸的,這樣平臺上管理多個(gè)SaaS軟件的時(shí)候就可以一次登陸免去多個(gè)二次登陸的麻煩。用戶在平臺通過單點(diǎn)登陸(SSO)鏈接到 SaaS軟件上。選擇購買的軟件進(jìn)入:用戶可以擁有多個(gè)軟件,不同的軟件有不同的軟件入口地址。SaaS軟件調(diào)用免登陸接口:所有的軟件一開始都應(yīng)當(dāng)判斷進(jìn)入用戶的合法性。判斷用戶所屬租戶是否存在初始化租戶信息:先查看本地?cái)?shù)據(jù)庫中是否存在與此租戶是否存在, 如果不存在則需
23、要初始化租戶及相關(guān)的數(shù)據(jù), 所謂的初始化租戶及相關(guān)的數(shù)據(jù)不止是將租戶的信息加入到本地?cái)?shù)據(jù)庫, 而且要初始化 SaaS軟件的默認(rèn)配置。 譬如說 SaaS軟件本身具有默認(rèn)的幾個(gè)角色,但由于 SaaS軟件的特性是由多個(gè)不同的租戶使用,不同的租戶定義的角色有所不同, 但又具有相同的系統(tǒng)默認(rèn)的角色, 在這種情況下就需要在初始化租戶的時(shí)候初始化 SaaS 軟件的默認(rèn)配置,將系統(tǒng)本身默認(rèn)的角色與此租戶關(guān)聯(lián)起來。還有一點(diǎn)要注意的是, SaaS軟件本地?cái)?shù)據(jù)庫里的租戶id 就是用戶在平臺上的用戶id,通過這樣才能判斷平臺上的用戶是否已經(jīng)在軟件本地里初始化過。判斷用戶是否存在初始化用戶信息:如果本地?cái)?shù)據(jù)庫沒有此用戶
24、信息, 且此用戶又是合法的, 則將此用戶的信息存放在數(shù)據(jù)庫里。如果 SaaS軟件系統(tǒng)功能上是分角色權(quán)限的,則需要把給此用戶賦予一個(gè)最低的權(quán)限,再由系統(tǒng)管理員(即是租戶)提升此用戶的權(quán)限。載入登陸用戶的權(quán)限,信息:當(dāng)一切判斷結(jié)束后, 如果用戶合法且系統(tǒng)初始化信息完畢則用戶獲得一個(gè)具有他在此系統(tǒng)的權(quán)限和信息的 Session。2.7.3 功能描述SaaS軟件初始化的過程也即是為了解決平臺與SaaS軟件之間的關(guān)聯(lián)矛盾問題。但不同的是此部分必須要由軟件提供者完成,也就是軟件提供者需要在用戶登陸的時(shí)候就需要判斷初始化數(shù)據(jù)(盡管從流程上看很繁瑣,但必不可少)。這個(gè)初始化的過程可以解決不同租戶在軟件中配置不
25、同且又都保留系統(tǒng)默認(rèn)配置的問題。在初始化的設(shè)計(jì)我們采用的是一對一的設(shè)計(jì)方式:租戶 1判斷初始化租戶判斷初始化用戶租戶 1下的用戶 1在數(shù)據(jù)庫添加用戶數(shù)據(jù)租戶 1下的用戶 2圖 1-7-2 初始化方式這種初始化方式即是每個(gè)用戶就需要經(jīng)歷初始化判斷的過程,且只有判斷后才能把用戶數(shù)據(jù)添加到本地?cái)?shù)據(jù)庫里。即是一個(gè)租戶買了軟件后添加了用戶,租戶可以不先登陸,用戶可以先登陸(因?yàn)樗械挠脩舳紩|發(fā)初始化過程),然而只有登陸過的用戶才能出現(xiàn)在SaaS 軟件的本地?cái)?shù)據(jù)庫中。這種初始化過程是采用分別初始化,一一對應(yīng)的方式。 (至于基于組織結(jié)構(gòu)方式進(jìn)行初始化方式,我們在改進(jìn)的功能點(diǎn)與方案中再進(jìn)行描述討論)2.7.
26、4 用例圖此模塊無用例圖。3SaaS平臺需改進(jìn)的功能點(diǎn)與方案3.1基于組織機(jī)構(gòu)的軟件用戶管理方式3.1.1 原功能描述SaaS 平臺的設(shè)計(jì)是基于用戶的軟件使用方式,也就是說每個(gè)用戶在平臺上都是平級的, 當(dāng)用戶購買了軟件之后他就成了這個(gè)軟件的一個(gè)特定的租戶,當(dāng)用戶想要其他的用戶使用自己購買的軟件的時(shí)候,可以把這個(gè)軟件的使用授權(quán)賦予其他平臺用戶,至于具體的權(quán)責(zé)劃分就在軟件中劃分,當(dāng)然租戶可以收回賦予的軟件使用授權(quán)。這樣的方式是以個(gè)體用戶為中心,采用平級的處理來實(shí)現(xiàn)軟件用戶管理。(這方面還需要對惡意注冊進(jìn)行考慮改進(jìn))3.1.2 改進(jìn)后的功能描述根據(jù)新的需求,SaaS 平臺追加一種基于組織機(jī)構(gòu)的軟件用
27、戶管理方式。也就是說一個(gè)組織機(jī)構(gòu)購買了一個(gè)軟件后可以把軟件授權(quán)賦予在所屬組織機(jī)構(gòu)的用戶上。這樣的實(shí)現(xiàn)方式可以讓軟件用戶的管理更簡單,組織機(jī)構(gòu)當(dāng)然也可以回收某個(gè)用戶的使用權(quán)限,并賦予某個(gè)用戶多個(gè)軟件的使用權(quán)限。同時(shí),SaaS 軟件初始化的過程中可以讓組織中的人員角色與SaaS軟件中人員角色相對應(yīng)(此功能很難實(shí)現(xiàn))。3.1.3 實(shí)現(xiàn)方案如果要添加基于組織機(jī)構(gòu)的軟件用戶管理方式,則必須先要添加組織機(jī)構(gòu)的注冊。也就是說注冊的類型分為個(gè)人用戶注冊和組織機(jī)構(gòu)注冊。至于組織機(jī)構(gòu)的里所屬的用戶在理念上是可以由用戶自由添加和管理的(這種設(shè)計(jì)可以認(rèn)為SaaS平臺也具有 SaaS軟件的部分特點(diǎn)) ,同時(shí)組織機(jī)構(gòu)里的
28、用戶也可以設(shè)置職位(職位在SaaS平臺中并沒有太大的作用,但此類信息在組織機(jī)構(gòu)的初始化過程中可能要用到,詳細(xì)信息在基于組織機(jī)構(gòu)的軟件用戶初始化方式中討論說明)。那么一個(gè)基于組織機(jī)構(gòu)的軟件用戶管理方式可以看成是一個(gè)簡單的管理系統(tǒng),如圖3-1-1:基于組織結(jié)構(gòu)軟件用戶管理設(shè)賦管置予理組添刪組組織加除織織機(jī)組組機(jī)機(jī)構(gòu)織織構(gòu)構(gòu)用機(jī)機(jī)用用戶構(gòu)構(gòu)戶戶信用用軟軟息戶戶件件和授授職權(quán)權(quán)位圖 3-1-1 組織機(jī)構(gòu)的軟件用戶管理方式既然組織機(jī)構(gòu)里有屬于此組織機(jī)構(gòu)獨(dú)有的用戶,那么出于安全與系統(tǒng)設(shè)計(jì)上的考慮我們需要讓組織機(jī)構(gòu)中的用戶與普通的個(gè)體用戶分別獨(dú)立開來,所以我們要加一張組織機(jī)構(gòu)用戶表來專門存儲組織機(jī)構(gòu)用戶數(shù)據(jù)
29、,同時(shí)必須要有一個(gè)數(shù)據(jù)字段來記錄組織的id,如圖3-1-2:圖 3-1-2 組織機(jī)構(gòu)用戶數(shù)據(jù)結(jié)構(gòu)用戶數(shù)據(jù)信息里可以存放用戶的賬號,密碼, 職位等其他用戶信息。而組織機(jī)構(gòu)用戶是可以由組織機(jī)構(gòu)隨意添加的,但組織機(jī)構(gòu)用戶只能有其所屬的組織機(jī)構(gòu)管理(此部分存在一個(gè)惡意注冊的問題,可以考慮每個(gè)組織機(jī)構(gòu)有個(gè)添加用戶的上限)。當(dāng)然,組織機(jī)構(gòu)用戶與普通的個(gè)體用戶在平臺上的功能也應(yīng)該有所不同,且他們涉及到的關(guān)系業(yè)務(wù)邏輯也應(yīng)當(dāng)有所不同,具體的設(shè)計(jì)想法如下:1, 個(gè)體用戶與組織機(jī)構(gòu)間沒有任何關(guān)系,即是和組織機(jī)構(gòu)用戶沒有任何關(guān)系,個(gè)體用戶購買的軟件授權(quán)是不可以賦予組織機(jī)構(gòu)的用戶的。2, 個(gè)體用戶是一個(gè)平級的概念,組織
30、機(jī)構(gòu)用戶有上下級關(guān)系。3, 個(gè)體用戶可以通過購買軟件成為一個(gè)租戶,組織機(jī)構(gòu)用戶永遠(yuǎn)都是隸屬于組織機(jī)構(gòu)這個(gè)租戶下的用戶,同時(shí)也不具有購買軟件的功能。4, 個(gè)體用戶和組織機(jī)構(gòu)用戶登陸后所看到的頁面應(yīng)當(dāng)是不同的。5, 個(gè)體用戶只能由平臺的系統(tǒng)管理員管理,而組織機(jī)構(gòu)用戶可以由組織機(jī)構(gòu)管理。軟件使用授權(quán)的使用分配,其具體的實(shí)現(xiàn)方式因?yàn)閭€(gè)體用戶與組織機(jī)構(gòu)的分類而進(jìn)行分類處理的,普通個(gè)體用戶的軟件授權(quán)是賦予其他的普通個(gè)體用戶,這個(gè)個(gè)體用戶可以由用戶自己添加也可以查找現(xiàn)有的個(gè)體用戶的賬號,這種授權(quán)方式簡單但操作起來麻煩又不便管理。至于組織機(jī)構(gòu)的授權(quán)方式,就是組織機(jī)構(gòu)購買的軟件授權(quán)賦予組織機(jī)構(gòu)下的組織機(jī)構(gòu)用戶,
31、這種選取方式更靈活,如圖3-1-3 :組織機(jī)構(gòu)人員列表 賦予軟件 A的授權(quán) 賦予軟件 B的授權(quán) 賦予軟件 B的授權(quán) 用戶 1組織機(jī)構(gòu)管理者 賦予軟件 A的授權(quán) 用戶2用戶三圖 3-1-3 組織機(jī)構(gòu)軟件授權(quán)方式為了更好的管理組織下的用戶,組織機(jī)構(gòu)也需要設(shè)定一個(gè)層級關(guān)系,如圖: 3-1-4圖 3-1-4 組織機(jī)構(gòu)人員層級關(guān)系又由于組織機(jī)構(gòu)用戶是與組織機(jī)構(gòu)與個(gè)體用戶的數(shù)據(jù)表是分開的,所以組織機(jī)構(gòu)管理員對組織機(jī)構(gòu)用戶的添加,刪除,修改都是可以的,且不會影響平臺用戶的操作和數(shù)據(jù)。要實(shí)現(xiàn)這部分功能, 要添加組織機(jī)構(gòu)表, 組織機(jī)構(gòu)用戶表, 方便層次管理的部門表。如果要自定義角色的話還要添加個(gè)組織機(jī)構(gòu)角色表。3.2基于組織機(jī)構(gòu)的軟件用戶初始化方式3.2.1 原功能描述原來平臺上的用戶都是個(gè)體用戶,且都是平級的, 初始化的方式是采用分別初始化,一一對應(yīng)的方式。也就是說每個(gè)可以使用此軟件的用戶只有第一次登陸到SaaS軟件中去才能在SaaS軟件中初始化用戶數(shù)據(jù)。這種初始化方式每次初始化的流量小,且每個(gè)用戶的登陸都能觸發(fā)租戶信息的初始化,但不方便的是需要每個(gè)用戶登陸到軟件中。3.2.2 改進(jìn)后的功能描述由于出現(xiàn)了基于組織結(jié)構(gòu)的軟件用戶管理方式,相應(yīng)的也應(yīng)當(dāng)增加基于組織機(jī)構(gòu)的初始化方式。 基于組織機(jī)構(gòu)的初始化方式不同于普通的個(gè)體用戶初始化方式,其應(yīng)當(dāng)采用的是組織機(jī)構(gòu)管理員登陸一次性初始化
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 9 What's your hobby 說課稿(說課稿)-2024-2025學(xué)年湘少版(三起)英語五年級上冊
- Unit 3 What Would you like(說課稿)-2024-2025學(xué)年人教PEP版英語五年級上冊
- 2023九年級數(shù)學(xué)上冊 第六章 反比例函數(shù)1 反比例函數(shù)說課稿 (新版)北師大版
- 10《爬山虎的腳》說課稿-2024-2025學(xué)年語文四年級上冊統(tǒng)編版
- 2023三年級英語下冊 Unit 2 Animals at the Zoo Lesson 8 Tigers and Bears說課稿 冀教版(三起)
- 2025民間個(gè)人借款合同書范文
- 2024-2025學(xué)年高一歷史第13周 6.2卓爾不群的雅典說課稿
- 2025常年法律顧問合同
- 19《一只窩囊的大老虎》第二課時(shí)(說課稿)-2024-2025學(xué)年統(tǒng)編版語文四年級上冊001
- 2025獨(dú)家經(jīng)銷合同范本
- 剪映專業(yè)版:PC端短視頻制作(全彩慕課版) 課件 第3章 短視頻剪輯快速入門
- 湖南省長沙市開福區(qū)青竹湖湘一外國語學(xué)校2023-2024學(xué)年九年級下學(xué)期一模歷史試題
- 漢密爾頓抑郁和焦慮量表
- 風(fēng)電場事故案例分析
- 人教版八年級數(shù)學(xué)初中數(shù)學(xué)《平行四邊形》單元教材教學(xué)分析
- EPC項(xiàng)目設(shè)計(jì)及施工的配合
- 年產(chǎn)5萬噸1,4-丁二醇的工藝流程設(shè)計(jì)
- 八年級上冊-2024年中考?xì)v史總復(fù)習(xí)核心考點(diǎn)與重難點(diǎn)(部編版)
- 醫(yī)院科室人才建設(shè)規(guī)劃方案
- 儲油罐安全操作規(guī)程培訓(xùn)
- 護(hù)理飲食指導(dǎo)整改措施及方案
評論
0/150
提交評論