权限管理简介

权限管理属于系统安全的范畴,是实现对用户访问系统的控制,可以按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。

权限管理包括户身份认证和授权两部分,简称认证授权。对于需要访问控制的资源用户首先经过身份认证,认证通过后用户具有该资源的访问权限方可访问。

一、认证流程

关键术语:

  1. Subject:主体(被要求认证和授权管理的主体)

           访问系统的用户,主体可以是用户、程序等,进行认证的都称为主体;

  2. Principal:身份信息

           是主体(subject)进行身份认证的标识,标识必须具有唯一性,如用户名、手机号、邮箱地址等。一个主体可以有多个身份,但是必须有一个主身份(Primary Principal)

3.credential:凭证信息

       是只有主体自己知道的安全信息,如密码、证书等。

二、授权流程

关键术语:

授权一般指允许who(Subject)对what(Resource)执行how(Permission)操作。

  1. Resource:系统中的资源,一般会对应一个Url,这个url的表现一般为菜单。
  2. Permission:对资源的访问标识(例如user:add,user:update,user:delete,user:view)

主体,资源,权限在权限管理系统中通常会划分为不同的模块,例如其描述图如下:



 

你可能感兴趣的:(JavaEE,java,shiro)