突然发现 deno 是个好东西

2020-09-17 15:28:58 +08:00
 nowx
deno 这个权限设计的太赞了,
有了这个权限设计,deno 某种程度象浏览器一样,
你信任浏览器,所以基本上你敢访问任何一个网站
你信任 deno,所以你可以用它运行任意脚本,因为你可以控制权限
python node.js 都做不到
大家以后写个什么工具之类的,可以考虑用 deno
3496 次点击
所在节点    程序员
18 条回复
musi
2020-09-17 15:42:56 +08:00
自己写的工具还要考虑权限?咋的,这是自己给自己搞破坏?
zhuweiyou
2020-09-17 15:47:59 +08:00
尬吹?
nowx
2020-09-17 15:56:41 +08:00
@musi 我说的是写个工具 然后分享出来 自己写当然不用考虑权限了
@zhuweiyou 我吹它干什么,最近刚好在网上找个工具用的体会
pythonee
2020-09-17 15:57:39 +08:00
可以控制哪些权限啊
nowx
2020-09-17 16:00:50 +08:00
@pythonee 指定文件夹读 /写 网络权限
murmur
2020-09-17 16:01:01 +08:00
举个例子,你在网上找到一个代码说帮你安装 php nginx 环境,跟你要 sudo,你给不给
nowx
2020-09-17 16:03:06 +08:00
我不该提 python node.js 吗 这 2 个我都在用啊 没必要非得站队啊
我 deno 也没学过,没用过 就是了解它有权限控制
nowx
2020-09-17 16:04:06 +08:00
@murmur 我肯定不给啊 或者审查代码
nowx
2020-09-17 16:06:00 +08:00
@murmur 很多时候工具不需要什么权限的 给一个自己的文件夹读写权限+网络足以了
whywhywhy
2020-09-17 16:27:54 +08:00
慢慢的“工具”就会需要全部权限,然后变成普遍现象,然后它就无效化了。。。

为什么会成为普遍现象?因为真正懂这些玩意的,占地球人口比例的少数中的少数。。。
coderxy
2020-09-17 16:30:48 +08:00
deno 可能以后会承担一部分类似于 php 原来的 wordpress 这种需求。像原来的 php 虚拟站点一样。
whywhywhy
2020-09-17 16:31:19 +08:00
现在就不少工具,告诉你,要你关杀毒软件,他们非常自信你会相信他是干净的。。

然后不关不给用,你关不关,大部分人关不关?

只要操作不是很复杂,大部分人都是关的,然而它真的安全么,鬼知道。

就像 Windows 很多程序根本不需要最高权限,但是人家就是要申请。。。
Jinnn
2020-09-17 16:31:47 +08:00
想起了一些 app 不给权限就用不了, 以后这些工具会不会也变成这样呢
nowx
2020-09-17 16:41:13 +08:00
@whywhywhy 这是一个问题 类似现在手机 app 不给权限不让用
但是也有很多好的工具,权限尽可能的少用,这样的好工具应该让它的优势体现出来,让它在市场竞争中多一点优势

@coderxy 我也没深入了解 deno 只是觉得这个权限设计太好了
nowx
2020-09-17 16:43:38 +08:00
@Jinnn 那它不就是目的不纯吗?至少暴露出来了
soulmt
2020-09-17 16:48:25 +08:00
@nowx 读写在你登陆服务器的时候就给你安排的明明白白的。
libook
2020-09-17 17:09:32 +08:00
所以 deno 的定位是个 sandbox,不是一个 runtime,你对比的 python 和 node 都是 runtime,安全方面可以靠 Linux 权限机制和防火墙来搞定,套个容器也就是个 sandbox 环境了,而且即便你用了 deno 也都离不了这些安全策略的。

以后要是用 deno 开发服务器端应用,跟 node 的区别基本上就是得多一步开权限的过程,权限是基于能力而不是基于功能的,所以你只要开了网络权限就无法靠着权限控制机制抵御任何网络攻击了。

相应的,不管在浏览器端还是在服务器端,如果真的有运行任意脚本的需求(比如算法刷题网站或编程学习网站等),可以把脚本扔到 deno 环境里执行,将运行的输出再拿到安全环境里使用。
虽然容器也能做到这一点,但一方面 deno 会更轻,另一方面 deno 能跑在浏览器上。
wdlth
2020-09-17 23:43:06 +08:00
万一出现了 deno 沙盒逃逸……

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

https://www.v2ex.com/t/707948

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

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

© 2021 V2EX