V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zpf124  ›  全部回复第 9 页 / 共 69 页
回复总数  1379
1 ... 5  6  7  8  9  10  11  12  13  14 ... 69  
@baiyi 你说的对,还是你理解深入,给你点赞
@baiyi 这东西不是百度谷歌随便一搜就找得到么

https://www.ruanyifeng.com/blog/2011/09/restful.html

https://datatracker.ietf.org/doc/html/rfc4918


restful 作者只是提了一个想法,但没有形成什么明确的规则协议,所以关于 restful 的细节大家各有各的理解,因为最初的作者就是论文里笼统一说,不像 graohQL 。

而 WebDAV ,这玩意出现的不算太晚,但最初人家都是自己客户端和服务通信的,只是基于 http 协议了而已,这样不安客户端的用户也能查看,它和 gRPC 一样,属于特定领域在 http 上实现的私有协议。
WEB 主流世界用不上他们这功能自然支持情况很差,尤其是后端,这是 spring 官方有我提到的那个拦截器的原因,因为在 restful 火起来的同时期的 tomca 7 吧还是 8 都还不支持 PUT 请求。
楼主的问题我们也遇到过,但你们的 QA 估计就只会背八股文,知其然不知其所以然,实际上是 WebDAV(对小白)不安全。
restful 是 作者发现人家 WebDAV 搞的这套 http method 很符合他的想法,所以复用(偷)了他们定义的 http method 而已,仅此而已,实际两者没什么关系。



而安测会将这个提示为风险的实际原因是针对小白的规则拦截导致被 AOE ,根本原因是有些小白用 IIS 或者其他一键脚本开启了 WebDAV 服务但没做鉴权,效果就和允许匿名的 FTP 服务一样,导致文件被脚本小子加密或者删除。


我们是某个合作的甲方人家找的安测出的报告里包含 “中风险漏洞: 使用 PUT ,http method”, 不过人家给的报告还包含里处理建议/参考, “打开服务设置,选择 IIS 服务器,关闭 WebDAV 服务”,所以我们一看就明白了

另外我们的要求只是高危漏洞必须处理,其他的可以商量,所以我们就解释说明了一下就 ok 了,如果你们的安测是甲方
的而且道理说不通,要求必须按规定,按他们原有的测试脚本,那你只能投降了。



-------------------------------

最后如果楼主只能改了,那也不算非常麻烦,spring 有个拦截器可以把 POST( "xxx/api", {"_method":"put"}) 转换识别为 put 请求,这样整体后端代码就不用改了。
前端呢也可以将 http 工具再封装一下, 把其他 method 改成 post + _method 参数的方式。
313 天前
回复了 liberty1900 创建的主题 程序员 高中生这个水平可太顶了
那些高考大省的人觉得卷、觉得贫困地区分数有待不公平我还能理解。
但这个论坛里高赞的评论里一边高歌老美快乐教育牛逼,一边对 50%高考分流咬牙切齿让我感到很魔幻。
@vtgoal 主要搞得就是大公司的发行版,同行拿起我的筷子来抢我的饭碗,小公司还有个人你修改优化了一个半个软件,人家地主家大业大还真不一定看的上。
我一直很好奇 楼主提到的 2 ,红帽的限制分发到底是怎么办到的,能直接禁用别人构建还不触犯 GPL 协议。然后翻看了半天大家的讨论还有 外国用户的说法,最终结果确实如楼主所说,但中间原理完全不一致。

由于 GPL 限制, 红帽必须给客户二进制的同时给客户源码, 同时无法限制客户使用源码修改和重新构建,所以实际上客户是可以自行编译构建再分发的,它做不到禁止客户构建。
但是,红帽的销售协议和 GPL 是不冲突的, 它可以规定当你通过源码重新构建并提供给其他用户后,你就违反了红帽的销售协议,你依然拥有当前版本的二进制和源码,但红帽的售后支持(服务)会自动终止,你将无权使用后续更新的软件和源码。

也就是说如果 rocky 购买了 RHEL 9.0.17 版本的授权, 然后通过源代码构建后, 这是意味着当前销售合同中止作废,rocky 再登录 redhat 官网只能下载,9.0.17 版本, 如果下载 9.1.45 这类版本的二进制和源码则属于盗版行为,redhat 就可以起诉你。
所以要么你从你购买的哪个版本的源码开始继续自行维护更新兼容,要么每次升级你都来买一份再分发给别人。

有一说一操作挺骚,但确实好像和 GPL 不冲突...
讲道理的基础是你讲的东西是对的,并且你有能力转换成孩子能听懂的例子。

所以讲道理最好还是能简单进行换位思考的,比如:
“假如明天哥哥来咱们家作客的时候也像你一样抱着人家的玩具要带走,你说爸爸妈妈该送给你的哥哥吗?”
而不是,
“假如这 100 块零花钱是给你哥哥的,他就会拿去买美术书学画画,而你只会买玩具车,学学你哥哥,认真学习才是孩子真正该干的正事”

并且你自己也需要是个言行一致的人, 你开车的时候说“假如我是路上这个人,我一定不像他这么瞎,不懂得躲车”,然后你走在路上则变成了,“这些傻逼司机连礼让行人都不懂,真尼玛没素质”。


最后,还有不少人说的 “讲道理” 是和 “父母独断转型不考虑孩子感受意见” 对应的。
对于这种事,也是需要分事情以及考虑表达方法的,
错误的表达:
“xx ,爸爸妈妈想给你添个弟弟妹妹好不好啊”
“xx ,我们家是买 suv 好还是 mpv 啊”

正确的表达:
“xx ,你觉得爸爸这样做 xx 对不对”
为人处世

至于要不要与人为善,要不要圆滑,要不要用城府心机,这是个人选择。
但即便不喜欢虚与委蛇也应该是心如明镜,而不是一窍不通当愣头青。

要像 电视剧 1566 里的海瑞一样, 是懂但不屑于用, 而不是被人当冤大头,遇上和你玩心机的也能解决。
大部分都是有些不景气了,但 it 行业因为之前太热大家都往里涌,泡沫更多,所以显得更不景气。
1 ... 5  6  7  8  9  10  11  12  13  14 ... 69  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2244 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 04:35 · PVG 12:35 · LAX 21:35 · JFK 00:35
Developed with CodeLauncher
♥ Do have faith in what you're doing.