I have been through the IIS 7 set up a few times and I think I have all the requirements set correctly. I can access the /Status and /Metadata handlers and get back responses (/Status returns OK). Each time I hit a page that should be managed by shib, it returns a 500. I have verified permissions countless times and even went as far as to run everything under a local administrator account with no luck.
I have logging all set to DEBUG and the only errors I get are:
2012-09-27 14:06:15 ERROR Shibboleth.Listener  isapi_shib: remoted message returned an error: No MetadataProvider available.
2012-09-27 14:06:15 ERROR Shibboleth.ISAPI  isapi_shib: No MetadataProvider available.
I saw in a previous thread the error listed is not relevant to an SP set up.
I also saw a thread that said to disable the 500 in IIS and it would return a 302 - I have not gotten that to work either. Although I admit I didn't quite follow the explanation in the thread.
Thanks in advance for any help.
I may have given up on this too early due to the post I found about the error about "No Metadata Provider available" not being relevant to a 500 error. Turns out my issue had everything to do with the error. Once I specified the MetadataProvider node in the config file (I did a local file vs the URL of a provider), the 500 errors stopped and I was redirected to the IDP log in. Make sure if you specify a local Metadata file, you place the file in the opt\shibboleth-sp\etc\shibboleth directory. Either way - this helped my get through a 500 error on page delivered via IIS 7.5 - good luck!