Space


Server Features

Feature Summary
Web Proxy Service Features
WinSock Proxy Service Features


To TopFeature Summary

Microsoft Proxy Server provides:

With Microsoft Proxy Server, clients can access the Internet through the Web Proxy service or the WinSock Proxy service.

The Web Proxy service:

The WinSock Proxy service:


To TopWeb Proxy Service Features

Web Proxy Basics
Client Authentication
Domain Filtering
Caching

To TopWeb Proxy Basics

Proxy is defined in general terms as “authority or power to act for another.” In the context of network computing, a proxy service is a service provided by a computer that assumes authority and power to act for computers to which it is connected. Such a service is useful in situations that require computers on networks that are not directly connected to each other to exchange information. A proxy service allows information exchange while maintaining security for individual computers.

Proxy services are particularly appropriate for today’s environment, in which the popularity and growth of the Internet has created a need for corporations, organizations, and schools to allow Internet access from client computers on their private network. At the same time, these entities need to isolate their private network from the Internet for a variety of reasons, including security, private addressing, and transport incompatibility. A proxy service reconciles these potentially incompatible needs.

A proxy service runs on a computer with at least two network adapter cards, one for each network to which it is connected. Typically, this computer is the only computer to which both networks are connected. The computer running the proxy service thus serves as a gateway computer between the two networks. Larger networks may have multiple gateway computers, each running the proxy service. The following figure shows a common scenario implemented using Microsoft Proxy Server. The Web Proxy service provides a private network client with access to the Internet.

With Microsoft Proxy Server, if both networks are running Transmission Control Protocol over Internet Protocol (TCP/IP) you should disable routing by clearing the Enable IP Routing check box in the Windows NT Server TCP/IP Advanced Configuration dialog box. Disabling this feature means that there can be no direct routing between the two networks: All information must pass through the proxy service.

The Web Proxy service supports proxy requests from any browser that is compatible with the standard CERN proxy protocol, such as Microsoft Internet Explorer or Netscape Navigator. The browser can be on a computer running any operating system platform, such as Windows, Windows NT, Macintosh, or UNIX. The browsers must be configured to use the proxy server, but the Web Proxy service requires no client-side components (because all client support needed for this standard protocol is built into most popular browsers).

The Web Proxy service includes such features as domain filtering, Internet resource caching, and client authentication. The Secure Sockets Layer (SSL) tunneling protocol is also supported. SSL Tunneling allows a client to create a connection to a server through the proxy for sending and receiving encrypted data that cannot be interpreted by the proxy. This is used for SSL with the HTTPS protocol, and the secure news protocol, SNEWS.

The Web Proxy service has built-in request logging that allows log records to be written to a flat file or to a database by using Open Database Connectivity (ODBC). This logging is separate from the logging built into the WWW service of Internet Information Service (IIS) and includes proxy-specific information.

To TopClient Authentication

Microsoft Proxy Server can be configured to allow anonymous requests by users, or to require users to be authenticated (validated) by the server. Once users are authenticated, access control configuration determines which protocols (Web, FTP, or Gopher) are accessible for each user. Users can be granted access to selected protocols.

Access control is integrated into Windows NT security and administration. The user accounts used for logon, or authentication, are created with User Manager, the standard User Account administration tool. Each Internet protocol (Web, FTP, Gopher) is represented within Microsoft Proxy Server by an object on which Access Control Entries (ACEs) can be applied, indicating which users have access to the protocol, and which users do not. Assignment of Access Control Entries is done in Internet Service Manager.

A convenient way to configure user-level access control is with Local Groups. With User Manager, an administrator can create groups, and add user accounts to these groups. Within Internet Service Manager, the site would assign Access Control to each group, as appropriate. For example, one group may have HTTP access only, and no FTP access. When a user joins or leaves, no changes would be necessary in Internet Service Manager; the user account can be added or removed from a group by using User Manager.

Microsoft Proxy Server supports two forms of user authentication: HTTP Basic authentication, and Windows NT Challenge/Response authentication. When using Basic authentication, the user sends a request by typing in a URL or clicking a hyperlink. The server responds with an “authentication failure” message to the client, and clients typically display a user name/password dialog box in response. The user enters a valid user name and password, and the browser reissues the same request, but this time the header contains user information, which is used by the server to authenticate the user.

In order for basic authentication to work with Microsoft Proxy Server, the browser being used must support the new “proxy-authenticate” HTTP header; Internet Explorer 3.0 supports this. Earlier versions of Internet Explorer do not support this header, and therefore do not support HTTP Basic Authentication through a proxy.

Basic authentication does not encrypt your user name and password before transmission. Basic authentication is encoded only by using UUencode, and can be decoded easily by anyone with access to your network, or to a segment of the Internet that transfers your packets.


Warning   If you use Basic authentication, you will send your Windows NT user name and password in clear text (unencrypted) over public networks. Intruders could easily learn user names and passwords.


Windows NT Challenge/Response authentication uses the same secure mechanism for Microsoft Proxy Server logon that is used by clients that log on to a Windows NT-based computer. When this mechanism is used, the user needs to be logged on to the client computer, with a computer or domain user account that is valid on the computer running Microsoft Proxy Server . When the user issues a request, the Windows NT Challenge/Response protocol is used between client and server. Windows NT Challenge/Response authentication requires that the browser support the “proxy-authenticate” HTTP header, as well as HTTP Keep-Alives to a proxy, and NT Challenge/Response. Once a user is authenticated, the user remains authenticated for the life of the TCP connection (by use of the Keep-Alive mechanism). Internet Explorer 3.0 supports these requirements; earlier versions of Internet Explorer do not.

The Microsoft ActiveX™ Software Development Kit (SDK) includes information for third parties on how to support the Windows NT Challenge/Response protocol in Web browsers, whether they directly connect to Web servers or use proxy servers.

To TopDomain Filtering

Microsoft Proxy Server offers the ability to control which Internet sites are accessible to private network clients. The Web Proxy service can be configured to grant access to all Internet sites except for the ones specified, or it can be configured to deny access to all Internet sites except for the ones specified. In either case, the list of sites applies to all requests issued to the Web Proxy service on that server. It is currently not possible to specify domain filtering on a user-level basis, although different Microsoft Proxy Servers on your network can offer access to different sites and for different users. (Also, the open, documented Internet Server API (ISAPI) provides an extensible means for third parties to provide customized filtering.)

Each entry in the grant/deny list can be an IP address, an IP subnet, or a domain name. A domain name can be a computer name (such as www.microsoft.com), or a domain name that represents multiple computers (such as microsoft.com), in which case the entry applies to all computers in the domain.

If domain filtering is enabled, the Proxy ISAPI application verifies that each WWW, FTP, and Gopher request is directed to an Internet site to which access is permitted, before issuing the request to the site. If access is not permitted, an error message is returned to the client.

If the request specifies a Domain Name System (DNS) site name, the site name is resolved to an Internet Protocol (IP) address, and both the DNS name and IP address are searched for in the domain filtering site list. If a client request is received that specifies an IP address rather than a DNS name, the IP address is searched for in the domain filtering site list, and if at least one entry in the site list contains a domain name, the request’s IP address is converted to a DNS name by doing a DNS reverse resolution, and the domain name is searched for in the site list.

To TopCaching

The Web Proxy service uses caching to maintain local copies of Web objects. Subsequent requests for these objects can be serviced from a local disk copy rather than issuing the request over the Internet, which improves user-perceived performance and reduces bandwidth consumption on the site’s Internet connection.

The Web Proxy service caching provides the following features:

Passive caching uses the cache to store all cacheable objects returned to Microsoft Proxy Server by Internet servers. Many objects on the Web have characteristics that make them difficult or impossible to cache properly (for example, they might be dynamically generated, or require authentication for access). For this reason, the caching system only caches appropriate objects. Microsoft Proxy Server calculates a Time-To-Live (TTL) for all objects in the cache. When an object’s TTL has expired, the next request for the object is serviced on the Internet instead of the cache. For more information about caching, see Appendix D, “Architecture.”

Active caching uses the cache to proactively ensure the freshness and availability of popular objects. In this mechanism, the cache manager creates its own request for an object, without client prompting, when the TTL has expired or is near expiration. Web objects are subject to active caching on the basis of their popularity relative to their rate of change. Additionally, the active caching algorithm incorporates calculations of current server load in order to process requests to the Internet at times of low usage.

Returning expired objects when an Internet site is unavailable maintains potentially stale data in the cache. Expired objects can be used to service client requests sent to a remote server when that remote server is temporarily inaccessible.


To TopWinSock Proxy Service Features

Windows Sockets is a mechanism for interprocess communication (IPC) between applications running on the same computer, or on different computers connected by a local area network (LAN) or wide area network (WAN). Windows Sockets defines a set of standard APIs that an application uses to communicate with one or more other applications, usually across a network. Windows Sockets supports initiating an outbound connection (for clients), accepting an inbound connection (for servers), sending and receiving data on those connections, and terminating the connection.

WinSock Proxy is a mechanism that makes a Windows Sockets-compatible application running on a private network perform as if it were directly connected to the Internet, when actually there is a gateway computer connecting the two networks. The client application calls Windows Sockets APIs to communicate with an application running on an Internet computer. The WinSock Proxy components redirect the necessary APIs to the gateway computer, thus establishing a communication path from the internal application to the Internet application through the gateway computer. This is totally transparent to the two applications.

The WinSock Proxy service provides the following features:


© 1996 by Microsoft Corporation. All rights reserved.