1. A method for software activation and revalidation, the method comprising: collecting machine configuration information from a machine on which a software application has been at least partially installed; sending the machine configuration information and a product key to an activation server; applying, at the activation server, activation rules stored at the activation server to determine whether the product key is valid for the machine configuration information, the activation rules having been updated since the release of the software application to account for new or updated software or hardware with which the software application is configured to be employed; if the product key is valid for the machine configuration information, activating the software application by sending, from the activation server to the machine, license data that authorizes access to the software application and that contains the updated activation rules; and periodically applying, at the machine, the updated activation rules contained in the license data to newly-collected machine configuration information from the machine to determine whether the product key remains valid for the newly-collected machine configuration information and, if the product key remains valid for the newly-collected machine configuration information, revalidating, at the machine, the license data to authorize continued access to the software application.