A method comprising: receiving a first request from a first unverified entity to instantiate a first instance of a first virtual machine, said first request defining a first set of one or more resources to be made available by a virtual machine server device to the first instance of the first virtual machine, said first request including first security information; validating the first request by verifying the first unverified entity using the first security information; accessing an authorization database, said authorization database identifying one or more resources, based on the first verified entity, that the first instance of the first virtual machine is authorized to use on the virtual machine server device, said authorization database defining one or more affinity-based restrictions for a multitenancy environment of the virtual machine server device; based on the one or more resources and the one or more affinity-based restrictions identified by the authorization database, determining a subset of the first set of one or more resources that exists on the virtual machine server device and is available to be provided by the virtual machine server device to the first instance of the first virtual machine; and responsive to validating the first request: instantiating the first instance of the first virtual machine with access to the subset of the first set of one or more resources; and receiving a second request to instantiate a second virtual machine on the virtual machine server device; and based on the one or more affinity-based restrictions identified by the authorization database, not granting access to instantiate the second virtual machine on the virtual machine server device. receiving a first request from a first unverified entity to instantiate a first instance of a first virtual machine, said first request defining a first set of one or more resources to be made available by a virtual machine server device to the first instance of the first virtual machine, said first request including first security information; validating the first request by verifying the first unverified entity using the first security information; accessing an authorization database, said authorization database identifying one or more resources, based on the first verified entity, that the first instance of the first virtual machine is authorized to use on the virtual machine server device, said authorization database defining one or more affinity-based restrictions for a multitenancy environment of the virtual machine server device; based on the one or more resources and the one or more affinity-based restrictions identified by the authorization database, determining a subset of the first set of one or more resources that exists on the virtual machine server device and is available to be provided by the virtual machine server device to the first instance of the first virtual machine; and responsive to validating the first request: instantiating the first instance of the first virtual machine with access to the subset of the first set of one or more resources; and receiving a second request to instantiate a second virtual machine on the virtual machine server device; and based on the one or more affinity-based restrictions identified by the authorization database, not granting access to instantiate the second virtual machine on the virtual machine server device.