• 沒有找到結果。

CDSASS運作流程

第四章 跨網域校務單一登入系統(CDSASS)

4.2 CDSASS運作流程

本節針對前一節所提跨網域之校務單一登入系統架構的運作流程做說明,並將系統運 作流程分為第一次登入與已通過認證再度登入兩種情況個別介紹,且詳細的描述使用者如 何透過跨網域校務單一登入系統的模組來達到與外部服務網站的溝通。

使用者第一次登入本系統,利用代登入方式與外部服務網站溝通流程共分七個步驟,

以下分別說明每一個步驟所交換的訊息內容,其運作流程如圖4.7所示:

圖 4.6 第一次登入系統之運作流程圖

(1) 使用者 → LM

使用者透過 HTTPS 加密通道連至登入頁面,並輸入帳號、密碼等認證資料以進行 登入動作。

(2) LM → AM

LM 將使用者輸入的帳號與經過雜湊函數運算的密碼送至 AM。

(3) AM →(UDM || APM || AuM)

AM 根據 LM 所傳來的使用者帳號與經過雜湊函數運算的密碼,向 UDM 取得該帳 號所對應的密碼與之比對。若使用者輸入的認證資料無誤,AM 便向 APM 索取該 使用者的角色權限代碼,連同認證成功的訊息存入session中,最後 AM 將使用者 登入成功的紀錄存到 AuM 資料表中。若使用者輸入的認證資料錯誤,AM 會將畫 面重導回 LM 的登入頁面,並將使用者登入失敗的紀錄存到 AuM 資料表中。

(4) AM → 使用者

AM 將經過雜湊運算的身分證字號、使用者IP位址、cookie有效的時間、加密的 session id及雜湊訊息確認碼(Hash Message Authetication Code ,HMAC)儲存在 Cookie中回傳給使用者。

(5) 使用者 → SSOM

使用者向 SSOM 請求服務, SSOM 依據 Session 中的角色代碼,取得角色權限並 列出使用者可執行的代登入連結,以提供使用者選擇所需服務。

(6) SSOM → 外部服務網站

SSOM 根據使用者選定的服務,向 SSOM 資料表取出登入該服務網站的帳號、密碼 進行解密後,執行跨網域代登入的動作。

(7) 使用者 → 外部服務網站

使用者與外部服務網站開始溝通,完成跨網域單一登入的動作。

若使用者已通過認證,再度登入本系統,則此過程將省去帳號/密碼的認證與角色的授 權,而此種狀況的運作流程共分六個步驟,以下也分別說明每一個步驟所交換的訊息內容,

圖4.8為已通過認證,再度登入系統的運作流程圖。

圖 4.7 已通過認證,再度登入系統之運作流程圖 (1) 使用者 → AM

使用者將前一次登入後所取得的cookie認證資料傳送給 AM , AM 依序檢查以下 項目:

cookie是否過期。

cookie中的IP位址是否與使用者來源IP相符。

cookie中資料是否遭到竄改。

接著利用加密金鑰 k 將session id解密,若session未過期,就根據session id 取得存放於伺服器的session值,並檢查此使用者身分是否合法。若使用者身分合 法,則依照存在session中的角色權限執行該使用者的請求。

(2) AM → AuM

AM 會將使用者登入成功或失敗的相關資訊記錄到 AuM 資料表中。

(3) AM → 使用者

AM 將登入成功訊息傳回給使用者,並將會面重導至系統服務頁面。

(4) 使用者 → SSOM

使用者向 SSOM 請求服務, SSOM 依據 Session 中的角色代碼,取得角色權限並 列出使用者可執行的代登入連結,以提供使用者選擇所需服務。

(5) SSOM → 外部服務網站

SSOM 根據使用者選定的服務,向 SSOM 資料表取出登入該服務網站的帳號、密碼 進行解密後,執行跨網域代登入的動作。

(6) 使用者 → 外部服務網站

使用者與外部服務網站開始溝通,完成跨網域單一登入的動作。

相關文件