Web Service Security Configuration
Document ID: Q000048
Last Revised On: Saturday, July 22, 2006
 
This article applies to the following:
Component(s):
Administrator
Web Service
License Service
SCCS Service
 
Solutions(s):
All
 
Summary

For web services to function properly they must be configured to have access to the variety of resources required. The ability to access a resource from an ASP.NET web service is governed by the authentication and identity tag found in the web.config for the web service. Any web service session will be created within the security context specified with the authentication and identity tags. If you experience any problems accessing or working with web services, the most likely problem is the user name used for the identity tag lacks permissions to access all the resources required by the specific web service.

The web service installer prompts for the appropriate credentials and will update the web.config at the end of installation.

 
Using the Web Configuration Utility

The IssueNet Web Configuration utility application is provided to examine and update the identity settings as well as to enable logging for more detailed trouble shooting. The web utility can be found in the Elsinore Program Group on the machine the web services were installed on. Once you launch the web utility you may select any web service installed on that machine and update the identity and logging settings.

The web.config identity tag can be specified as either clear or encrypted text. The encrypted text is actually a reference to a location in the registry where the actual encrypted user name and password are stored. If you use encrypted text, make sure the registry is accessible by the web service.

The web service installer will have created the logging directory as a sub folder under the web service folder and provided write permissions to that folder. If you enable logging but do not see any log output, open the web service sites logging folder using Internet Information Services and make sure write permissions are enabled.

 
Web Site Settings

A web service operating under IIS has several other settings that must be correct for the web service to run correctly. Open the web service sites Properties using Internet Information Services. Make sure that the ASP.NET version on the ASP.NET tab is set to 2.0 and that the anonymous access user name is the ASPNET account on the Directory Security tab.

The web service installer will not set these values specifically. These values are inherited during installation from the root web site settings which the web service is installed under.

 
Trouble Shooting

If you continue to have problems with gaining access to a web service you may try these simple steps to isolate the problem.

Attempt to enumerate the web service interface through a web browser
Open Internet Explorer and type in the URL of the web service you are attempting to communicate with. If you see the web service interfaces enumerated as a list of methods, that indicates the ASP.NET account and version are specified correctly on the web service properties section. If it fails, review the Web Site Settings section above.

Specify a local administrator for the identity settings
Using the Web Configuration Utility, use a local administrator for the identity settings using the clear text option. Make sure the password in the web.config matches what you think you have entered. The local administrator typically has sufficient privileges to run the web service. If the web service starts to work, review the difference in permissions between the local administrator and the account you wish to use with your system administrator.

Specify a local administrator for the web site Directory Security anonymous access account
The web site may also have security context controlled through the anonymous access account specified in IIS.

  • Open Internet Information Services through the Computer Management Console.
  • Select the web site to configure.
  • Select the Actions | Properties menu option.
  • Select the Directory Security tab.
  • Click the Edit... button under the Anonymous access and authentication control section.
  • Enter the local administrator user account and password to use for authentication.

If the web service starts to work, review the difference in permissions between the local administrator and the account you wish to use with your system administrator.

Enable Logging
Using the Web Configuration Utility, enable logging for the web service in question. Look in the web services log directory for output to see detailed output.