1. A method comprising: receiving, by a security software service platform executing on a first portion of a plurality of computing resources provided by a distributed computing system, a plurality of network security software components that have been decoupled from hardware components of a plurality of network security devices, wherein the plurality of network security software components provide, at least in part, a plurality of security services capable of protecting a plurality of assets associated with a customer platform; extending, by the security software service platform, a virtual machine creation template to incorporate access to the plurality of network security software components; receiving, by the security software service platform, a virtual machine configuration from the customer platform, wherein the virtual machine configuration specifies a first asset associated with the customer platform and having a first set of security requirements, a second asset associated with the customer platform and having a second set of security requirements, a first security service of the plurality of security services to protect the first asset in accordance with the first set of security requirements, and a second security service of the plurality of security services to protect the second asset in accordance with the second set of security requirements; and deploying, by the security software service platform, a virtual machine on a second portion of the plurality of computing resources provided by the distributed computing system, wherein the virtual machine is configured in accordance with the virtual machine configuration to provide the first security service of the plurality of security services for the first asset associated with the customer platform and to provide the second security service of the plurality of security services for the second asset associated with the customer platform.