第七课:Web 授权与认证

简述 web.xml 中 listener, filter, servlet 的作用。

  • servlet是一种运行服务器端的Java应用程序,具有独立于平台和协议的特性,并且可以动态的生成web页面,它工作在客户端请求与服务器响应的中间层。

  • filter是一个可以复用的代码片段,可以用来转换HTTP请求、响应和头信息。Filter不像Servlet,它不能产生一个请求或者响应,它只是修改对某一资源的请求,或者修改从某一的响应。

  • listener:监听器,从字面上可以看出listener主要用来监听只用。通过listener可以监听web服务器中某一个执行动作,并根据其要求作出相应的响应。

参考资料:
http://blog.csdn.net/netdevgirl/article/details/51483273

查阅 httpSession 和 httpCookie 的API,他们是接口?对象?

httpSession是一个接口。提供一个方式去识别有多个请求的用户或者储存用户信息。

httpCookie是一个对象,用来表示一个 http cookie,该 cookie 带有服务器和用户代理之间的状态信息。广泛采用 Cookie 来创建有状态 (stateful) 会话。

用自己的话,简述 “Check Authentication using Spring MVC and Handler Interceptor” 程序认证过程

先预处理,保证URL不会出现重定向循环。然后使用

LoginForm userData = (LoginForm) request.getSession().getAttribute("LOGGEDIN_USER");

得到现在储存的用户信息。如果userData为null,说明没有用户被认证,就返回false,然后回到登录页面。否则就返回true。

用案例简述 Shiro 认证与授权的过程。

认证过程:

  1. 首先调用 Subject.login(token)进行登录,其会自动委托给 SecurityManager,调用之前 必须通过 SecurityUtils. setSecurityManager()设置;

  2. SecurityManager 负责真正的身份验证逻辑;它会委托给 Authenticator 进行身份验证;

  3. Authenticator 才是真正的身份验证者,Shiro API 中核心的身份认证入口点,此处可以 自定义插入自己的实现

  4. Authenticator 可能会委托给相应的 AuthenticationStrategy 进行 Realm 身份验证

  5. Authenticator 会把相应的 token 传入 Realm,从 Realm 获取身份验证信息,如果没有 返回/抛出异常表示身份验证失败了。此处可以配置多个 Realm,将按照相应的顺序及策略 进行访问。

授权过程:

授权过程在shiro.ini中配置。例如如果在配置文件中这样写:

[users]
zs=123, role1,role2
ls=111, role1

[roles]
role1=user:create,user:update
role2=user:create,user:delete

那么,结果就是,zs拥有role1和role2的角色,因此他的权限有create, update和delete。而ls只拥有role1的权限,他就不能delete了。同时,zs可以访问role1和role2的URL,而ls只能访问role1的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,367评论 11 349
  • Web 授权与认证 实验内容 1. 简述 web.xml 中 listener, filter, servlet ...
    OREOs阅读 1,209评论 0 0
  • 这部分主要是与Java Web和Web Service相关的面试题。 96、阐述Servlet和CGI的区别? 答...
    杂货铺老板阅读 1,425评论 0 10
  • 构建一个互联网应用,权限校验管理是很重要的安全措施,这其中主要包含: 认证 - 用户身份识别,即登录 授权 - 访...
    zhuke阅读 3,559评论 0 30
  • 每天早上醒来时离闹钟响还有5分钟 懒腰后拉开窗帘喝杯柠檬水迎着阳光洗漱 换好搭配好的衣服 吃个健康清淡的早饭 画个...
    多心07阅读 192评论 0 0