Microsoft KB Archive/176799

= INFO: Using DCOM Config (DCOMCNFG.EXE) on Windows NT =

Article ID: 176799

Article Last Modified on 2/9/2006

-

APPLIES TO


 * Microsoft Visual Basic 5.0 Control Creation Edition
 * Microsoft Visual Basic 5.0 Learning Edition
 * Microsoft Visual Basic 6.0 Learning Edition
 * Microsoft Visual Basic 5.0 Professional Edition
 * Microsoft Visual Basic 6.0 Professional Edition
 * Microsoft Visual Basic 5.0 Enterprise Edition
 * Microsoft Visual Basic 6.0 Enterprise Edition

-



This article was previously published under Q176799



SUMMARY
DCOMCNFG.EXE (DCOM Config) is a utility you can use to secure DCOM Objects you have created. This article describes the DCOM Config interfaces, options, and settings.

Because security is much more limited on Windows 95, Windows 98, and Windows Me, the interface and options may differ on Windows 95, Windows 98, and Windows Me systems. This article is written for those running DCOM Config on Windows NT or Windows 2000 systems.



MORE INFORMATION
The main interface of DCOM Config is divided into the following three tabs:


 * Applications.
 * Default Properties.
 * Default Security.

Applications Tab
The Applications tab shows each of the items registered under the following registry key:

HKEY_CLASSES_ROOT\AppId\

Beneath this key are all of the objects that can be launched on a remote machine. DCOM Config displays just the ProgIDs (friendly names) of each object, such as "Microsoft Word Document" or "Microsoft Access Database." Some objects may register without registering a ProgID; in these cases, the GUID of the object will be displayed, such as "{4E6B942A-01B0-11D1-A9CB- 00AA00B7B36F}."

For each item listed in the Applications tab, properties for each application can be viewed by selecting an item and choosing the "Properties" button or by double-clicking an application name.

Default Properties Tab
Each of the values displayed under the Default Properties tab may be found under the following key in the registry:

HKEY_LOCAL_MACHINE\Software\Microsoft\OLE

The first item in the Default Properties tab is a check box:

"Enable Distributed COM on this computer"

This is a global setting for the entire machine. When this option is checked, the machine allows the creation of DCOM objects. If it is not checked, objects cannot be created via DCOM.

NOTE: You must reboot the system in order for a change in this setting to take effect.

The second part of the Default Properties tab is the Default Distributed COM Communication Properties, which has of two levels:


 * 1) Default Authentication Level.
 * 2) Default Impersonation Level.

These two options can only be modified if DCOM is enabled on this system.

Default Authentication Level (Packet Level)
Authentication Levels are as follows:   Name                         Description None                        No authentication.

Connect                     Authentication occurs when a connection is made to the server. Connectionless protocols do not use this.

Call                        The authentication occurs when a RPC call is accepted by the server. Connectionless protocols do not use this.

Packet                      Authenticates the data on a per-packet basis. All data is authenticated.

Packet Integrity            This authenticates that the data has come from the client, and checks that the data has not been modified.

Packet Privacy              In addition to the checks made by the other authentication techniques, this encrypts the packet.

Default                     May vary depending upon operating system. NOTE: "Connect" and "Call" are not used for connectionless protocols. Windows NT and Windows 2000 use a connectionless protocol, UDP, by default. However, Windows 95 uses TCP, which is connection-based. Windows 95 machines can only accept calls on the "None" or "Connect" levels.

Default Impersonation Level
If no security is set at the object level, the server uses the security setting specified here as the default. The possible values are:   Name                         Description --  Anonymous                    The client is anonymous. This setting is                               not currently supported by DCOM.

Identify                    The server can impersonate the client to                                check permissions in the ACL (Access                                Control List) but cannot access system objects.

Impersonate                 The server can impersonate the client and access system objects on the client's                               behalf.

Delegate                    In addition to the Impersonate level, this level can impersonate the client on calls to other servers. This is not supported in                               the current release of DCOM. The last item on the Default Properties tab is the "Provide additional security for reference tracking" check box, which tells the server to track connected client applications by keeping an additional reference count. Checking this box uses more memory and may cause COM to slow down, but it ensures that a client application cannot kill a server process by artificially forcing a reference count to zero.

Default Security Tab
There are three options under the Default Security tab. Each of the values stored here can be found in the Windows registry at the following location:

HKEY_LOCAL_MACHINE\Software\Microsoft\OLE

The three options are:


 * 1) Default Access Permission: This value determines the users and groups that can access an object when no other access permissions are provided. For information on how to give individual access permissions to specific DCOM objects, see the "Application Properties" section later in this document. By default, access is provided to the "System" and "Interactive" groups.
 * 2) Default Launch Permission: This value determines the users and groups that can launch an object when no other access permissions are provided. For more information on how to give individual launch permissions to specific DCOM objects, see the section "Application Properties" later in this document.
 * 3) Default Configuration Permission: This value determines the users and groups that may read or modify configuration information for DCOM applications. This also includes which users and groups will have permission to install new DCOM servers.

System Groups
There are several group accounts you will find when you configure users and groups. The following list is a summary of which user belongs to each group:   Group                  Description Interactive           Includes all users who log on to a Windows NT or                          Windows 2000 system locally (at the console). It                          does not include users who connect to Windows NT                          or Windows 2000 resources across a network or are started as a server.

Network               Includes all users who connect to Windows NT or                           Windows 2000 resources across a network. It does not include those who connect through an                         interactive logon.

Creator/Owner         The Creator/Owner group is created for each sharable resource in the Windows NT system. Its membership is the set of users who either create resource s(such as a file) and those who take ownership of them.

Everyone              All users accessing the system, whether locally, remotely, or across the network.

System                The local operating system. The list above includes the group accounts that are intrinsic to Windows NT and Windows 2000 systems. Your particular network may include more groups from which you may choose. In order to determine the membership of each custom group account, you must contact your network administrator.

Application Properties
You can specify custom settings for individual DCOM applications by choosing the Properties button on the "Applications" tab in DCOM Config. The following section describes each tab (General, Location, Security, Identity) and setting found within Application Properties.

General
The General tab provides general information about the application, displaying the Application name, type (local server or remote server), and location (local path or remote computer). These settings are not modifiable through the DCOM Config interface.

The General Table retrieves all of its information from subkeys of the following registry key:

HKEY_CLASSES_ROOT\CLSID\{...CLSID...}

where {...CLSID...} is the unique CLSID for the Object Server currently being viewed.

Location
This tab is used to determine where DCOM will execute the application. There are three possible choices:


 * 1) Run application on the computer where the data is located: if selected, DCOM will execute the application where the data is located. This is useful only if the application provides a data file for the server application.
 * 2) Run application on this computer: indicates that the DCOM application should run on the local machine.
 * 3) Run application on the following computer: allows you to specify a computer on which to execute. (This feature is currently unavailable on Windows NT 4.0 systems, Windows NT 4.0 does not support full security delegation.)

If more than one of the above is selected, DCOM will use the first applicable option. Client applications may also override this setting.

Security
On the Security tab, you can customize settings for the following individual application permissions:


 * 1) Access Permissions.
 * 2) Launch Permissions.
 * 3) Configuration Permissions.

If you do not customize these settings, the default security settings are used. For more information about the Security tab, see the section earlier in this article on "Default Security."

Identity
This tab is used to determine which account you want to use to run the application. There are four choices by which the system determines which account your DCOM object will run under:


 * 1) The Interactive User: the application will run using the security context of the user currently logged onto the computer. If this option is selected and the user is not logged on, then the application will not start.
 * 2) The Launching User: the application will run using the security context of the user who started the application. The launching user and the interactive user may be the same.
 * 3) This User: you may specify the user whose security context will be used to run the application.
 * 4) The System Account: this is available only for Windows NT and Windows 2000 services that use DCOM.

