SpringSecurity 我怕了

2021 年 8 月 16 日
 MIUIOS

最近项目用了 security 需要对接钉钉和企业微信的登录,看了下官方文档,在 5.2 之前需要引入一个 oauth 包,后面 5.2 需要引 ouah2-client 包,开开心心的引入了,才知道噩梦才开始
官方自带的配置文件使用 client_id 字段作为默认 appKey,但钉钉叫 appid 、、、需要单独配置一个 resolver 去替换
换好了,发起授权正常,轮到回调 code 了,默认的直接是直接把 code 码 post 到指定的网址,结果钉钉也不一样,需要签名,然后又配置一个 converter,
我现在犹如吃了屎一样难受,我直接自己写个应该已经好了也不至于浪费一天时间

总结一句话,如果要对接 oauth2,请直接避开官方提供的代码,直接手撸

10537 次点击
所在节点    Java
53 条回复
cwek
2021 年 8 月 16 日
没办法,中国和世界是不同的(摊手
leon0318
2021 年 8 月 16 日
@ifsclimbing 跳槽你就懂了,没啥公司用
meshell
2021 年 8 月 16 日
你接微信,QQ 登录也这样的,我有个项目也这样,这些魔改过的 oauth2 用这些通用的库接起来真难受。
wangxiaoaer
2021 年 8 月 16 日
@HiS #4 举个例子?
vjnjc
2021 年 8 月 16 日
楼主说的没错,我记得 security 里的 role 也很魔性,要一个固定的 prefix
unlimitedsola
2021 年 8 月 17 日
明明是钉钉不按规范实现 OAuth2, 不要甩到 Spring Security 上。
changdy
2021 年 8 月 17 日
借楼 提问 spring 上面 比较好的安全认证框架是什么?
security 涵盖了太多的内容 ,感觉也不是为了 restful 而生.
xuanbg
2021 年 8 月 17 日
@cwek 说得好像自己是羊带人似的。。。Spring Security 之屎,那是全球都是有口皆碑的
geekboy
2021 年 8 月 17 日
@changdy shiro
fpure
2021 年 8 月 17 日
我不太理解,像认证鉴权之类需求真的需要框架来帮我们实现吗,这不应该是业务系统的职责吗,Spring Security 有存在的必要吗?
huiyanpohundh123
2021 年 8 月 17 日
用 springsecurity 实现 jwt 发现自己只用到了 SpringContext 这个全局上下文获取用户令牌用 和 借用了 HTTPBasicAuthFilter 的思想
Oktfolio
2021 年 8 月 17 日
@geekboy Spring Security 比 shiro 好多了...不用 Spring Security 的 oauth2 不就好了...
@changdy RESTful 只是一种 web api 设计风格...
chocotan
2021 年 8 月 17 日
各家的 oauth2 都有些魔改,spring-security 难道要每个都适配一下?
spring-security 的 oauth2-client 和同样是 Spring-security 的 oauth2 server 配合起来还是不错的。
jorneyr
2021 年 8 月 17 日
@vjnjc ROLE_ 前缀坑惨了不少人
gitdoit
2021 年 8 月 17 日
要用 spring security,首先需要读源码,这就厉害了
Cbdy
2021 年 8 月 17 日
别用 Spring Security
Mithril
2021 年 8 月 17 日
@xxfye Identity 可比 Spring Security 好多了。
它属于那种一看就知道做的很烂然后你就根本不会去用的。
不至于先把你骗到坑里然后一锅端。
feelinglucky
2021 年 8 月 17 日
@Cbdy 那用啥?
gmywq0392
2021 年 8 月 17 日
老哥 如果是 OIDC 呢 最近也在做这个
Cbdy
2021 年 8 月 17 日
@feelinglucky 简单自己写一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/796071

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX