Took an ASP.NET app to an IIS7 and suddenly lost access to Profile. After much trial, error, and Googling, found that the following attribute must be present on the <modules> element inside the <system.webserver> element:
<modules runAllManagedModulesForAllRequests="true">
Hope I saved you some time.