天天看點

用PythonPi實作門禁系統-權限管控

門禁系統的課程正在開發中:用PythonPi實作門禁系統

歡迎提出寶貴意見哦

對門禁系統來說,權限就是是否許可某人通過某門。從控制的角度來說,就是讀入一個卡号,決定是否開鎖或采取其它動作。

智能控制系統首先是一個資訊系統,資訊系統中的權限是對資訊資源的管控,按資訊流動的方向有兩種權限:

  • 根據通路者是否有權讀取資訊來決定是否允許資訊流出
  • 根據通路者是否有些操作資訊來決定是否接受資訊流入,這又包括了對資訊的删除、修改、新增,統一視為修改

而對于門禁系統來說,甚至是控制系統來說,基本上主要是對資訊修改(改變門的開關狀态、改變燈的開關狀态等等)進行管理,也就是通路者是否有權執行某些動作。

在資訊系統中,尤其是管理資訊系統中,角色是權限管理的核心概念,其約可等價于我們日常工作中的職位。我們可将職位視為由職權和職能組成,職權是對資源的通路或使用權限,職能是允許采取那些行動。因為行動對于資訊系統來說其實就是預設的消息發送,是以一個角色就可視為對一組資訊資源的通路權限的組合。

是以,一般在管理資訊系統中,不會直接對具體的個人進行權限定義(否則調整起來太麻煩而且容易出現疏忽),而是定義出各種各樣的角色,然後根據某人的職位将相應的角色映射到某人。一般來說,由于實際工作中所涉及的資源種類、數量繁多,具體從業人員的職能職權總是在不斷進行調整的,是以角色的管理是基于具體工作來展開的,即将某個具體流程的工作環節所需的職能職權設為一個角色,然後根據某人實際承擔了什麼樣的工作,就把相應的角色全部配置設定給他。

是以實際的管理系統中,看不到人(作為HR系統的管理目标除外),而是種種角色。人對系統來說,實際上就是一組角色的動态集合(随工作崗位的調整而調整,甚至是随臨時性工作的變動而變動)

有時還需要把角色進行層次性的組織,如技術部經理,由通常的經理角色和技術部獨有的技術決策角色組成,具體則包括如報帳審批、請假審批、出差審批等通常的經理職能,還包括了諸如合同技術條款審批、技術方案審批等技術決策職能。

類似的,在門禁系統中,也是先定義出一些預設的角色,将那些可通過的門綁定到相應的角色,然後再将具體的人綁定到不同的角色上,這就實作了某人可開某門的授權管理。

出于安全的考慮,安防系統的預設政策必須是非明确授權則不許可!

不過,一般的門禁系統和普通的管理系統還是有所不同的,由于一般的門禁系統中門數量不是很多,管理工作也多是由系統開通工程師或安保人員來完成的,是以一般的門禁系統将權限管控進行了很大的簡化,一般隻允許一個人隻能綁定一個角色。

PythonPi沒有這個限制

====================================================================================================

關注我的公衆号及時擷取推送的最新文章

用PythonPi實作門禁系統-權限管控