認證授權
洗個澡想東想西 ...
Authentication (認證): Yes or No (是或不是),針對的對象是 人、或者資源。人的話通常有身份認證的問題,也就是用哪些資料可以代表這是你?常見的就是名字 + 身分證字號 + 生日 ... 等,生物識別也是一種方式,這是 #數位憑證 (Certificate) 的基本概念。但是重點都在判斷 是或者不是。
Authorization (授權) 是某人或某個系統,可以做哪些事?這些事跟 Domain (領域知識) 有關係。Domain 通常是系統裡的一堆功能 (Funtions) 與流程 (Process) 的集合概念,這些東西的行銷術語叫做 Feature (特別的有顏色,簡稱特色,代表有包裝過、潤飾過、唬爛過),通常一個 Feature 在不同的場景、不同的人,有不同的使用方式 (Use Case),所以把場景 (前提) + 人 + 使用方法,所行程排列組合弄成所謂的 User Story,最後產生價值、輸出,形成 #特徵能力,或稱 #領域知識。
所以 Authorization 的設計,與 Domain Know How 有直接關係,也會創造一些專有名詞 / 角色 / 服務。例如常見的 Issue Tracking (JIRA / Redmine / VSTS) 大概都會有 Reporter、Developer、Manager 的角色,這些角色實際是就是能夠執行特定功能,那些功能的集合就是一種授權概念。AWS 的授權機制 IAM 也是同樣概念,他同樣處理的是領域知識的功能集合體。
除了人的授權與領域,系統與系統的授權也是很常見的。例如現在系統架構,服務之間的對串,能否相互溝通,也是一種授權。
生活中常見的授權就是組織結構。人類組織的活動,本質上就是分工,分工可以依照 #技能 (Skills、Functions),也可以依照 #任務 (Mission) 分,這些分的基本概念也都要有清楚的領域知識、或者特徵能力。
為什麼我會扯到這裡來?
原始資料
- 發表時間:2020/02/26
- 原文連結