V2EX a1528zhang 的所有回复 第 1 页 / 共 2 页
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX    a1528zhang    全部回复第 1 页 / 共 2 页
回复总数  25
1  2  
301 天前
回复了 BlackHole1 创建的主题 分享创造 一款全新的工作流 IDE
@cheese app 内置了运行环境,这样分享代码的时候用 app 可以直接跑起来,不会有各种环境问题。
而且 app 内的编程体验也基本与 vscode 差不多
@Dlin 我理解 access token 用来访问的是授权方(比如 github 的 api ),我这里其实需要的是访问我们自己应用的后端,只需要一个登录成功的证明就行了
@fredweili 是的,其实就是 PKCE 了,但是 OAuth 签发的 Token 应该是无法主动失效的: https://auth0.com/docs/secure/tokens/revoke-tokens

不过我们重新获取 refresh Token 后,会让旧的 refresh Token 失效;由于我自己签算的 Token 是使用 ID Token + refresh Token, 也就达到了让前端 Token 失效的效果
@cat1879 我参考的参考他们的文档 https://auth0.com/docs/secure/tokens/refresh-tokens
1. refresh token 的时效性一般来说是比较长的,但是 id 和 access token 的时效会很短,但是如果我使用 refresh token rotate 机制的话 refresh token 的存在时间也会比较短
2. 我这边 token 只在第登录验证的时候会使用 appid 和 seceret 交互,但是之后可以使用 refresh token 进行刷新,就不需要 secret 了
3. 确实理论上我应该把 token 全部放在后端,然后我的后端再做一个单独的授权 token 给我的前端。但是这个行为本质上是给前端一个唯一的身份证明,所以我选择吧 id token 加密后生成一个新的 token 来承担这个功能,这样我也不用做签算机制了,少点工作。
@patrickyoung 感谢 我再去翻一下
@patrickyoung 是的,我把 ID Token 加密后作为身份认证,来访问我们自己的后端 api ,并没有访问授权方(比如 github )的 api 。所以应该不涉及 api 的调用,如果 我不用 ID Token 那么我也要自己生成一个 Token 给用户来证明他已经登录了。

所以当这个 token 被盗取了后,攻击者和用户都可以使用同一个 token 来调用我们后端服务 api ,然后我们的 api 中包含一个刷新 token 的 api ,所以攻击者和用户就都能不断获取新的 token 来保持永久登录。
@anonydmer 是的,我理解 access token 是用于访问我们申请权限的服务的 api ,比如我们接入的 github 的账号,然后我们拿到的 access token 也仅用于访问 github 的 api 。

ID Token 我是用作一个登录凭证,证明这个用户登录成功了,那么他可以调用我们服务端的 api 而不是 github 的 api 。所以我理解 ID Token 我应该没有用于请求,而是只用于身份证明。

那么这个身份证明被盗用后,我们后端是否有手段可以让这个特定的身份证明失效呢?
@iyiluo 嗯现在看来设备 ip 绑定是比较保险的做法,以后会做。因为我们做了 token 刷新的机制所以定期失效的手段没用了
@cheng6563 这个我考虑过,但是如果被窃的用户长时间不登录就没法挤掉
@javalaw2010 明白了,感谢解答。基本的安全策略比如 https ,http only 的 cookies 等我们还是实现了的。
同时我们的 refresh token 是每用一次就会更新一个新的存在后端。

风控手段是必须的我们准备以后会做。

其实我就是担心设备被黑客控制了以后,等于是用户账号永久失窃,而且连防御的手段都没有(除了刷新 client 的 app id 和 secret )。因为黑客可以用 token 不断刷新有效期。

主要是刚接触这个领域,怕还有更好的实现方式我不知道。
@wonderfulcxm 那这样的话我们一个终端用户的 token 泄露就会导致所有的终端用户都需要重新登录一遍才行了。
@MillaMaxwell 我们用了 refresh token rotate 的机制,目的是为了实现免登录,会导致 refresh token 会不断更新,这样 refresh token 就总是会有一个有效的
@patrickyoung 文档翻了很多次了,可能我理解有误,没找到能解答疑问的内容
@linzyjx 一般来说 refresh token 的有效期在几个月,而且如果我使用 refresh token rotate 的机制,会导致后端总是会存放一个有效的 refresh token ,这样如果攻击者用盗来的 ID token 调用我后端的 api 来刷新 token ,就会一直有权限了
@mikeSbV2 我个人是相对于开车更喜欢坐地铁,地铁可以看一下东西,开车是纯纯浪费时间。
上下班地铁的话等于你有三个小时的空闲时间,拿来玩游戏看书学习都可以。
开车等于是一天直接少了两个小时,遇到点交通问题更蛋疼。

而且电车在没有固定车位的情况下其实挺难受,共享充电桩不一定好找。

我个人选择地铁通勤加回家住。这样总的来说还能一个月少个两千多支出
房贷还了的感觉一身轻松,车子现在发展很快,等等永远不亏的
2023-11-07 12:09:34 +08:00
回复了 eggt 创建的主题 生活 现在买个床入门的就已经上万的价格了吗?
@pass9960 我的知识库都是 3 年前的了,现在可能有点过时。
一点选床的心得就是 1.坐上去摇一摇,然后摇一摇床头,看看是不是坚固稳定,有异响的 pass 。2.床垫下面的龙骨木头比较厚实比较密的好,但是也不能要一整块的,不透气。3. 床头最好造型简单点,不容易积灰方便打理。4. 检查各螺丝或者榫卯的地方是不是有裂纹

一点选床垫的心得 1. 软硬看自己的喜好,乳胶越厚越软,建议还是要买弹簧,别买纯乳胶,支撑性不够 2. 最好选独立袋装弹簧,核心是床上有多人的时候一个人在动另一个人感觉不到,这对于起夜不打扰人很重要。当然现在可能有新的技术,总之搞明白核心需求就行。

床垫还是得自己去店里躺一躺,要不然不知道喜欢什么软度,建议去睡一睡特别贵的床垫,如果感觉没什么特别的地方就证明你买个千来块的就行了,别花冤枉钱。把型号记下来在网上买。

牌子我就不推荐了,楼里面有推荐金属的有推荐木头的,这几年变化也挺大,这些东西都是要高频用很多年的,最好还是亲身体验过后再买。
2023-11-07 09:56:13 +08:00
回复了 eggt 创建的主题 生活 现在买个床入门的就已经上万的价格了吗?
这个我有点心得,我选的都是实木的家具,床我买的源氏木语 1500 左右,至今 3 年多没有异响不摇晃,这是我在线上对比价格后再到线下实体店体验过制作品质后选的,同样林氏木业我也去过,不过当时去他们门店的时候发现木床甚至有裂痕,所以直接 pass 。其他小牌子和本地牌子的一般来说质量会更好,木头的坚硬程度和厚实程度比起源氏木语的都要高一个档次,当然价格也是,普遍在 3000 到 5000 左右,部分高端的在一万以上,当然这种的谈价空间也大,那就看自己本事了。

至于床垫我也是在各国内外厂商的门店都睡过,从一千到 两三万的床垫,从体感上来说独立弹簧的体验对普通人来说就很够用了,两三万的体验确实更好,但是更好的那一部分我觉得不至于让我套那么多钱来买。最终我在网上下单了门店同款的喜临门的床垫,1700 左右,也是到现在没有异常,睡起来合适。


建议不要在家具城直接定,去体验一下就够,线上线下的差价非常大,建议网上买。
2023-08-29 10:35:18 +08:00
回复了 leeolsen 创建的主题 分享发现 30 岁从大厂裸辞全家搬往英国的故事(结)
写得很好,看完了很大的感受是:
这些老牌发达国家底子是真的厚实
笑死,这些人脑子里面:
画面暗点,死人骷髅多点 = 魂 like
中国的东西好了 = 战狼
建议多读书多看报
1  2  
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2904 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 438ms UTC 14:06 PVG 22:06 LAX 06:06 JFK 09:06
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86