Appendix C: IIS Settings for Web Services

Troubleshooting WSUS Web services may be simplified if you compare your current IIS settings for the different WSUS Web services with the ones given below, which are the ones set by WSUS setup. A service may have stopped working correctly because one of these settings was changed by another installation or application.

The values of these IIS settings are sometimes represented with variable names instead of actual values. This is because the actual value may vary from one installation to another.

The variable names used in the settings, and in the instructions below, are:

  • windir-: The standard environment variable for the Windows directory (on Windows Server 2003, usually C:\WINDOWS).
  • InetpubDir-: The IIS inetpub directory on Windows Server 2003 (usually C:\Inetpub).
  • WSUSInstallDir-: The directory where WSUS is installed (usually C:\Program Files\Update Services).
  • WebSiteID-: The number IIS uses to identify Web sites (1 is the ID of the default Web site, but other Web sites are assigned random numbers).

IIS vroots

The following virtual directories (vroots) are created in IIS (in the Default Web Site by default) for client-to-server synchronization, server to server synchronization, reporting, and client self-update.

Vroot in IIS Properties
ClientWebService Directory: %ProgramFiles%Update Services\WebServices\ClientWebService Application Pool: WsusPool Security: Anonymous Access Enabled Execute Permissions: Scripts Only
Content Directory[the location of the WSUS content directory] Security: Anonymous Access Enabled Execute Permissions: None
DssAuthWebService Directory: %ProgramFiles%Update Services\WebServices\DssAuthWebService Application Pool: WsusPool Security: Anonymous Access Enabled Execute Permissions: Scripts Only
Inventory Directory: %ProgramFiles%Update Services\ Inventory Application Pool: WsusPool Security: Anonymous Access Enabled Execute Permissions: Scripts Only
ReportingWebService Directory: %ProgramFiles%Update Services\WebServices\ReportingWebService Application Pool: WsusPool Security: Anonymous Access Enabled Execute Permissions: Scripts Only
ServerSyncWebService Directory: %ProgramFiles%Update Services\WebServices\ServerSyncWebService Application Pool: WsusPool Security: Anonymous Access Enabled Execute Permissions: Scripts Only
SimpleAuthWebService Directory: %ProgramFiles%Update Services\WebServices\SimpleAuthWebService Application Pool: WsusPool Security: Anonymous Access Enabled Execute Permissions: Scripts Only
ApiRemoting30 Directory: %ProgramFiles%Update Services\Administration Application Pool: WsusPool Security: Integrated Windows Authentication, Digest Authentication Execute Permissions: Scripts Only
SelfUpdate Directory: %ProgramFiles%Update Services\SelfUpdate Security: Anonymous Access Enabled Execute Permissions: Scripts Only

Using the adsutil IIS utility

The adsutil IIS utility can be found on your server in the Inetpub\AdminScripts directory. Information about how to use this utility can be found in the IIS Operations Guide.

Finding Web service paths with adsutil

You can use adsutil to find the paths for different Web services on your computer with the following procedure.

To find the paths of Web services

  1. Open a command window.

  2. Navigate to the directory where adsutil is located: cd %Inetpubdir%\AdminScripts

  3. Type the following command: adsutil.vbs find path

  4. If you have WSUS installed, you should see output like the following:

Property path found at:

W3SVC/WebSiteID/ROOT

W3SVC/WebSiteID/ROOT/ApiRemoting30

W3SVC/WebSiteID/D/ROOT/ClientWebService

W3SVC/WebSiteID/ROOT/Content

W3SVC/WebSiteID/ROOT/DssAuthWebService

W3SVC/WebSiteID/ROOT/Inventory

W3SVC/WebSiteID/ROOT/ReportingWebService

W3SVC/WebSiteID/ROOT/Selfupdate

W3SVC/WebSiteID/ROOT/ServerSyncWebService

W3SVC/WebSiteID/ROOT/SimpleAuthWebService

Observação

If you have installed WSUS on the default Web site, WebSiteID will be 1, but if you have installed it on another Web site, WebSiteID will be a random number.

Checking the properties of a Web service

You can also use adsutil to find the properties of a given Web service. You will use one of the Web service paths listed above to specify the Web service you want to check. For example, if you want to check the properties of the Reporting Web service, you use the path W3SVC/WebSiteID/ROOT/ReportingWebService, where WebSiteID stands for the number of the WSUS Web site.

To check the properties of a Web service

  1. Open a command window.

  2. Navigate to the directory where adsutil is located: cd Inetpubdir\AdminScripts

  3. Type the following command: adsutil.vbs enum WebServicePath where WebServicePath stands for the path of the Web service you want to check.

  4. Compare the output to the standard values given in the sections below.

Global properties

These global properties can be retrieved with the following adsutil command:

adsutil.vbs enum W3SVC

The properties listed below are a partial list.

Property Value
KeyType (STRING) "IIsWebService"
MaxConnections (INTEGER) 4294967295
AnonymousUserName (STRING) "IUSR_<machinename>"
ConnectionTimeout (INTEGER) 120
AllowKeepAlive (BOOLEAN) True
DefaultDoc (STRING) "Default.htm,Default.asp,index.htm"
CacheISAPI (BOOLEAN) True
CGITimeout (INTEGER) 300
ContentIndexed (BOOLEAN) True
DownlevelAdminInstance (INTEGER) 1
AspBufferingOn (BOOLEAN) True
AspLogErrorRequests (BOOLEAN) True
AspScriptErrorSentToBrowser (BOOLEAN) True
AspScriptErrorMessage (STRING) "An error occurred on the server when processing the URL. Please contact the system administrator"
AspAllowOutOfProcComponents (BOOLEAN) True >
AspScriptFileCacheSize (INTEGER) 500
AspDiskTemplateCacheDirectory (EXPANDSZ) "%windir%\system32\inetsrv\ASP Compiled Templates"
AspMaxDiskTemplateCacheFiles (INTEGER) 2000
AspScriptEngineCacheMax (INTEGER) 250
AspScriptTimeout (INTEGER) 90
AspSessionTimeout (INTEGER) 20
AspEnableParentPaths (BOOLEAN) False
AspAllowSessionState (BOOLEAN) True
AspScriptLanguage (STRING) "VBScript"
AspExceptionCatchEnable (BOOLEAN) True<br>
AspCodepage (INTEGER) 0
AspLCID (INTEGER) 2048
AspQueueTimeout (INTEGER) 4294967295
AspEnableAspHtmlFallback (BOOLEAN) False
AspEnableChunkedEncoding (BOOLEAN) True
AspEnableTypelibCache (BOOLEAN) True
AspErrorsToNTLog (BOOLEAN) False
AspProcessorThreadMax (INTEGER) 25
AspTrackThreadingModel (BOOLEAN) False
AspRequestQueueMax (INTEGER) 3000
AspEnableApplicationRestart (BOOLEAN) True
AspQueueConnectionTestTime (INTEGER) 3
AspSessionMax (INTEGER) 4294967295
AppAllowDebugging (BOOLEAN) False
AppAllowClientDebug (BOOLEAN) False
PasswordChangeFlags (INTEGER) 6
AuthChangeUnsecure (BOOLEAN) False
AuthChangeDisable (BOOLEAN) True
AuthAdvNotifyDisable (BOOLEAN) True
DirBrowseFlags (INTEGER) 1073741886
EnableDirBrowsing (BOOLEAN) False
DirBrowseShowDate (BOOLEAN) True
DirBrowseShowTime (BOOLEAN) True
DirBrowseShowSize (BOOLEAN) True
DirBrowseShowExtension (BOOLEAN) True
DirBrowseShowLongDate (BOOLEAN) True
EnableDefaultDoc (BOOLEAN) True
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
InProcessIsapiApps (LIST) (6 Items)
"%windir%\system32\inetsrv\httpext.dll"
"%windir%\system32\inetsrv\httpodbc.dll"
"%windir%\system32\inetsrv\ssinc.dll"
"%windir%\system32\msw3prt.dll"
"%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll"
LogOdbcDataSource (STRING) "HTTPLOG">
LogOdbcTableName (STRING) "InternetLog"
LogOdbcUserName (STRING) "InternetAdmin"
WAMUserName (STRING) "IWAM_<machinename>">
AuthChangeURL (STRING) "/iisadmpwd/achg.asp"
AuthExpiredURL (STRING) "/iisadmpwd/aexp.asp"
AuthNotifyPwdExpURL (STRING) "/iisadmpwd/anot.asp"
AuthExpiredUnsecureURL (STRING) "/iisadmpwd/aexp3.asp"
AuthNotifyPwdExpUnsecureURL (STRING) "/iisadmpwd/anot3.asp"
AppPoolId (STRING) "DefaultAppPool"
IIs5IsolationModeEnabled (BOOLEAN) False
MaxGlobalBandwidth (INTEGER) 4294967295
MinFileBytesPerSec (INTEGER) 240
LogInUTF8 (BOOLEAN) False
AspAppServiceFlags (INTEGER) 0
AspEnableTracker (BOOLEAN) False
AspEnableSxs (BOOLEAN) False
AspUsePartition (BOOLEAN) False
AspKeepSessionIDSecure (INTEGER) 0
AspExecuteInMTA (INTEGER) 0
CentralBinaryLoggingEnabled (BOOLEAN) False
AspRunOnEndAnonymously (BOOLEAN) True
AspBufferingLimit (INTEGER) 4194304
AspCalcLineNumber (BOOLEAN) True
ApplicationDependencies (LIST) (6 Items) "Active Server Pages;ASP" "Internet Data Connector;HTTPODBC" "Server Side Includes;SSINC" "WebDAV;WEBDAV" "ASP.NET v1.1.4322;ASP.NET v1.1.4322"
WebSvcExtRestrictionList (LIST) (8 Items)
"0,*.dll"
"0,*.exe">
"0,<windir>\system32\inetsrv\asp.dll,0,ASP,Active Server Pages">
"0,<windir>\system32\inetsrv\httpodbc.dll,0,HTTPODBC,Internet Data Connector"
"0,<windir>\system32\inetsrv\ssinc.dll,0,SSINC,Server Side Includes"
"0,<windir>\system32\inetsrv\httpext.dll,0,WEBDAV,WebDAV">
"1,<windir>\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,0,ASP.NET
v2.0.50727,ASP.NET v2.0.50727"
AspMaxRequestEntityAllowed (INTEGER) 204800
[/w3svc/1] n/a
[/w3svc/AppPools] n/a
[/w3svc/Filters] n/a
[/w3svc/Info] n/a

Global Properties of the WWW Web site

These properties can be retrieved with the following adsutil command:

adsutil.vbs enum W3SVC/ WebSiteID

The properties listed below comprise a partial list.

Property Value
KeyType (STRING) "IIsWebServer"
ServerState (INTEGER) 2
ServerComment (STRING) "Default Web site"
ServerSize (INTEGER) 1
ServerBindings (LIST) (1 Items) ":80:" (or 8530)
SecureBindings (LIST) (1 Items) ":443:" (or 8531)
ConnectionTimeout (INTEGER) 180
DefaultDoc (STRING) "Default.htm,Default.asp,index.htm,iisstart.htm"
AspBufferingOn (BOOLEAN) False
LogPluginClsid (STRING) "{FF160663-DE82-11CF-BC0A-00AA006111E0}"
Win32Error (INTEGER) 0
AppPoolId (STRING) "DefaultAppPool"

Properties of the API Remoting Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/ApiRemoting30"
AppFriendlyName (STRING) "ApiRemoting30"
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\ApiRemoting30"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 21
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) True
AuthMD5 (BOOLEAN) True
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"

Properties of the Client Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/ClientWebService"
AppFriendlyName (STRING) "ClientWebService"
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\ClientWebService"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"

Properties of the Downstream Server Authentication Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/DssAuthWebService"
AppFriendlyName (STRING) " DssAuthWebService "
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\DssAuthWebService"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"

Properties of the Inventory Collection Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/Inventory"
AppFriendlyName (STRING) "Inventory"
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\Inventory"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"

Checking the properties of the Reporting Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/ReportingWebService"
AppFriendlyName (STRING) " ReportingWebService "
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\ReportingWebService"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"

Properties of the Selfupdate Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
Path (STRING) "<WSUSInstallDir>\WebServices\ServerSyncWebService"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False

Properties of the Server Synchronization Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/ServerSyncWebService"
AppFriendlyName (STRING) " ServerSyncWebService "
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\ServerSyncWebService"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"

Properties of the Simple Authorization Web service

Property Value
KeyType (STRING) "IIsWebVirtualDir"
AppRoot (STRING) "/LM/W3SVC/WebSiteID/ROOT/SimpleAuthWebService"
AppFriendlyName (STRING) "SimpleAuthWebService"
AppIsolated (INTEGER) 2
Path (STRING) "<WSUSInstallDir>\WebServices\SimpleAuthWebService"
AccessFlags (INTEGER) 513
AccessExecute (BOOLEAN) False
AccessSource (BOOLEAN) False
AccessRead (BOOLEAN) True
AccessWrite (BOOLEAN) False
AccessScript (BOOLEAN) True
AccessNoRemoteExecute (BOOLEAN) False
AccessNoRemoteRead (BOOLEAN) False
AccessNoRemoteWrite (BOOLEAN) False
AccessNoRemoteScript (BOOLEAN) False
AccessNoPhysicalDir (BOOLEAN) False
AspScriptErrorSentToBrowser (BOOLEAN) False
AspEnableParentPaths (BOOLEAN) False
AuthFlags (INTEGER) 1
AuthBasic (BOOLEAN) False
AuthAnonymous (BOOLEAN) True
AuthNTLM (BOOLEAN) False
AuthMD5 (BOOLEAN) False
AuthPassport (BOOLEAN) False
AppPoolId (STRING) "WsusPool"