What is administration.config for IIS?

One little known feature of IIS7 is that it's UI is entirely extensible!  This means that anyone can write a C# assembly and get it displayed through the IIS Manager UI.  The possibilities here are endless, anything from someone writing a new certificate management system, a website provisioning system, etc. 

So how do you add these modules to IIS Manager's list?  You add them to administration.config which is in Windows\System32\inetsrv\config
Assuming that you were able to implement a UI module, you just add your assembly name to the moduleProviders list. 

(Note that the IIS Manager has code to write out a new administration.config if one is blown away.)

Lastly, here are a few references that may help with UI module development and configuration:

http://learn.iis.net/page.aspx/269/how-to-create-a-simple-iis-manager-module/
http://blogs.iis.net/rlucero/archive/2007/04/23/extensibility-module-designer-fun.aspx
http://blogs.iis.net/rakkimk/archive/2008/06/11/iis7-adding-your-ui-extension-to-the-iis-manager-hierarchy.aspx

Dave

P.S. be sure not to call it administrationhost.config ... that would be silly. 

No Comments