1. A method for selectively synchronizing data to a device by polling a server, comprising: applying initial policy data to the device via a policy engine; determining applicable device contexts based on the policy data; detecting the presence of an applicable device context based on at least one of a device state or event; determining a time to synchronize policy data with the server based on the detected device context; synchronizing policy data with the server at the determined time to generate updated policy data, wherein one or more aspects of synchronizing the policy data is secured via an external security module connected to the device, and wherein securing the one or more aspects of synchronizing the policy data comprises one or more of encrypting a request to the server, authenticating the device to the server, authenticating the server to the device, verifying the integrity of data received from the server, or verifying the context of the device; applying updated policy data to the device via the policy engine; and determining updated applicable device contexts based on the updated policy data, wherein communications with the server are encrypted by an encryption element within a trusted code zone of the device, and one or more aspects of the device context are verified by a verification element within the trusted code zone of the device.