<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.iis.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:cs="http://blogs.iis.net/"><channel><title>Search results matching tag 'IIS 7'</title><link>http://blogs.iis.net/search/SearchResults.aspx?o=DateDescending&amp;tag=IIS+7&amp;orTags=0</link><description>Search results matching tag 'IIS 7'</description><dc:language>en-US</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Delegate Application Creation for Non-Admininistrator accounts</title><link>http://blogs.iis.net/krolson/archive/2009/11/12/delegate-application-creation-for-non-admininistrator-accounts.aspx</link><pubDate>Thu, 12 Nov 2009 18:37:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3509448</guid><dc:creator>krolson</dc:creator><cs:applicationKey>krolson</cs:applicationKey><description>&lt;P&gt;The Web Deployment Tool provides a way to delegate application creation to non-Administrator Windows users or IIS users. This blog covers how to configure this particular delegated setting. If you have not yet set up some users, or are not familiar with remote administration, I highly recommend going through this walkthrough: &lt;A href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/" mce_href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/"&gt;http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/&lt;/A&gt; before trying out these steps.&lt;/P&gt;
&lt;H2&gt;Server Admin Steps&lt;/H2&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;1. Install the Web Deployment Tool (MSDeploy)&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Use the Web Platform Installer (can be found here: &lt;A href="http://www.microsoft.com/web/downloads/platform.aspx" mce_href="http://www.microsoft.com/web/downloads/platform.aspx"&gt;http://www.microsoft.com/web/downloads/platform.aspx&lt;/A&gt;) &lt;/LI&gt;
&lt;LI&gt;Run and choose Web Deployment Tool 1.0 and click Install. This will also pull in any dependencies you don’t already have on your system. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/01_WebPI_2187B13F.jpg" mce_href="http://blogs.iis.net/blogs/krolson/01_WebPI_2187B13F.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=01_WebPI border=0 alt=01_WebPI src="http://blogs.iis.net/blogs/krolson/01_WebPI_thumb_6E4B77D5.jpg" width=644 height=473 mce_src="http://blogs.iis.net/blogs/krolson/01_WebPI_thumb_6E4B77D5.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;NOTE: This might take a while if you are missing a lot of dependencies (particularly the Windows Installer 4.5 – as this may require a restart)&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;2. Launch Inetmgr&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Click Start and type inetmgr. Press Enter. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;3. Open Management Service Delegation feature UI&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Select the server node and double-click the Management Service Delegation icon (in the Management group) &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/03_selectFeature_540B0EB1.jpg" mce_href="http://blogs.iis.net/blogs/krolson/03_selectFeature_540B0EB1.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=03_selectFeature border=0 alt=03_selectFeature src="http://blogs.iis.net/blogs/krolson/03_selectFeature_thumb_32AB6915.jpg" width=644 height=457 mce_src="http://blogs.iis.net/blogs/krolson/03_selectFeature_thumb_32AB6915.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;NOTE: if you see these warnings:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/03.5_alerts_4A62A07B.jpg" mce_href="http://blogs.iis.net/blogs/krolson/03.5_alerts_4A62A07B.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title=03.5_alerts border=0 alt=03.5_alerts src="http://blogs.iis.net/blogs/krolson/03.5_alerts_thumb_426AFE19.jpg" width=220 height=238 mce_src="http://blogs.iis.net/blogs/krolson/03.5_alerts_thumb_426AFE19.jpg"&gt;&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;This means you need to do 2 things (but they may be done after setting up rules, if you prefer):&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;FONT size=2&gt;Start WMSvc with remote connections allowed&lt;/FONT&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=2&gt;Set up some IIS Manager Permissions. &lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;FONT size=2&gt;There is information about doing this here: &lt;A href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/" mce_href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/"&gt;http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;4. Make a rule to allow marking folders as applications&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Click the Add Rule… task in the Actions pane &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/04_AddRule_6F13B7F2.jpg" mce_href="http://blogs.iis.net/blogs/krolson/04_AddRule_6F13B7F2.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=04_AddRule border=0 alt=04_AddRule src="http://blogs.iis.net/blogs/krolson/04_AddRule_thumb_0017E5D6.jpg" width=644 height=212 mce_src="http://blogs.iis.net/blogs/krolson/04_AddRule_thumb_0017E5D6.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Choose the Mark Folders as Applications template and click OK &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/05_pickTemplate_6CF6B929.jpg" mce_href="http://blogs.iis.net/blogs/krolson/05_pickTemplate_6CF6B929.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=05_pickTemplate border=0 alt=05_pickTemplate src="http://blogs.iis.net/blogs/krolson/05_pickTemplate_thumb_39BA7FC0.jpg" width=593 height=398 mce_src="http://blogs.iis.net/blogs/krolson/05_pickTemplate_thumb_39BA7FC0.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Set the Run-As identity to an account that has write permission to applicationHost.config (such as an Administrator account) &lt;/LI&gt;
&lt;LI&gt;Click Set button under Specify credentials: &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/06_clickSetButton_439F712B.jpg" mce_href="http://blogs.iis.net/blogs/krolson/06_clickSetButton_439F712B.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=06_clickSetButton border=0 alt=06_clickSetButton src="http://blogs.iis.net/blogs/krolson/06_clickSetButton_thumb_0290F1C7.jpg" width=352 height=539 mce_src="http://blogs.iis.net/blogs/krolson/06_clickSetButton_thumb_0290F1C7.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;UL&gt;
&lt;LI&gt;Enter user credentials &lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/07_setCredentialsDialog_41827262.jpg" mce_href="http://blogs.iis.net/blogs/krolson/07_setCredentialsDialog_41827262.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=07_setCredentialsDialog border=0 alt=07_setCredentialsDialog src="http://blogs.iis.net/blogs/krolson/07_setCredentialsDialog_thumb_559B8EEB.jpg" width=296 height=224 mce_src="http://blogs.iis.net/blogs/krolson/07_setCredentialsDialog_thumb_559B8EEB.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;UL&gt;
&lt;LI&gt;Click OK &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Click OK to finish creation of the rule &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;5. Add a user to the rule&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Note: this dialog will pop up automatically when you create the rule, but you can add users at any time by selecting the rule and clicking the “Add User to Rule…” task&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Add a specific Windows user, user group or IIS User. You may also make this rule for all users (*) and the {userScope} path will limit each user to the specific sites/apps they have IIS Manager Permissions for – see section &lt;I&gt;Configure IIS Manager Permissions for a Site or an Application &lt;/I&gt;here for more information on this step &lt;A href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/" mce_href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/"&gt;http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/&lt;/A&gt; ) &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/08_addUser_26D5D649.jpg" mce_href="http://blogs.iis.net/blogs/krolson/08_addUser_26D5D649.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=08_addUser border=0 alt=08_addUser src="http://blogs.iis.net/blogs/krolson/08_addUser_thumb_46187D1C.jpg" width=247 height=213 mce_src="http://blogs.iis.net/blogs/krolson/08_addUser_thumb_46187D1C.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Click OK &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;6. Add additional rules if you want to allow additional user actions (such as the ability to add content, set ACLs, or access databases) - see last section on this page.&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;Note – this rule ONLY allows the users to right-click an existing folder and mark it as an application – other rules are probably desired. See the bottom of this article for some common rules.&lt;/P&gt;
&lt;H2&gt;Client (non-Admin) steps&lt;/H2&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;1. Launch inetmgr&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Note: this may be done either from a remote computer or locally. If remote, the remote computer must also have MSDeploy installed in order to use the MSDeploy UI features.&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;2. Connect to the user’s site (or app)&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Right-click on Start Page and choose the Connect to a Site… option &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/09.1_connectToSite_45401732.jpg" mce_href="http://blogs.iis.net/blogs/krolson/09.1_connectToSite_45401732.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=09.1_connectToSite border=0 alt=09.1_connectToSite src="http://blogs.iis.net/blogs/krolson/09.1_connectToSite_thumb_321EEA86.jpg" width=350 height=285 mce_src="http://blogs.iis.net/blogs/krolson/09.1_connectToSite_thumb_321EEA86.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Type in the server name and site name – click Next &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/10_serverSiteNames_3FC180C1.jpg" mce_href="http://blogs.iis.net/blogs/krolson/10_serverSiteNames_3FC180C1.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=10_serverSiteNames border=0 alt=10_serverSiteNames src="http://blogs.iis.net/blogs/krolson/10_serverSiteNames_thumb_50C5AEA4.jpg" width=592 height=453 mce_src="http://blogs.iis.net/blogs/krolson/10_serverSiteNames_thumb_50C5AEA4.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Type in user credentials and click Next &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/11_enterCredentials_6F9C2282.jpg" mce_href="http://blogs.iis.net/blogs/krolson/11_enterCredentials_6F9C2282.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=11_enterCredentials border=0 alt=11_enterCredentials src="http://blogs.iis.net/blogs/krolson/11_enterCredentials_thumb_7C960293.jpg" width=593 height=453 mce_src="http://blogs.iis.net/blogs/krolson/11_enterCredentials_thumb_7C960293.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;You should get to a “Created a new connection successfully.” screen. Click Finish. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;3. Expand the site node&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;4. Right-click a folder&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/13.1_rightClickOptions_6974D5E7.jpg" mce_href="http://blogs.iis.net/blogs/krolson/13.1_rightClickOptions_6974D5E7.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=13.1_rightClickOptions border=0 alt=13.1_rightClickOptions src="http://blogs.iis.net/blogs/krolson/13.1_rightClickOptions_thumb_084B49C6.jpg" width=477 height=313 mce_src="http://blogs.iis.net/blogs/krolson/13.1_rightClickOptions_thumb_084B49C6.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Note: if you do NOT see the Deploy option, then most likely issues are:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;MSDeploy UI component is not installed on the computer &lt;/LI&gt;
&lt;LI&gt;There are no Management Service Delegation rules &lt;/LI&gt;
&lt;LI&gt;This user has not been added to any Management Service Delegation rules &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;5. Select the Deploy &amp;gt; Convert to Application option&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/14_convertToApp_4B471833.jpg" mce_href="http://blogs.iis.net/blogs/krolson/14_convertToApp_4B471833.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=14_convertToApp border=0 alt=14_convertToApp src="http://blogs.iis.net/blogs/krolson/14_convertToApp_thumb_5121BBCC.jpg" width=873 height=315 mce_src="http://blogs.iis.net/blogs/krolson/14_convertToApp_thumb_5121BBCC.jpg"&gt;&lt;/A&gt; Note: other options would appear under Deploy if other rules were specified, such as Delete Folder and Content or Recycle. See the Common Rules section below for a few basic rules to try out.&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#800000&gt;6. Notice that the folder has now marked as an application (you can tell by the updated icon in the tree view)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/15_nowAnApp_68D8F332.jpg" mce_href="http://blogs.iis.net/blogs/krolson/15_nowAnApp_68D8F332.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=15_nowAnApp border=0 alt=15_nowAnApp src="http://blogs.iis.net/blogs/krolson/15_nowAnApp_thumb_7CF20FBB.jpg" width=227 height=278 mce_src="http://blogs.iis.net/blogs/krolson/15_nowAnApp_thumb_7CF20FBB.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;Some Common Rules to Get Started&lt;/H2&gt;
&lt;P&gt;This shows the values for some common rules as they would appear in the administration.config file (%windir%\System32\inetsrv\config\administration.config). The rule just created for createApp has been bolded:&lt;/P&gt;
&lt;P&gt;&amp;lt;system.webServer&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;management&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;delegation&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#008000&gt;&amp;lt;!--This is the "&lt;STRONG&gt;Deploy Applications with Content&lt;/STRONG&gt;" rule, with all the template defaults. It allows users to add/delete files to locations they have IIS Manager Permissions for AND appropriate ACLs on the physical directories--&amp;gt; &lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;rule enabled="true" providers="contentPath, iisApp" actions="*" path="{userScope}" pathType="PathPrefix"&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;runAs identityType="CurrentUser" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;permissions&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;user name="*" isRole="false" accessType="Allow" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/permissions&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#008000&gt;&amp;lt;!—This is the “&lt;STRONG&gt;Set Permissions for Applications&lt;/STRONG&gt;” rule, with all the template defaults. It allows users to set ACLs to locations they have IIS Manager Permissions for AND appropriate ACLs on the parent physical directories--&amp;gt; &lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;rule enabled="true" providers="setAcl" actions="*" path="{userScope}" pathType="PathPrefix"&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;runAs identityType="CurrentUser" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;permissions&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;user name="*" isRole="false" accessType="Allow" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/permissions&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#008000&gt;&amp;lt;!—This is the “&lt;STRONG&gt;Mark Folders as Applications&lt;/STRONG&gt;” rule, using the template defaults. The runAs identity was set to a local Administrator account to allow non-administrators to mark folders as applications if they are in a path the user has IIS Manager Permissions for. This rule was the focus of the walkthrough above. --&amp;gt; &lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;&amp;lt;rule enabled="true" providers="createApp" actions="*" path="{userScope}" pathType="PathPrefix"&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;runAs identityType="SpecificUser" userName="Administrator" password="[enc:RsaProtectedConfigurationProvider:jAAAAAECAAADZgAAAKQAAKv+vnsskEdvc7c3Q2tcaJGVbvKW0urtCC8QayxZfYyGVjKrxQKQTob7T5z7ESM/3Zm0mPhIut033tWpyNJ+As4N8H5Wh/w31327eaxe+C6NLK2zmHY978A0aHpqcafcZ7K7YIaGGEem/Up0xa2Jf/LXJt77vLJUkumwGOlO3Dw9NGYGIyj8zk6lHsFQPoU0SHykWhrnMCp12uzFCUN4fYw=:enc]" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;permissions&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;user name="*" isRole="false" accessType="Allow" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/permissions&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt;&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/delegation&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/management&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/system.webServer&amp;gt; &lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&amp;nbsp;&lt;/P&gt;
&lt;H4&gt;Why do all these rules use &lt;STRONG&gt;{userScope}&lt;/STRONG&gt; for the default path?&amp;nbsp; &lt;/H4&gt;
&lt;P&gt;This makes your job easier by automatically limiting the users to areas you’ve given them permission to using IIS Manager Permissions – which are stored in the same administration.config file. You can see in this sample administration.config section below that both a Windows user (A_Windows_User) and an IIS user (An_IIS_User) are authorized to access Default Web Site – so the {userScope} in the above rules would limit them to altering items under Default Web Site.&amp;nbsp; (Note that for reading/writing content under Default Web Site these accounts will also require you to grant ACLs on Default Web Site’s physical directory. There’s some more information on how to do this here: &lt;A title=http://blogs.iis.net/krolson/archive/2009/11/04/using-iis-manager-accounts-for-web-deployment-tool-msdeploy-delegation.aspx href="http://blogs.iis.net/krolson/archive/2009/11/04/using-iis-manager-accounts-for-web-deployment-tool-msdeploy-delegation.aspx"&gt;http://blogs.iis.net/krolson/archive/2009/11/04/using-iis-manager-accounts-for-web-deployment-tool-msdeploy-delegation.aspx&lt;/A&gt; - for Windows users just use the user name instead of Local Service)&lt;/P&gt;
&lt;P&gt;&amp;lt;system.webServer&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;management&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;authorization defaultProvider="ConfigurationAuthorizationProvider"&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;authorizationRules&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope path="/Default Web Site"&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;add name="IISSBA149\&lt;STRONG&gt;A_Windows_User&lt;/STRONG&gt;" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;add name="&lt;STRONG&gt;An_IIS_User&lt;/STRONG&gt;" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/scope&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/authorizationRules&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/authorization&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/management&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/system.webServer&amp;gt;&lt;/P&gt;</description></item><item><title>Using IIS Manager accounts for Web Deployment Tool (msdeploy) delegation</title><link>http://blogs.iis.net/krolson/archive/2009/11/04/using-iis-manager-accounts-for-web-deployment-tool-msdeploy-delegation.aspx</link><pubDate>Wed, 04 Nov 2009 20:04:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3494686</guid><dc:creator>krolson</dc:creator><cs:applicationKey>krolson</cs:applicationKey><description>&lt;P&gt;This blog outlines the basic steps for setting up IIS Manager accounts so that they may be used for Web Deployment Tool delegation.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Most of the steps particular to using IIS Manager users for delegation are required for connecting remotely using the Windows Management service, so if there are already accounts set up for remote management, that work has already been done.&lt;/P&gt;
&lt;P&gt;The following steps will allow IIS Manager accounts to be used for management service delegation. Step-by-step instructions with screen shots may be found for steps 1 through 4 on this page, &lt;EM&gt;with their section title added in parenthesis&lt;/EM&gt;: &lt;A href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/" mce_href="http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/"&gt;http://learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-70/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#800000&gt;1. Make sure that Windows Management Service is installed&lt;/FONT&gt;&lt;/STRONG&gt; (&lt;I&gt;Configuring Remote Connections in IIS Manager&lt;/I&gt;)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#800000&gt;2. Enable remote connections for IIS users&lt;/FONT&gt;&lt;/STRONG&gt; (&lt;I&gt;Enable Remote Connections and Configure Identity Credentials&lt;/I&gt;)&lt;/P&gt;
&lt;P&gt;The previous steps only need to be performed once, however the following steps may be repeated for any number of new IIS Manager users.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#800000&gt;3. Create an IIS Manager account&lt;/FONT&gt;&lt;/STRONG&gt; (&lt;I&gt;Add an IIS Manager User&lt;/I&gt;)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#800000&gt;4. Give the user access to a site or application&lt;/FONT&gt;&lt;/STRONG&gt; (&lt;I&gt;Configure IIS Manager Permissions for a Site or an Application&lt;/I&gt;)&lt;/P&gt;
&lt;P&gt;This next step is vital for remote management, without which IIS users could not access or modify content for a site/application. A complete walkthrough for this step is the main focus of this page.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#800000&gt;5. Grant access to the physical site/application content&lt;/FONT&gt;&lt;/STRONG&gt; (&lt;I&gt;Configure Access Control Lists (ACLs) for Content Directories&lt;/I&gt;) &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Open IIS Manager (from start menu type “inetmgr” and press ENTER) &lt;/LI&gt;
&lt;LI&gt;Select the site (or application) you want to give an IIS user access to, right-click, and select the “Edit Permissions…” option. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_03_selectSiteEditPermissions_549E8F10.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_03_selectSiteEditPermissions_549E8F10.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=selectSiteEditPermissions border=0 alt=selectSiteEditPermissions src="http://blogs.iis.net/blogs/krolson/IU_03_selectSiteEditPermissions_thumb_014748EA.jpg" width=531 height=530 mce_src="http://blogs.iis.net/blogs/krolson/IU_03_selectSiteEditPermissions_thumb_014748EA.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Go to the Security tab and click “Edit…” under the “Group or user names:” section. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_04_editPermissions_31FA5095.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_04_editPermissions_31FA5095.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=editPermissions border=0 alt=editPermissions src="http://blogs.iis.net/blogs/krolson/IU_04_editPermissions_thumb_69CC94B8.jpg" width=379 height=483 mce_src="http://blogs.iis.net/blogs/krolson/IU_04_editPermissions_thumb_69CC94B8.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;This will open a very similar looking Permissions window. Click the “Add…” button. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_05_editPermissionsClickAdd_6887FBD9.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_05_editPermissionsClickAdd_6887FBD9.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=editPermissionsClickAdd border=0 alt=editPermissionsClickAdd src="http://blogs.iis.net/blogs/krolson/IU_05_editPermissionsClickAdd_thumb_1C4FF22B.jpg" width=409 height=512 mce_src="http://blogs.iis.net/blogs/krolson/IU_05_editPermissionsClickAdd_thumb_1C4FF22B.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Now type in the WMSvc identity in the Select Users, Computers, or Groups dialog (i.e. “Local Service” - without the quotation marks. To confirm that this is the account WMSvc uses, check out the section, below, “How to find out what account to add for IIS user ACLs”). Click OK. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_06_typeInLocalService_34072991.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_06_typeInLocalService_34072991.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=typeInLocalService border=0 alt=typeInLocalService src="http://blogs.iis.net/blogs/krolson/IU_06_typeInLocalService_thumb_20E5FCE5.jpg" width=472 height=255 mce_src="http://blogs.iis.net/blogs/krolson/IU_06_typeInLocalService_thumb_20E5FCE5.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Select the LOCAL SERVICE user and modify the Permissions for LOCAL SERVICE by checking/unchecking the permission boxes. For example, you may want to allow Write or Modify permissions. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_07_editPermissionsCheckAllowOrDeny_11CF1E0B.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_07_editPermissionsCheckAllowOrDeny_11CF1E0B.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=editPermissionsCheckAllowOrDeny border=0 alt=editPermissionsCheckAllowOrDeny src="http://blogs.iis.net/blogs/krolson/IU_07_editPermissionsCheckAllowOrDeny_thumb_5773A829.jpg" width=403 height=508 mce_src="http://blogs.iis.net/blogs/krolson/IU_07_editPermissionsCheckAllowOrDeny_thumb_5773A829.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;When finished editing the permissions, click OK. You may be warned that “You are about to change the permission settings on system folders…” depending on where the directory for your web site is located. &lt;/LI&gt;
&lt;LI&gt;Now you will see LOCAL SERVICE in the list of “Group or user names:” and can view the permissions by selecting that account. If at any point you want to change these permissions, you can follow similar steps by clicking Edit and then changing the check-box permission selections. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_08_editPermissionFinishedClickOK_5D4E4BC2.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_08_editPermissionFinishedClickOK_5D4E4BC2.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=editPermissionFinishedClickOK border=0 alt=editPermissionFinishedClickOK src="http://blogs.iis.net/blogs/krolson/IU_08_editPermissionFinishedClickOK_thumb_002F0D73.jpg" width=374 height=481 mce_src="http://blogs.iis.net/blogs/krolson/IU_08_editPermissionFinishedClickOK_thumb_002F0D73.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Click OK when you are finished. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#800000&gt;6. Add the IIS user to existing/new Management Service Delegation rules to allow those users to import content, create applications, and/or modify databases&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;H2&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2&gt;How to find out what account to add for IIS user ACLs&lt;/H2&gt;
&lt;P&gt;This will typically be “Local Service”, and it is easy to check this.&lt;/P&gt;
&lt;P&gt;Click Start and type “Services” – open the Services feature.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_01_selectServicesFromStartMenu_7EEA7493.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_01_selectServicesFromStartMenu_7EEA7493.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=selectServicesFromStartMenu border=0 alt=selectServicesFromStartMenu src="http://blogs.iis.net/blogs/krolson/IU_01_selectServicesFromStartMenu_thumb_00BACA5B.jpg" width=399 height=543 mce_src="http://blogs.iis.net/blogs/krolson/IU_01_selectServicesFromStartMenu_thumb_00BACA5B.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;In Services, locate the service named “Web Management Service” and see what is listed under the Log On As column.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/IU_02_servicesLogOnIdentity_583BE846.jpg" mce_href="http://blogs.iis.net/blogs/krolson/IU_02_servicesLogOnIdentity_583BE846.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: block; FLOAT: none; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: auto" title=servicesLogOnIdentity border=0 alt=servicesLogOnIdentity src="http://blogs.iis.net/blogs/krolson/IU_02_servicesLogOnIdentity_thumb_6FF31FAC.jpg" width=953 height=409 mce_src="http://blogs.iis.net/blogs/krolson/IU_02_servicesLogOnIdentity_thumb_6FF31FAC.jpg"&gt;&lt;/A&gt;&lt;/P&gt;</description></item><item><title>How To: Configure MySql to work with IIS DB Manager</title><link>http://blogs.iis.net/ma_khan/archive/2009/10/02/how-to-configure-mysql-to-work-with-iis-db-manager.aspx</link><pubDate>Fri, 02 Oct 2009 12:20:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3437413</guid><dc:creator>Anonymous</dc:creator><cs:applicationKey>ma_khan</cs:applicationKey><description>As we are aware that with the release of version 1 of IIS Database Manager came in the support for managing MySql Databases. This is a cool thing specially for all the PHP guys out there as MySql is extensively used with PHP applications all over the world. I being a PHP lover myself have been trying to configure the MySql part of IIS DB Manager. It looked pretty simple but turned out to be my miss that made me struggle to get MySql work with DB Manager for quite sometime now. There dint seem to be an article around this so I thought I would write one myself.&lt;br /&gt;&lt;br /&gt;Let's start: The first thing we need is IIS DB Manager it self. Information and download location on DB Manager can be obtained from the &lt;a href="http://www.iis.net/extensions/DatabaseManager"&gt;IIS Extensions site&lt;/a&gt;. Once you have downloaded the installation package and installed DB Manager you should be seeing an entry as follows in administration.config.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_zprLHNl-lCk/SsX3Ec8i0QI/AAAAAAAAAMM/RX7zPxVeeb0/s1600-h/iis_dbmanager.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 176px;" src="http://3.bp.blogspot.com/_zprLHNl-lCk/SsX3Ec8i0QI/AAAAAAAAAMM/RX7zPxVeeb0/s400/iis_dbmanager.jpg" alt="" id="BLOGGER_PHOTO_ID_5387984185080336642" border="0" /&gt;&lt;/a&gt;&lt;blockquote&gt;Note: The above command in the image will only work if you are using IIS 7.5 (ie. you run that command on Windows 7 or Windows Server 2008 R2)&lt;/blockquote&gt;Now, it's time to get it working with MySql. I have a free edition of MySql installed on my local Windows 7 machine so that's what I will be working with. If you don't have MySql you can get it from &lt;a href="http://dev.mysql.com/downloads/mysql/5.0.html"&gt;here&lt;/a&gt;. Once that's installed and ready to run try making a few Databases to play around with.&lt;br /&gt;&lt;br /&gt;We now have IIS and MySql setup properly to get the whole thing working. Lets open up IIS manager drill down to Default Website. Now double click Database manager. Create a new connection. Give it a new name and click on the drop down for database provider so that we can select "MySql 5.x, 6.x". But hey hold on ... do you see that option?? NO! ... :-)  now that's fun aint it??&lt;br /&gt;&lt;br /&gt;You have IIS DB Manager configured properly, MySql working properly but you JUST cant see the provider even though it's present in the administration.config file. That was exactly what I missed.&lt;br /&gt;&lt;br /&gt;If we check the image above carefully it states MySql provider name to be &lt;span style="font-weight: bold;"&gt;MySql.Data.MySqlClient&lt;/span&gt; ... Now open up your 2.0 machine.config located at %windir%\Microsoft.NET\Framework\v2.0.50727\CONFIG and find MySql.Data.MySqlClient.  You are not going to find it. Aha! Now it makes you think what is MySql.Data.MySqlClient after all? Well MySql.Data.MySqlClient is an  all-managed .NET driver for MySQL DB from MySql team. Bingo! suddenly everything makes sense. We had the parts but just missed the connector to tie it all up. The latest available version of the connector can be downloaded from the &lt;a href="http://dev.mysql.com/downloads/connector/net/6.1.html"&gt;MySql Site for free&lt;/a&gt;. It's a pretty simple setup, however you would be requiring Admin privileges to complete the installation.&lt;br /&gt;&lt;br /&gt;Once the installation is completed open up machine.config and search the entry. This time you will find it and BANG we are good to go. Now open up your IIS manager, drill down to the default website and double click Database Manager. Now create a new connection. Creating a new connection to MySql is very simple and straight forward. You will be seeing a screen as shown below:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_zprLHNl-lCk/SsX8BfCZyBI/AAAAAAAAAMU/RrcB6OFds0c/s1600-h/iis_dbmanager2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 175px;" src="http://2.bp.blogspot.com/_zprLHNl-lCk/SsX8BfCZyBI/AAAAAAAAAMU/RrcB6OFds0c/s400/iis_dbmanager2.jpg" alt="" id="BLOGGER_PHOTO_ID_5387989631660312594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;As you can see now we select the Database provider to be "MySql 5.x, 6.x". The rest of the entries as just as simple as the other.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Server&lt;/span&gt;: Put down your servername. In my case it was localhost.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Database&lt;/span&gt;: Give your database name&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;User ID&lt;/span&gt;: For default installation of MySql it will be &lt;span style="font-weight: bold;"&gt;root&lt;/span&gt;. If that is not the case then put down the User name given to your by your DB Administrator.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Password&lt;/span&gt;: Provide the appropriate password for the user id.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Port&lt;/span&gt;: The default port used by MySql is &lt;span style="font-weight: bold;"&gt;3306&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Click on Ok once all the details are entered and you are now good to go with the IIS DB Manger and MySql. Time to play around! Have Fun!&lt;br /&gt;&lt;br /&gt;If you have any problems &lt;a href="http://forums.iis.net/t/1156819.aspx"&gt;check this topic&lt;/a&gt; at iis.net forums. If the topic doesn't solve your problem then post the issue at the &lt;a href="http://forums.iis.net/1161.aspx"&gt;DB Manager forum at iis.net&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8908362316203403946-7991720557090434044?l=www.iisworkstation.com'/&gt;&lt;/div&gt;</description></item><item><title>Windows Cache Extension for PHP is here</title><link>http://blogs.iis.net/ma_khan/archive/2009/09/09/windows-cache-extension-for-php-is-here.aspx</link><pubDate>Wed, 09 Sep 2009 19:29:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3396250</guid><dc:creator>Anonymous</dc:creator><cs:applicationKey>ma_khan</cs:applicationKey><description>Microsoft has released a Beta of a new PHP accelerator named Windows Cache Extension for PHP. It's a pretty cool thing for anybody who deals with a lot of PHP applications on Windows because the way I see it and Microsoft explains is the same. We can now have even better performance from PHP applications! How?&lt;br /&gt;&lt;br /&gt;Basically, as the name suggests Windows Cache Extension is a &lt;a href="http://en.wikipedia.org/wiki/Cache"&gt;caching&lt;/a&gt; technique which results in better performance results, as not every request asking for the same resource needs to go to the source in order to fetch it.&lt;br /&gt;&lt;br /&gt;Before we get into the details... here's how you get it ... But even before that lets go over some requirements:&lt;br /&gt;&lt;p&gt;The extension is supported only on the following configurations:&lt;/p&gt; &lt;p&gt;Windows OS:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Windows XP SP3 with IIS 5.1 and FastCGI Extension&lt;/li&gt;&lt;li&gt;Windows Server 2003 with IIS 6.0 and FastCGI Extension&lt;/li&gt;&lt;li&gt;Windows Vista SP1 with IIS 7.0 and FastCGI Module&lt;/li&gt;&lt;li&gt;Windows Server 2008 with IIS 7.0 and FastCGI Module&lt;/li&gt;&lt;li&gt;Windows 7 with IIS 7 and FastCGI Module&lt;/li&gt;&lt;li&gt;Windows Server 2008 R2 with IIS 7.0 and FastCGI Module&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;PHP:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;PHP 5.2.X, Non-thread-safe build&lt;/li&gt;&lt;li&gt;PHP 5.3 X86, Non-thread-safe VC9 build&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;IMPORTANT: &lt;em&gt;The Windows Cache Extension can only be used when IIS is configured to run PHP via FastCGI.&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;To download the correct extension choose from the below:&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=6feb7f6a-7dcb-4083-bb7a-d8b22ba2d3d8"&gt;Windows Cache Extension 1.0 for PHP 5.2 - Beta&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=ba2e0d7a-02ce-42be-a7a3-2baa5d666bf7"&gt;Windows Cache Extension 1.0 for PHP 5.3 – Beta&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;span style="text-decoration: underline;"&gt;Installation &lt;/span&gt;of the the extension is not different from the installation of any other PHP extension.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Get hold of the dll&lt;/li&gt;&lt;li&gt;Put it in the \ext directory of php&lt;/li&gt;&lt;li&gt;Modify the php.ini ... (in this case &lt;strong&gt;extension = php_wincache.dll&lt;/strong&gt; )&lt;/li&gt;&lt;li&gt;Refresh the app pools using php and DONE!&lt;/li&gt;&lt;/ul&gt;Once that is done you should be seeing something like the below:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_zprLHNl-lCk/SqgIHPQmYCI/AAAAAAAAALs/bzZ-YztrW-g/s1600-h/win_cache.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_zprLHNl-lCk/SqgIHPQmYCI/AAAAAAAAALs/bzZ-YztrW-g/s320/win_cache.png" alt="" id="BLOGGER_PHOTO_ID_5379558675342319650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Windows cache extension for PHP has 3 caching techniques namely:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;PHP Opcode Cache&lt;/li&gt;&lt;li&gt;File Cache&lt;/li&gt;&lt;li&gt;Relative File Path Cache&lt;/li&gt;&lt;/ol&gt;It would take time and a repetitive action to explain then here... So you can get more information and explanation on these can be found &lt;a href="http://learn.iis.net/page.aspx/678/using-windows-cache-extension-for-php/"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.iis.net/joestagner/archive/2009/09/01/introducing-the-windows-cache-extension-for-php.aspx"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Have Fun!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8908362316203403946-9201295923274097480?l=www.iisworkstation.com'/&gt;&lt;/div&gt;</description></item><item><title>Sessions: Tech Ed on the Road, HydTechies</title><link>http://blogs.iis.net/ma_khan/archive/2009/07/04/sessions-tech-ed-on-the-road-hydtechies.aspx</link><pubDate>Sat, 04 Jul 2009 09:10:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3274531</guid><dc:creator>Anonymous</dc:creator><cs:applicationKey>ma_khan</cs:applicationKey><description>I recently took a couple of sessions on IIS 7 &amp;amp; 7.5 as part of &lt;a href="http://www.hyderabadtechies.net"&gt;Hyderabad Techies&lt;/a&gt; and "Tech-Ed on the Road" revival campaign here in Hyderabad, India. It was great to see the enthusiasm people had for different Microsoft technologies. We had sessions ranging from ASP.NET - Windows Azure and IIS - to SQL Server 2008.&lt;br /&gt;&lt;br /&gt;I was responsible for delivering sessions on IIS 7.5 which is going to ship along with Windows Server 2008 R2 and Windows 7. I think I was kind of lucky in that sense, because there is always so much to speak on IIS. There is so much that is running on the web these days and you love it when lots of it is running on IIS.&lt;br /&gt;&lt;br /&gt;I knew the best way to spread the word on IIS, is to show what makes IIS the way it is. Then lets leave it to the people to decide what they want... shouldn't we? Anyways, I started from level 100, so that I could show the basic architectural changes in IIS 6 and IIS 7. Detailed explanation can be found in my previous post on &lt;a href="http://www.iisworkstation.com/2008/09/iis-6-and-iis-7-how-different-are-they.html"&gt;differences between IIS 6 and IIS 7&lt;/a&gt; and &lt;a href="http://www.iisworkstation.com/2009/03/iis-changes-from-6-to-7.html"&gt;IIS: changes from 6 to 7&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Moving on I showed the advancements in IIS UI, IIS security and IIS extensions and how they help both the Admins and the developers. IIS extension are these out of band modules which are released by the IIS PG and the community making use of the great extensibility modules available.&lt;br /&gt;&lt;br /&gt;It was great to see how much people loved the idea of including a module and the ease of it's installation which originally dint come with the product.&lt;br /&gt;&lt;br /&gt;As promised, details on the IIS extensions and download location can be found at &lt;a href="http://www.iis.net/extensions"&gt;http://www.iis.net/extensions&lt;/a&gt;. All the information on the Microsoft web application gallery and platform can be found &lt;a href="http://www.microsoft.com/web/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Check out &lt;a href="http://blogs.iis.net/davcox/archive/2009/06/29/how-to-download-iis.aspx"&gt;this cool blog&lt;/a&gt; on IIS history to see and learn how IIS has evolved. It also answers the 1st question I always face when speaking on IIS... "How to download IIS" ... :)&lt;br /&gt;&lt;br /&gt;Have fun... !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8908362316203403946-3685732315511434273?l=www.iisworkstation.com'/&gt;&lt;/div&gt;</description></item><item><title>Troubleshooting: IIS Powershell Module on Windows 7 RC</title><link>http://blogs.iis.net/ma_khan/archive/2009/06/13/troubleshooting-iis-powershell-module-on-windows-7-rc.aspx</link><pubDate>Sat, 13 Jun 2009 19:38:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3231030</guid><dc:creator>Anonymous</dc:creator><cs:applicationKey>ma_khan</cs:applicationKey><description>First thing that you need to know in regard to the IIS PowerShell Snap-in or the module when using it with Windows 7 is that you do not need to download &amp;amp; install the snap-in. In Windows 7 the snap-in is part of the default install of IIS. Moving on, if you want to use the snap-in with PowerShell in Windows 7 RC then you would need to import the module. Now that sounds simple. However, there is a problem. When you try to import the IIS module which is named WebAdministration you are most likely to view the error below.&lt;br /&gt;&lt;br /&gt;PS C:\Users\admin&gt; Import-Module WebAdministration&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Process should have elevated status to access IIS configuration data.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Fair enough. We are going to access the configuration data from IIS, we would need to be on elevated privileges. Let's try with elevated privileges.&lt;br /&gt;&lt;br /&gt;PS C:\Windows\system32&gt; Import-Module WebAdministration&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Import-Module : File C:\Windows\system32\WindowsPowerShell\v1.0\Modules\WebAdministration\WebAdministrationAliases.ps1 cannot be loaded because the exe&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cution of scripts is disabled on this system. Please see "get-help about_signing" for more details.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Huh! Now, why did this happen? Lets try and troubleshoot. Windows PowerShell has a concept called "Execution Policy". It is the execution policy that determines as to how a script runs on PowerShell. By default, the execution policy in Windows 7 RC is set at "Restricted" ... Oouch. Restricted here means you will not be able to run any script (even the ones you write yourself). Why so severe? Don't know so can't answer. But for sure we wouldn't be working with that execution policy and would have to change that.&lt;br /&gt;&lt;br /&gt;There are several levels of Execution Policy that you can set like Restricted, All Signed, RemoteSigned and Unrestricted. But the one we are going to work with is RemoteSigned. So, what is RemoteSigned execution policy anyways? It means, if you want to configure PowerShell to run any scripts that you write yourself, but to run scripts downloaded from the Internet only if those scripts have been signed by a trusted publisher. Sounds fair enough now doesn't it.&lt;br /&gt;&lt;br /&gt;To set RemoteSigned as the execution policy, run the following command.&lt;br /&gt;&gt; &lt;span style="color: rgb(51, 255, 51);"&gt;Set-ExecutionPolicy RemoteSigned&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lets try importing now.&lt;br /&gt;PS C:\Windows\system32&gt; Import-Module WebAdministration&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Import-Module : The following error occurred while loading the extended type data file: &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Microsoft.PowerShell, C:\Windows\system32\WindowsPowerShell\v1.0\Modules\WebAdministration\iisprovider.types.ps1xml : File skipped because it was alrea&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;dy present from "Microsoft.PowerShell".&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;No go even now :) . When we try to execute any IIS cmd-let like get-website we will get an not recognised cmd-let error. Here's how to solve the entire situation. Close the PowerShell window and re-open it with elevated privileges and enter Get-ExecutionPolicy:&lt;br /&gt;&lt;br /&gt;&gt;&lt;span style="color: rgb(51, 255, 51);"&gt; Get-ExecutionPolicy&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;RemoteSigned&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;That's good news ... no more Restricted. Lets try importing the IIS module yet again.&lt;br /&gt;&lt;br /&gt;&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Import-Module WebAdministration&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;No error. Success! Now lets try running some simple IIS cmd-let.&lt;br /&gt;&lt;br /&gt;&gt; &lt;span style="color: rgb(51, 255, 51);"&gt;Get-Website&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Name    ID   State      Physical Path bindings                                                                              &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;----        --     -----      -------------               ---------              &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;Default Web Site 1    Started    %SystemDrive%\inetpub\wwwroot  http *:80:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Problem Solved! However, to me this still looks like a workaround. Will let you know if and when I come across a solution to this. Till then, have fun!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8908362316203403946-5171095195653250506?l=www.iisworkstation.com'/&gt;&lt;/div&gt;</description></item><item><title>Patch for Dynamic IP Restrictions for IIS 7 - Beta</title><link>http://blogs.iis.net/krolson/archive/2009/06/08/patch-for-dynamic-ip-restrictions-for-iis-7-beta.aspx</link><pubDate>Mon, 08 Jun 2009 22:52:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3218753</guid><dc:creator>krolson</dc:creator><cs:applicationKey>krolson</cs:applicationKey><description>&lt;P&gt;Dynamic IP Restrictions (DIPR) was created to give users a tool to help mitigate the effects of DOS attacks and certain brute-force password breaking attempts. The Out-Of-Band (OOB) feature description is (perhaps more elegantly) outlined on this page: &lt;A href="http://www.iis.net/extensions/DynamicIPRestrictions" mce_href="http://www.iis.net/extensions/DynamicIPRestrictions"&gt;http://www.iis.net/extensions/DynamicIPRestrictions&lt;/A&gt;. In short, it is a handy tool that is easy to configure to protect a site/server from certain attacks. &lt;/P&gt;
&lt;P&gt;A bug was discovered in the Beta for Microsoft Dynamic IP Restrictions for IIS 7 for which a patch&amp;nbsp;has been released. The bug affects users with site names longer than 22 characters. Installing the feature with a long site name and browsing to that site would result in a distinctive error in the Windows Application logs.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/clip_image001_6B1C4F40.jpg" mce_href="http://blogs.iis.net/blogs/krolson/clip_image001_6B1C4F40.jpg"&gt;&lt;IMG title=clip_image001 style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: 0px; MARGIN-RIGHT: 0px; BORDER-RIGHT-WIDTH: 0px" height=313 alt=clip_image001 src="http://blogs.iis.net/blogs/krolson/clip_image001_thumb_216D7750.jpg" width=515 border=0 mce_src="http://blogs.iis.net/blogs/krolson/clip_image001_thumb_216D7750.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;To check whether your version of DIPR beta contains this update, check the Registry. If the value for HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\DynIpRst\Version is 7.1.0394.0, then the installed DIPR is not updated. This value should be 7.1.0487.0 for the updated version. The fix for the DIPR beta is being distributed in 2 ways: an updated installer (.msi) for a new install and a patch (.msp) for existing installs. These&amp;nbsp;are available through WebPI (the Web Platform Installer) and are also posted on Microsoft Download Center (DLC) and IIS.net (see links included below for where to get the update).&lt;/P&gt;
&lt;P&gt;If you do not already have WebPI, I highly recommend trying it out – you can get it here: &lt;A href="http://www.microsoft.com/web/downloads/platform.aspx" mce_href="http://www.microsoft.com/web/downloads/platform.aspx"&gt;http://www.microsoft.com/web/downloads/platform.aspx&lt;/A&gt;. WebPI is a tool that makes it easy to see available new products or even Web applications and streamlines their installation (including any product dependencies). When you launch WebPI, it will start on the “What’s New?” page. You will either see the update patch in the “Updates” section of WebPI: &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/clip_image003_22B2102F.jpg" mce_href="http://blogs.iis.net/blogs/krolson/clip_image003_22B2102F.jpg"&gt;&lt;IMG title=clip_image003 style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=397 alt=clip_image003 src="http://blogs.iis.net/blogs/krolson/clip_image003_thumb_7D2892CD.jpg" width=537 border=0 mce_src="http://blogs.iis.net/blogs/krolson/clip_image003_thumb_7D2892CD.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Or the full product install will be shown in the “Web Platform Beta Extensions” section:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.iis.net/blogs/krolson/clip_image005_709AE5B1.jpg" mce_href="http://blogs.iis.net/blogs/krolson/clip_image005_709AE5B1.jpg"&gt;&lt;IMG title=clip_image005 style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=394 alt=clip_image005 src="http://blogs.iis.net/blogs/krolson/clip_image005_thumb_11FA8B4E.jpg" width=532 border=0 mce_src="http://blogs.iis.net/blogs/krolson/clip_image005_thumb_11FA8B4E.jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;To manually get the patch or update an existing DIPR beta install, the appropriate .msi or .msp file may be downloaded directly from the Download Center (see section, below, for links to Download Center pages). Run the file, and the installer will guide you through the installation steps. For the full install you may be required to stop WMSvc and WAS (from a command line do a net stop wmsvc and net stop was) prior to installing, such as if you have IP Security installed. Note that the patch install may require you to restart your computer. This may be post-poned to a time of your choosing, but the update may not be effective until after a restart.&lt;/P&gt;
&lt;H2&gt;Where can I download the updated Dynamic IP Restrictions for IIS 7 – Beta or the patch?&lt;/H2&gt;
&lt;H3&gt;Use WebPI&lt;/H3&gt;&lt;A href="http://www.microsoft.com/web/downloads/platform.aspx" mce_href="http://www.microsoft.com/web/downloads/platform.aspx"&gt;http://www.microsoft.com/web/downloads/platform.aspx&lt;/A&gt; 
&lt;H3&gt;Go to Microsoft Download Center&lt;/H3&gt;
&lt;P&gt;x86 full install: &lt;A href="http://download.microsoft.com/download/E/6/A/E6AAC86C-847F-408A-8FEE-12818F607D53/dynamiciprestrictions__beta_x86.msi" mce_href="http://download.microsoft.com/download/E/6/A/E6AAC86C-847F-408A-8FEE-12818F607D53/dynamiciprestrictions__beta_x86.msi"&gt;http://download.microsoft.com/download/E/6/A/E6AAC86C-847F-408A-8FEE-12818F607D53/dynamiciprestrictions__beta_x86.msi&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;x64 full install: &lt;A href="http://download.microsoft.com/download/A/3/F/A3F92B5E-609F-49C5-82EB-6D09005DD354/dynamiciprestrictions_beta_x64.msi" mce_href="http://download.microsoft.com/download/A/3/F/A3F92B5E-609F-49C5-82EB-6D09005DD354/dynamiciprestrictions_beta_x64.msi"&gt;http://download.microsoft.com/download/A/3/F/A3F92B5E-609F-49C5-82EB-6D09005DD354/dynamiciprestrictions_beta_x64.msi&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;x86 patch: &lt;A href="http://download.microsoft.com/download/A/D/7/AD7DC1B4-C740-4F05-8019-F1EB72326FB2/dyniprestrictions_beta_x86.msp" mce_href="http://download.microsoft.com/download/A/D/7/AD7DC1B4-C740-4F05-8019-F1EB72326FB2/dyniprestrictions_beta_x86.msp"&gt;http://download.microsoft.com/download/A/D/7/AD7DC1B4-C740-4F05-8019-F1EB72326FB2/dyniprestrictions_beta_x86.msp&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;x64 patch: &lt;A href="http://download.microsoft.com/download/7/C/0/7C0EC032-7FFF-4D6B-A846-F72EDC3CE952/dyniprestrictions_beta_x64.msp" mce_href="http://download.microsoft.com/download/7/C/0/7C0EC032-7FFF-4D6B-A846-F72EDC3CE952/dyniprestrictions_beta_x64.msp"&gt;http://download.microsoft.com/download/7/C/0/7C0EC032-7FFF-4D6B-A846-F72EDC3CE952/dyniprestrictions_beta_x64.msp&lt;/A&gt;&lt;/P&gt;
&lt;H3&gt;Go to IIS.net&lt;/H3&gt;
&lt;P&gt;x86 full install (patch link in page): &lt;A href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;amp;i=1825&amp;amp;g=6" mce_href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;amp;i=1825&amp;amp;g=6"&gt;http://www.iis.net/downloads/default.aspx?tabid=34&amp;amp;i=1825&amp;amp;g=6&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;x64 full install (patch link in page): &lt;A href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;amp;i=1826&amp;amp;g=6" mce_href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;amp;i=1826&amp;amp;g=6"&gt;http://www.iis.net/downloads/default.aspx?tabid=34&amp;amp;i=1826&amp;amp;g=6&lt;/A&gt;&lt;/P&gt;
&lt;H2&gt;Tips for a better experience&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;Make sure you have the download for the correct architecture and type (x86 or x64, full install or patch) &lt;/LI&gt;
&lt;LI&gt;Back-up your configuration 
&lt;UL&gt;
&lt;LI&gt;Such as by saving a copy of applicationHost.config and administrationHost.config prior to install &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;
&lt;LI&gt;Stop WAS and WMSvc before starting the installation (you will have to restart these services after product is installed) 
&lt;UL&gt;
&lt;LI&gt;net stop was &lt;/LI&gt;
&lt;LI&gt;net stop wmsvc &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;H2&gt;Why does the install wizard ask to uninstall IP Security?&lt;/H2&gt;
&lt;P&gt;Installing DIPR beta using the (.msi) wizard will require you to uninstall the IP Security feature if it is installed. It is possible for both features to be installed at the same time, but this does have a performance impact, and it is recommended that only one of the 2 features be installed for this reason. WebPI will not uninstall IP Security when installing DIPR beta because it cannot verify the action with the user, and DIPR beta will not remove an installed feature without the user “OK”. IP Security may be removed after installing DIPR beta, but the IP restriction configuration and settings will be lost, so be conscious of this action.&lt;/P&gt;
&lt;H2&gt;Do I have to restart my computer?&lt;/H2&gt;
&lt;P&gt;The patch install may require you to restart your computer whether using WebPI or the .msp directly. If this is inconvenient, the restart may be postponed, but the update may not be effective until after a restart. Recycling WAS or doing an iisreset /restart may have a similar effect. Even if the patch is “actively working,” WebPI will not continue to install other features until after the restart has been completed.&lt;/P&gt;</description></item><item><title>Check Out PHP on IIS 7</title><link>http://blogs.iis.net/tomwoolums/archive/2009/05/27/check-out-php-on-iis-7.aspx</link><pubDate>Wed, 27 May 2009 22:24:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3191805</guid><dc:creator>tomwoolums</dc:creator><cs:applicationKey>tomwoolums</cs:applicationKey><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Making PHP applications run efficiently and reliably on IIS 7 is one of our key goals. The IIS team is working with Zend to optimize the performance of PHP on IIS 7 and the results have been remarkable. In addition to performance improvements to PHP and IIS that make it a fast and reliable platform, installing PHP on Windows is quick and easy with &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/web/downloads/platform.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Web Platform Installer 2.0 Beta&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;The &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/web/gallery/"&gt;&lt;FONT face=Calibri size=3&gt;Windows Web Application Gallery&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; has a number of popular PHP applications for IIS including &lt;I style="mso-bidi-font-style: normal"&gt;WordPress&lt;/I&gt;, &lt;I style="mso-bidi-font-style: normal"&gt;Acquia&lt;/I&gt; &lt;I style="mso-bidi-font-style: normal"&gt;Drupal&lt;/I&gt;, &lt;I style="mso-bidi-font-style: normal"&gt;SilverStripe&lt;/I&gt;, and &lt;I style="mso-bidi-font-style: normal"&gt;Gallery 2&lt;/I&gt;. This page on IIS.net: &lt;/FONT&gt;&lt;A href="http://learn.iis.net/page.aspx/24/running-php-applications-on-iis/"&gt;&lt;FONT face=Calibri size=3&gt;Running PHP Applications on IIS,&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; has links to more information about PHP on IIS and configuring IIS to run PHP applications at their peak performance. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The security, flexibility, and reliability of IIS 7 make it an ideal Web hosting platform and getting started with PHP on IIS 7 is easier than ever. So if you have been waiting for seamless PHP support to adopt IIS 7, now is the time to check it out. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;</description></item><item><title>How To: Web PI and Web Gallery and IIS live in action</title><link>http://blogs.iis.net/ma_khan/archive/2009/05/02/how-to-web-pi-and-web-gallery-and-iis-live-in-action.aspx</link><pubDate>Sat, 02 May 2009 23:25:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3151324</guid><dc:creator>Anonymous</dc:creator><cs:applicationKey>ma_khan</cs:applicationKey><description>IIS Product Unit Manager Mai-Lan has come up with a number of video podcasts which give information on how to work with the &lt;a href="http://www.iis.net/extensions/WebPI"&gt;Web PI&lt;/a&gt; and the &lt;a href="http://www.microsoft.com/web/gallery/default.aspx"&gt;Web Application Gallery&lt;/a&gt;. These videos can be found here:&lt;br /&gt;&lt;br /&gt;1.&lt;a href="http://blogs.iis.net/mailant/archive/2009/04/30/real-world-iis-finding-and-installing-web-platform-installer-2-0.aspx"&gt;Real World IIS: Finding and Installing Web Platform Installer 2.0 (videocast)&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;2.&lt;a href="http://blogs.iis.net/mailant/archive/2009/05/02/real-world-iis-staying-current-with-the-latest-microsoft-web-platform-with-web-platform-installer-videocast.aspx"&gt;Real World IIS: Staying Current with the Latest Microsoft Web Platform with Web Platform Installer (videocast)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;3.&lt;a href="http://blogs.iis.net/mailant/archive/2009/05/01/real-world-iis-packaging-and-deploying-an-open-source-application-using-web-deployment-tool-screencast.aspx"&gt;Real World IIS: Packaging and Deploying an Open Source Application Using Web Deployment Tool (videocast)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;4.&lt;a href="http://blogs.iis.net/mailant/archive/2009/04/30/real-world-iis-installing-a-free-community-application-using-web-platform-installer-videocast.aspx"&gt;Real World IIS: Installing a Free Community Application Using Web Platform Installer (videocast)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;These videos cover all the basic information that is needed to get the Web PI and the Web App gallery up and running smoothly. However, that is not the only cool thing about these videos. All the videos are  brought to us by the new HTTP streaming mechanism called &lt;a href="http://www.iis.net/extensions/SmoothStreaming"&gt;Smooth Streaming&lt;/a&gt;. Trust me it's pretty cool. I have a dead slow connection at my place and yet I was able to watch the videos almost without any interruption. Smooth Streaming dynamically detects your PC and Network conditions and streams the silverlight videos appropriately. What that means is, the better your speed and PC hardware the better quality of video you get.&lt;br /&gt;&lt;br /&gt;On the other hand, the web application gallery lets you download and install some of the famous applications on web almost on the fly. Both ASP.Net and PHP. Microsoft has seen to it that the web app gallery includes everything that a beginner requires to kick start a basic website. For those who are not aware of Web PI and Web App Gallery yet, it works with Windows Server 2003 as well. Hope you work with it and deliver some great video content and quality :)&lt;br /&gt;&lt;br /&gt;Yes, I am now thinking of including some of this in Tech Ed India as well.&lt;br /&gt;&lt;br /&gt;See ya.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='http://res1.blogblog.com/tracker/8908362316203403946-8360207616103876249?l=www.iisworkstation.com'/&gt;&lt;/div&gt;</description></item><item><title>IIS Security – Past and Present</title><link>http://blogs.iis.net/tobintitus/archive/2009/04/28/iis-security-past-and-present.aspx</link><pubDate>Tue, 28 Apr 2009 08:24:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3122704</guid><dc:creator>TobinTitus</dc:creator><cs:applicationKey>tobintitus</cs:applicationKey><description>&lt;p&gt;This topic has been covered many times both by Microsoft and non-Microsoft employees. However, I’ve recently been asked what the main features of IIS 7 are and have seen a great deal of misinformation about IIS security on twitter, blog posts and forums. &lt;/p&gt;  &lt;p&gt;I think, therefore, the issue deserves yet another look. In this post, I’m going to go over security in the past for IIS and then move on to talk about security features in IIS 7. These are not in any particular order. This post is not meant to diminish the many thoughtful works already created by others – both complimentary and critical. This is just meant to bring the subject back up for discussion again in hopes that you can be properly equipped with the decision making information you may need.&lt;/p&gt;  &lt;h2&gt;Ghosts of IIS Security Past&lt;/h2&gt;  &lt;p&gt;The reason for so much misinformation about the current state of security in IIS is likely due to the earned reputation the product had in versions previous to IIS 6.0. A quick search on the web for &lt;a href="http://search.live.com/results.aspx?q=IIS+5+security+vulnerability&amp;amp;src=IE-SearchBox&amp;amp;Form=IE8SRC" target="_blank"&gt;IIS 5 security vulnerabilities&lt;/a&gt; may be like a walk down memory lane for some of the more veteran administrators and IT staff across the globe. The search results are littered with critical vulnerabilities related to buffer overflows, ISAPI extensions, exploits on rarely-used features, or features that were available by a default installation. We are haunted by names like “&lt;a href="http://en.wikipedia.org/wiki/Code_Red_(computer_worm)" target="_blank"&gt;Code Red&lt;/a&gt;” and “&lt;a href="http://en.wikipedia.org/wiki/Nimda" target="_blank"&gt;Nimda&lt;/a&gt;”. I don’t know about you, but those very names send shivers down my spine. I was consulting as a developer and web administrator for a very large property management company when these hit. We were lucky enough to avoid these as we had patched our services. That said, many whom I did business with on a regular basis were not very happy. So, to be clear, I feel the misinformation that is spread today is built on an element of experience with previous versions. Secunia reports &lt;a href="http://secunia.com/advisories/product/39/" target="_blank"&gt;16 advisories and 6 vulnerabilities&lt;/a&gt; with IIS 5.&amp;#160; And so started the reputation , perhaps deservedly so, that IIS was not secure unless you really knew what you were doing with security.&lt;/p&gt;  &lt;p&gt;Bill Gates was apparently visited by the ghosts of security past, present and future when he laid his head on his pillow January 14th, 2002. I say that because on January 15th, 2002 Mr. Gates sent out the &lt;a href="http://www.wired.com/techbiz/media/news/2002/01/49826" target="_blank"&gt;now-famous trustworthy computing memo&lt;/a&gt; to every employee at Microsoft.&amp;#160; This set off a major revamp of products from the ground up. Standards were set for test planning and testing. Writing Secure Code was mandatory reading for every Microsoft developer and tester. The results have been staggering.&lt;/p&gt;  &lt;p&gt;Security drastically improved in Microsoft products over the years, and IIS was definitely no exception to this. IIS 6 saw &lt;a href="http://secunia.com/advisories/product/1438/" target="_blank"&gt;5 security advisories and 4 vulnerabilities&lt;/a&gt; reported since 2003. Not to get ahead of myself, but IIS 7 has &lt;a href="http://secunia.com/advisories/product/17543/" target="_blank"&gt;exactly 1 advisor and 1 vulnerability&lt;/a&gt; from Secunia. Compare this against Apache 2.0.x which has had &lt;a href="http://secunia.com/advisories/product/73/" target="_blank"&gt;39 advisories and 23 vulnerabilities&lt;/a&gt; (4 of which are still unpatched as of this writing) and Apache 2.2.x which has had &lt;a href="http://secunia.com/advisories/product/9633/" target="_blank"&gt;10 advisories and 16 vulnerabilities&lt;/a&gt; (2 of which are still unpatched as of this writing) in the same period.&amp;#160; Now I have seen attempts (&lt;a href="http://googleonlinesecurity.blogspot.com/2007/06/web-server-software-and-malware.html" target="_blank"&gt;[1]&lt;/a&gt;, &lt;a href="http://blog.washingtonpost.com/securityfix/2007/05/cyber_crooks_hijack_activities_1.html" target="_blank"&gt;[2]&lt;/a&gt;) to quantify or otherwise explain these numbers further. You can read those articles for yourself and determine how much weight you want to give them. However you skew it, the facts should speak for themselves – IIS has dramatically improved and taken a leadership roll in security in IIS 6 and 7. Our ghost of IIS past still haunts the product’s reputation today, despite obvious strides taken. Even if you feel you like Apache better I think it is only fair to give credit where it is due. &lt;/p&gt;  &lt;h2&gt;Improvements in IIS 6&lt;/h2&gt;  &lt;p&gt;The IIS team took the four tenants of Microsoft’s Trustworthy Computing initiative to heart: Secure by Design, Secure by Default, Secure in Deployment and Secure Communication. Since we are already on the next version, I won’t spend a great deal of time talking about the security improvements in the last version other than a brief overview so you know how they relate to changes in our current version, IIS 7. &lt;/p&gt;  &lt;p&gt;IIS 6 took vast strides to improve security. During upgrade installations, IIS 6 was disabled by default if the previous server had not been secured by the &lt;a href="http://blog.washingtonpost.com/securityfix/2007/05/cyber_crooks_hijack_activities_1.html" target="_blank"&gt;IIS lockdown tool&lt;/a&gt;. The architecture was completely revamped to separate kernel-mode HTTP listening from user-mode application execution. Changes were made to application pools, authentication, access control, encryption and certificate handling, auditing, logging and patch management that made the product far superior to its predecessors. You can find a detailed list of these features on &lt;a href="http://technet.microsoft.com/en-us/library/cc736369.aspx" target="_blank"&gt;TechNet&lt;/a&gt;.&amp;#160; SecurityFocus did a comparison of these features in &lt;a href="http://www.securityfocus.com/infocus/1765" target="_blank"&gt;March of 2004&lt;/a&gt;.Server Watch wrote an article in &lt;a href="http://www.serverwatch.com/tutorials/article.php/3294371" target="_blank"&gt;December of 2003&lt;/a&gt;. By most accounts, everything accomplished in IIS 6 was a huge step in the right direction.&lt;/p&gt;  &lt;p&gt;Despite the massive steps already taken in IIS6, IIS 7 took these all a bit further. Let’s go ahead and investigate these now.&lt;/p&gt;  &lt;h2&gt;Improvements in IIS 7.x&lt;/h2&gt;  &lt;h3&gt;Customizable Installation&lt;/h3&gt;  &lt;p&gt;Continuing with the tenant of being secure in deployment, IIS 7 has made installation a wonder to behold. In IIS 6, you could reduce your attack surface by disabling features native to web server. However, these features were still loaded into the process. This carried not only a security factor, but also a performance and memory footprint issue.&amp;#160; IIS 7 has a completely modular architecture. That means that features which you do not want are not only NOT loaded into the process, you can leave the bits for those features off of your disk completely. &lt;/p&gt;  &lt;h3&gt;Limitable Attack Surface&lt;/h3&gt;  &lt;p&gt;This is a bit dubious and is essentially part of the customizable installation. By reducing the modules that are available on disk or loaded into a process, you significantly reduce the attack surface for your specialized web servers. If all you intend to do is serve static content with caching and no default documents, you can simply install the static file handler and caching module and leave the rest of the IIS modules off of your server. Additional controls and limitations will also reduce your attack surface and I’ll cover those below.&lt;/p&gt;  &lt;h3&gt;IUSR account&lt;/h3&gt;  &lt;p&gt;Anyone who has tried to migrate an IIS installation from one machine to another or attempted to recover your installation on a new machine, previous to IIS 7, has likely run into an issue with the local “IUSR_&amp;lt;machine_name&amp;gt;” account.&amp;#160; IIS 7 now uses a built-in IUSR account that allows you to easily copy your security settings from one machine to the next. This is great news for those using distributed configuration in web farms, recovery, restoration, or replication.&lt;/p&gt;  &lt;h3&gt;IIS_IUSRS group&lt;/h3&gt;  &lt;p&gt;IIS 6 introduced the IIS_WPG group. Application pool security identities had to be assigned to this group in order to host the w3wp.exe process. Like the IUSR account, IIS 7 now creates a built-in security group (IIS_IUSRS) and assigns application pool identities to the group automatically. You can find more information about the built-in user and built-in group for IIS 7 on IIS.NET (&lt;a href="http://learn.iis.net/page.aspx/140/understanding-the-built-in-user-and-group-accounts-in-iis-7/." target="_blank"&gt;Understanding the Built-In User and Group Accounts in IIS 7.0&lt;/a&gt;). &lt;/p&gt;  &lt;h3&gt;ASP.NET / IIS Unified Security Architecture&lt;/h3&gt;  &lt;p&gt;Previous versions of IIS did not provide a unified approach to security with ASP.NET. The IIS 7 unified request pipeline that supports both Windows and non-Windows principals and provides one place to do all authentication and authorization. Apart from simplification and performance improvements, this also reduces the attack surface and allows for greater flexibility in authentication / authorization scenarios with custom modules.&lt;/p&gt;  &lt;h3&gt;Request Filtering / URL Rewriting&lt;/h3&gt;  &lt;p&gt;IIS 7.0 includes a request filtering module that is based on the URLScan ISAPI Filter for IIS 6.0. The module helps you tighten security of your Web servers. &lt;/p&gt;  &lt;p&gt;The IIS team has also released an add-on URL rewrite module for IIS 7.0, which provides functionality for rule-based URL manipulation. Even though the primary purpose of the URL rewrite module is to rewrite URL paths for requests, the rewrite module can also be used as a security enforcement tool that helps prevent access to Web site content.&lt;/p&gt;  &lt;h3&gt;Application Pool Identities&lt;/h3&gt;  &lt;p&gt;On top of Application Pool Isolation, IIS introduces a new security feature in Service Pack 2 of Windows Server 2008 and Windows Vista. It's called Application Pool Identities. Application Pool Identities allows you to run Application Pools under an unique account without having to create and manage domain or local accounts. The name of the Application Pool account corresponds to the name of the Application Pool. &lt;/p&gt;  &lt;h3&gt;Kernel mode SSL&lt;/h3&gt;  &lt;p&gt;The implementation of SSL has changed from IIS 6.0 to IIS 7.0.&amp;#160; On Windows Server 2003, all SSL configuration was stored in the IIS metabase and encryption/decryption happened in user mode (required a lot of kernel/user mode transitions).&amp;#160; On Windows Vista and Windows Server® 2008, HTTP.sys handles SSL encryption/decryption in kernel mode, resulting in up to 20% better performance for secure connections.&amp;#160; &lt;/p&gt;  &lt;h3&gt;Configuration Improvements&lt;/h3&gt;  &lt;p&gt;IIS 7.0 allows locking and unlocking configuration settings in various levels and scopes. Locking down configuration means that it cannot be overridden (or set at all) at lower levels in the hierarchy. Unlocking configuration can only be done at the level where it was locked. This is useful, for example, when creating different configuration for different sites or paths, and only some of sites and paths are allowed to override it. Locking can be done at the section level or for specific elements, attributes, collection elements and collection directives within sections.&lt;/p&gt;  &lt;h3&gt;Dynamic IP Restriction&lt;/h3&gt;  &lt;p&gt;IIS 7 provides a new module that allows dynamic, temporary IP address restriction. This module prevents brute force attacks and HTTP clients that make unusually high number of concurrent requests or a large number of requests over a short period of time.&lt;/p&gt;  &lt;h2&gt;Summary&lt;/h2&gt;  &lt;p&gt;A verbose list of security features in IIS 6 and IIS 7 might be nearly impossible. Apart from the obvious features, there were numerous improvements to code made over these two versions that make the product far more secure than IIS 5 and earlier. That said, this should give you a summary start on information. I’ve listed some reference documents that may help you understand these features better.&amp;#160; In general, I would encourage you to ask questions of the product team and or other users on the &lt;a href="http://forums.iis.net/" target="_blank"&gt;IIS.NET forums&lt;/a&gt; if you hear something that sounds negative regarding IIS. If the feedback is true, the product team has the benefit of improving the next release. If the feedback is unfounded, the product team has the benefit of helping you find the information you need to make an informed decision. &lt;/p&gt;  &lt;h2&gt;See Also&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/posts/scobleizer/Brent-Hill-and-Roger-Grimes-Chatting-about-IIS-7s-security/"&gt;&lt;strong&gt;Brent Hill and Roger Grimes - Chatting about IIS 7's security&lt;/strong&gt;&lt;/a&gt; (From Sept. 2005)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/TechNet+Radio/TechNet-radio-Learn-about-the-IIS7-Security-features-and-benefits/" target="_blank"&gt;&lt;strong&gt;TechNet radio: Learn about the IIS7 Security features and benefits&lt;/strong&gt;&lt;/a&gt;&amp;#160;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.gartner.com/DisplayDocument?doc_cd=125453" target="_blank"&gt;&lt;strong&gt;Management Update: IIS Is No Longer the Problem in Web Server Security&lt;/strong&gt;&lt;/a&gt; (Gartner)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/emea/spotlight/sessionh.aspx?videoid=568&amp;amp;PUID=00034001826C5CC7" target="_blank"&gt;&lt;strong&gt;IIS 7 Security: Less Exposure, Greater Control&lt;/strong&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/library/cc731278.aspx" target="_blank"&gt;&lt;strong&gt;TechNet: Configure Web Server Security&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://learn.iis.net/page.aspx/88/configuring-security/" target="_blank"&gt;&lt;strong&gt;IIS.NET : Configuring Security&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://learn.iis.net/page.aspx/139/iis7-security-improvements/" target="_blank"&gt;&lt;strong&gt;IIS.NET : IIS Security Improvements&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://learn.iis.net/page.aspx/548/using-dynamic-ip-restrictions/" target="_blank"&gt;&lt;strong&gt;Using Dynamic IP Restrictions&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.iis.net/ConfigReference/system.webServer/security/requestFiltering" target="_blank"&gt;&lt;strong&gt;IIS.NET Configuration Reference: Request Filtering&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;</description></item></channel></rss>