shiro中有两个比较重要的流程,一个是认证流程,一个是授权流程。
一、认证流程
Authentication是指身份验证的过程,即证明一个用户实际上是不是他们所说的他们是谁。也就是用户提交身份和凭证给shiro,然后来判断他们是否和可以登录系统。
1.概念
Principals(身份):是subject的标识属性,比如:提交的用户名
Credenticals(凭证):身份证明,比如:登录提供的密码。
2.认证步骤
(1)搜集Subject提交的Principals(身份)和Credenticals(凭证)进行身份验证
(2)提交Principals(身份)和Credenticlas(凭证)进行身份验证。
(3)提交success,可以访问;else重新进行身份验证或阻止访问。
3.认证样例
(1)shiro-permission.int文件
# 用户
[users]
# 用户zhang的密码是123,此用户具有role1和role2两个角色
zhangshan=123,role1,role2,role3
wang=123,role2
# 权限
# 角色role1 对资源user的create/update权限。
role1=user:create,user:update
# 角色role2对资源具有create/delete权限
role2=user:create,user:delete
# 角色role3对资源user拥有create