3 ms·
> This is isn't a problem with PHP. I'd argue it is, since PHP's common runtimes expect you to cross user boundaries all the time: - as Apache2 module, PHP ru
by creshal 3y ago
> This is isn't a problem with PHP.
I'd argue it is, since PHP's common runtimes expect you to cross user boundaries all the time:
- as Apache2 module, PHP runs as the same user as the web server, so the web server needs to have write access across all tenants.
- FPM recommends running as a TCP socket, letting tenants freely access other tenants' PHP processes. Unix sockets can solve that issue with carefully permissions, but the documentation barely mentions that use case.
Containers are the minimum security boundary.
- charcircuit 3y ago>since PHP's common runtimes expect you to cross user boundaries all the time: No they don't. Just because a default installation is single tenant that doesn't mean shared hosts can't configure it to be multitenant. It is simple to set up FPM to have a pool for each site use its designated user and have it chroot. >Containers are the minimum security boundary. Whose security boundary is also the kernel. It's not that much different.
- creshal 3y ago> Whose security boundary is also the kernel. It's not that much different. That's the whole point: If you have to chroot/container everything because it violates regular permission models too much, PHP is not multi-tenant capable by itself.