How would you do this in a native fashion? I mean I believe you (chroot jail I think it was?), but not everyone runs on *nix systems, and perhaps more importantly, not all Node developers know or want to know much about the underlying operating system. Which is to their detriment, of course, but a lot of people are "stuck" in their ecosystem. This is arguably even worse in the Java ecosystem, but it's considered a selling point (write once run anywhere on the JVM, etc).

> How would you do this in a native fashion?

I dunno how GP would do it, but I run a service (web app written in Go) under a specific user and lock-down what that user can read and write on the FS.

For networking, though, that's a different issue.

> but not everyone runs on *nix systems

Meaning Windows? It also has file system permissons on an OS level that are well-tested and reliable.

> not all Node developers know or want to know much about the underlying operating system

Thing is, they are likely to not feel up for understanding this feature either, nor write their code to play well with it.

And if they at some point do want to take system permissions seriously, they'll find it infinitely easier to work with the OS.

So a separate user for every application I run?

Just locally, that seems like a huge pain in the ass... At least you can suggest containers which has an easier interface around it generally speaking.

I didn't know Windows has that feature, someone please explain