FIX: SQL Debugging may fail because of a strict local password complexity policy (318632)



The information in this article applies to:

  • Microsoft Visual Studio .NET (2002), Enterprise Architect Edition
  • Microsoft Visual Studio .NET (2002), Enterprise Developer Edition
  • Microsoft SQL Server 2000 (all editions)

This article was previously published under Q318632

SYMPTOMS

When you install the products listed in the "Applies to" section of this article, and then you run Visual Studio .NET in a Windows Terminal Services session, you may not be able to use the SQL Debugging features. No error occurs but the debugger does not step into the stored procedure.

However, when you run Visual Studio .NET on the interactive desktop (local console), T-SQL Debugging works as expected.

CAUSE

When the SQL Debugging feature is installed, a special account called SQLDebugger is created. This account is used as the identity under which the SQL Debugger Registry2 DCOM server process (Sqldbreg2.exe) runs.

The SQLDebugger account is created with a strong random password for security purposes. If this password does not comply with the effective local password complexity policy, the SQLDebugger account is not created and the DCOM server is registered to run under the Interactive User account. This prevents the SQL Debugging feature from working correctly when you run Visual Studio .NET in the Terminal Services client session.

RESOLUTION

To determine whether you are experiencing this particular problem, verify that a local account named SQLDebugger exists. If the account does not exist, you probably are experiencing this problem.

To resolve the problem, follow these steps:
  1. Create a new local account named MySQLDebugger.
  2. Make the account a member of the Users group (a default setting).
  3. Set the User cannot change password and Password never expires attributes for this account.
  4. Configure the DCOM Server named SQL Debugger Registry2 to run with the MySQLDebugger account as its identity, instead of the Interactive User account. To do this, follow these steps:
    1. On the Start menu, click Run.
    2. Type DCOMCNFG, and then click OK.
  5. To open the Identity tab of the Properties dialog box for SQL Debugger Registry2, follow the steps for your operating system:
    • On a computer running Windows 2000, do the following:
      1. The Distributed COM Configuration Properties dialog box appears. On the Applications tab, click SQL Debugger Registry2 in the list, and then click Properties.
      2. In the Properties dialog box, click the Identity tab.
    • On a computer running Windows XP, do the following:
      1. After you run DCOMCNFG, the Microsoft Management Console (MMC) snap-in for COM+ appears. Expand COM+, expand Computers, expand My Computer, and then expand DCOM Config.
      2. Click the SQL Debugger Registry2 node. Right-click the node, and then click Properties.
      3. In the Properties dialog box, click the Identity tab.
    NOTE: If SQL Debugger Registry2 does not appear in the list of registered DCOM servers, you may not have installed the SQL Debugging feature of the product.

  6. On the Identity tab, click to select This User.
  7. Type MySQLDebugger for the user name, type the password, confirm the password, and then click OK.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. This bug was corrected in Visual Studio .NET (2003).

Modification Type:MinorLast Reviewed:1/20/2006
Keywords:kbvs2005doesnotapply kbvs2005swept kbtshoot kbvs2002sp1sweep kbfix kbbug KB318632 kbAudDeveloper