簡體   English   中英

身份驗證和授權服務的類圖

[英]Class Diagram for Authentication and Authorization Service

這是場景

系統有兩個主要用戶,SYSTEM USER 和END USER。 最終用戶進一步分為兩個用戶,名為 CLIENT USER 和 INTERNET USER,客戶端用戶關聯到數據庫可訪問帳戶,而 Internet 用戶則不是。

所有的用戶被划分為不同的角色,每個角色都與一組可訪問的模塊相關聯,不同的模塊包含不同的功能,如查看、添加、編輯和刪除功能。

不同的角色可能與模塊中的不同功能相關聯。 示例超級管理員角色可以在用戶訪問模塊中訪問和添加編輯刪除功能,而高級用戶只能訪問或查看它。

當用戶登錄時,安全服務將使用用戶名和密碼對用戶進行身份驗證。 如果通過身份驗證,它將查找與用戶關聯的角色並在屏幕上顯示授予的模塊供用戶選擇訪問。


我創建了一個簡單的類圖,其中包含每個類的字段或屬性,我只是不確定它是否正確,例如實現的連接器或關系、每個類的基數和方法,我只輸入了一個類的方法和即用於登錄 (login()) 方法。

在此處輸入圖片說明

我可以看到您的模型有一些問題:

  • 那些填充的箭頭應該是什么? 如果您的意思是繼承,那么您必須使用未填充的箭頭。
  • LOGIN 也是用戶嗎? 這有什么奇怪的。 我希望 login() 是一個以用戶名和密碼作為參數的操作,不一定是它自己的一個類,我可能不會用屬性 UserName 和 Password 對其進行建模。
  • 如果 USER 的所有子類都有用戶名和密碼。 你不認為你應該在類 USER 上定義那些嗎?
  • USER 和 END USER 應該是具體的還是抽象的? 似乎他們可能需要抽象。
  • 類通常以單數形式命名。 所以寧可使用 ROLE 而不是 ROLES
  • roleID 在 USER 類上做什么? 這似乎是錯誤的。 如果您使用 UML,則不要在您的類上放置外鍵字段。 RoleID 是 ROLE 的一個屬性,不應在 USER 上。
  • 為什么需要所有這些 ID 屬性? 如果您在邏輯級別上建模,您可以假設每個類都有一個唯一的標識,並且您無需擔心該標識的技術實現(字符串、GUID 等)。 另一方面,如果您正在制作技術模型,那么您會遺漏大約 70% 的細節。

我會做這樣的事情: 在此處輸入圖片說明

你得到可以登錄的用戶和不同角色的用戶,當你執行一個函數(重命名的服務)時,服務獲取它的模塊並請求模塊檢查會話用戶是否有權執行服務。

這對你有幫助嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM