首页   注册   登录
 beny2mor 最近的时间轴更新

beny2mor

V2EX 第 191972 号会员,加入于 2016-09-16 17:39:14 +08:00
今日活跃度排名 1467
beny2mor 最近回复了
"我还认为,我们睡觉的时候,就是他们从我们身上获取他们所需的时候" 楼主颠覆了现代的生物学。。。

好像国外有个协会是专门证明地球不是圆的....... 他们需要你
1 天前
回复了 TomVista 创建的主题 程序员 求推荐几本 JavaScript 书
前端 js 方面可以先看高程、《深入理解 ES6 》。 有时间再看《你不知道的 JS 》...

CSS 可以过下《 css secret 》,然后要不还是直接找些文章吧...

vue 用 vue-cli 好处,比如 组件能用单个文件? 热重载? 良好的项目结构? 打包? 各种 webpack 插件功能比如自动添加 css 的一些前缀?你能用 express 那用 vue-cli 应该不会有什么上手难度。

让领导给你 review 下代码,或者看网上一些项目的代码,或者你也可以把你的可公开项目放到 github 然后让别人帮你看下(注意话术,不让别人可能会回” 500 我接“之类).....
@beny2mor 好吧,前端退出。。。
security 也可以写测试的吧
@src112159 #15 啥, 哪里 logout 了
不知道惹。。

是完全没进入 AccessDecisionManager 吗。不过 AccessDecisionManager 好像需要先 setAuthenticated(true);才会进入。
![插入图片]( https://files.catbox.moe/4nve3e.jpg)

你没有设置 authenticationProvider 或 AccessDecisionManager,那么 authenticationEntryPoint 和 accessDeniedHandler 也不会生效。 你的代码好像就只有你有 filter 生效,并没有用到 security 的 Authentication 机制....
@src112159

你是没进入`myAccessDeniedHandler`而是进入了`unauthorizedHandler`吗。。

我对 security 的理解是这样的:

用户认证失败会进入 authenticationEntryPoint 用户认证失败指是的账号、密码对不上,或者 token 找不到用户之类的; 然后这一步是在`authenticationProvider`配置中发生的,如果配置的 AuthenticationProvider 返回 null 就是认证失败,返回 AbstractAuthenticationToken 则是通过。

用户没有权限会进入 accessDeniedHandler, 用户没权限是指能从 token 或账号密码找到用户,但是没有通过权限认证,比如#1 的 @PreAuthorize("hasRole('ROLE_CO')")注解; 这一步是在 accessDecisionManager 配置的,这里可能是一组 Voter。

filter 失败会进入会在 filter 中直接写错误的返回(`res.setStatus(403)`之类的)。

https://files.catbox.moe/4nve3e.jpg
先后顺序是: 先进入 filter,filter 的作用是设置简单的 Authentication ; 然后进入 authenticationProvider,这一步是判断用户是否合法,并补全 Authentication 信息;最后进入 AccessDecisionManager,这一步会根据补全的 Authentication 判断是否有权限。

————

我是看了一大堆的文章自己理解的,领导让我用 security,但他自己也没怎么用过。。运行起来效果和我想的一样。。
我好像理解错你的意思了?

你的登录页是指 security 的那个丑表单吗?
你是不是开启了 httpBasic
@src112159
你的意思是你在数据库配置了用户-资源权限表,然后要这个表决策是吧。可以实现 AuthenticationProvider 注入 grands,然后用`accessDecisionManager`决策。
但其实这和手动写个 filter 差不多。
http.exceptionHandling()
.authenticationEntryPoint
.accessDeniedHandler
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   619 人在线   最高记录 3821   ·  
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.1 · 12ms · UTC 20:14 · PVG 04:14 · LAX 12:14 · JFK 15:14
♥ Do have faith in what you're doing.
沪ICP备16043287号-1