1. A computer-implemented method for allowing a user to control access to an interactive television application, the method comprising, performing with at least one computer processor: detecting an interactive television event for an interactive television application destined for a user's device; generating a query based on the interactive television application event to determine whether to execute the interactive television application; determining whether a preference database containing one or more user preferences is locally stored; determining a user preference by checking the query against a non-local preference database in response to the determining indicating the preference database is not locally stored and checking the query against a local preference database in response to the determining indicating the preference database is locally stored; and determining at least one of whether the interactive television application event is allowed, disallowed, or conditionally allowed to be executed on the user's device based on the determined user preference, wherein the interactive television application will not be sent to the user's device when it is determined that the interactive television application event is disallowed.