So in Linux we have a concept of file permission. There are three classes: user, group, and others, and there are three types of permissions: read, write, and execute.
Now consider this. You are on a remote computer, you open a web browser, you access a static site on a (Linux) server, and the browser downloads the static files such as html files and image files from the server.
In this case, you did not login to the server with a user account. So how were you able to access the html files and image files? What "user" was used? Is it the "others" user? But how?
Or does file permission only works when files are accessed via shell?
file:///home/paul/SandBox/, in which case the file permissions are enforced in respect of the user who owns the browser process. If the browser is talking to a web server (whether local or remote, and whether the pages are dynamic or static) the browser has no idea of their origin. The OP specifically asks about a remote server, and asserts the files are "downloaded". That is a fallacy. The OP's Title also asks about shell, implying that permissions do not apply when processes open files themselves.