1. A computer within a network of computers which interact by passing messages between them in order to perform a distributed application, said computer being arranged in operation to: i) provide two or more virtual machines, each with its own access control mechanism; ii) in a local-component-hosting virtual machine, execute one or more local components of the distributed application; iii) intercept messages for or from local components of said distributed application; iv) on intercepting a message, execute, in a message-handling virtual machine, a message handling program to perform one or more security actions on each intercepted message.