一、权限概述:
1、什么是权限
①权限管理:一般指根据系统设置的安全策略或者安全规则,用户可以访问而且只能访问自己被授权的资源,不多不少。权限管理几乎出现在任何系统里面,只要有用户和密码的系统。
②权限管理分类:
管理员有增删改查权限,普通用户只有查询权限。
管理员可以看到所有员工信息,但是员工只能看到自己的信息。
2、认证概念
2.1什么是认证
身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方式是系统通过核对用户输入的用户名和密码,看其是否与系统中存储的该用户的用户名和密码一致,来判断用户身份是否正确。例如:密码登录,手机短信验证、三方授权等。
2.2认证流程
2.3关键对象
上边的流程图中需要理解以下关键对象:
①Subject:主体:访问系统的用户,主体可以是用户、程序等,进行认证的都称为主体;
②Principal:身份信息是主体(subject)进行身份认证的标识,标识必须具有唯一性,如用户名、手机号、邮箱地址等,一个主体可以有多个身份,但是必须有一个主身份(Primary Principal)。
③credential:凭证信息:是只有主体自己知道的安全信息,如密码、证书等。
3、授权概念
3.1什么是授权
①授权,即访问控制,控制谁能访问哪些资源。主体进行身份认证后,系统会为其分配对应的权限,当访问资源时,会校验其是否有访问此资源的权限。
②4个对象:
- 用户对象user:当前操作的用户、程序。
- 资源对象resource:当前被访问的对象。
- 角色对象role:一组"权限操作许可权"的集合。
- 权限对象permission:权限操作许可权。
3.2授权流程