转:权限管理——用户认证和用户授权
轉自:?https://blog.csdn.net/xdd19910505/article/details/51926540?
?
??因為做了權限的項目經理,so,惡補一下一個權限框架:shiro。其實作為框架首要目標是易于使用和理解。安全有時候是很復雜的,甚至是痛苦的,但框架沒有必要這樣。框架應該盡可能掩蓋復雜的地方,露出一個干凈而直觀的API,來簡化開發人員在使他們的應用程序安全上的努力。
? ? ? ? ? ??Apche Shiro就是一個強大而靈活的開源安全框架,它干凈利落地處理身份認證,授權,企業會話管理和加密。說到Shiro,就要說一下什么是權限管理。權限管理實現對用戶訪問系統的控制,按照安全規則或者安全策略控制用戶可以訪問而且只能訪問自己被授權的資源。權限管理包括用戶認證和授權兩部分。
?
用戶認證
? ? ? ? ? ??其實大多數系統都會有用戶認證,因為大多數系統都有用戶的存在,有用戶使用系統就要登錄。通常我們使用的用戶認證也就是通過驗證用戶名和密碼是否正確。或者再常用的是使用指紋打卡機。系統驗證了用戶身份的合法性,用戶就可訪問系統的資源。但是想要不同用戶有資源,就引出了用戶授權。
?
關鍵對象
? ? ? ? ? ??Subject:主題,可以使用戶,也可能是程序,都要去訪問系統的資源,系統需要對subject進行身份認證。
? ? ? ? ? ??principal:身份信息,通常是唯一的,一個主題還有多個身份信息,單都有一個主身份信息(Primary Principal)。
? ? ? ? ? ??Credential:憑證信息,可以是密碼、證書、指紋。
?
用戶認證流程
? ? ? ? ? ? ? ??
?
? ? ? ? ? ??其實用戶認證,就是主體在進行身份認證時需要提供身份信息和憑證信息。
?
用戶授權
? ? ? ? ? ??用戶授權就是對用戶所能訪問的資源進程控制。授權過程可以理解為:who對what進行how操作。
?
關鍵對象
?
? ? ? ? ? ??who:主題,即上文的subject
? ? ? ? ? ??what:資源,resource,subject必須具備資源的訪問權限才可訪問資源。
? ? ? ? ? ??how:權限/許可permission,針對資源的權限或許可,subject具有permission訪問資源,如何訪問需要定義permission。
?
用戶授權流程
? ? ? ? ? ??
? ? ? ? ? ??
? ? ? ? ? ??其實,用戶認證就是在用戶登錄的時候認證用戶是否存在,密碼是否正確。在用戶登錄之后是什么樣子,就要靠授權了,首先給不同的用戶分配不同的角色,然后給不同的角色授權不同的資源,不同的用戶也就有了不同的權限,即可使用或者可看到的資源就會因人因角色而異了。
總結
以上是生活随笔為你收集整理的转:权限管理——用户认证和用户授权的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: kafka 学习 非常详细的经典教程
 - 下一篇: cgx是什么意思网络用语 cgx是什么意