Overview of security and memory management?
Hi all,
I've been looking around the documentation for an explanation of how Sage is able to sandbox user code to prevent unauthorized access to the system the platform is being hosted on. Given that Sage Notebook is deployed in production on a public server, how does the platform isolate user environments/worksheets? Furthermore, how does Sage manage memory on a per-worksheet basis?
I'd appreciate any insight from those who have deployed Sage in a production environment, either internal or external to an organization. +5 pts if you have a sys admin background!
Thanks!
(For what it's worth, I've been going through the thesis titled "Securing the Sage Notebook", but I'd also like some more practical input. I'll be scrounging through the dev discussion threads for an answer as well and will follow up if I come across any good explanations.)
I think this is a very interesting question. Setting up a secure sage server seemed always like an advanced sysadmin task to me, especially since the OS commands are available via python. So I figured the best setup would be a preconfigured Virtual Machine which includes such a server. Using the wikki instructions from Jason Grout I created such an image, but I am still not sure about the security implications (e.g. in a school network) - Info & Download of the Server image: http://boxen.math.washington.edu/home/emil/doc/html/en/relase-notes-slvms-b.htm.htm - Maybe you can use the VM image for some practical experiments ...