Security account delegation is the ability to connect to multiple servers, and with each server change, to retain the authentication credentials of the original client. For example, if a user (LONDON\joetuck) connects to ServerA, which then connects to ServerB, ServerB knows that the connection security identity is LONDON\joetuck.
To use delegation, all servers that you are connecting to must be running Microsoft® Windows® 2000, with Kerberos support enabled, and you must be using Microsoft Active Directory™, the directory service for Windows 2000. The following options in Active Directory must be specified as follows in order for delegation to work:
To use security account delegation, SQL Server must have:
The SPN must be assigned to the service account of the SQL Server service on that particular computer. Delegation enforces mutual authentication. The SPN proves that SQL Server is verified on the particular server, at the particular socket address, by the Windows 2000 account domain administrator. You can have your domain administrator establish an SPN for SQL Server with the setspn utility through the Windows 2000 Resource Kit.
To create an SPN for SQL Server, enter the following code at a command prompt:
setspn -A MSSQLSvc/Host:port serviceaccount
For example:
setspn -A MSSQLSvc/server1.redmond.microsoft.com sqlaccount
For more information about the setspn utility, see the Windows 2000 documentation.
Before enabling delegation, consider the following:
Note If you change service accounts in SQL Server, you need to delete any previous SPNs and create new ones.
To add an SPN on an instance of SQL Server named "myserver.microsoft.com", for an instance listening on port 1433, using service account MYDOMAIN\sqlsvc, run the following at a command prompt:
setspn -A MSSQLSvc/myserver.microsoft.com:1433 sqlsvc
You cannot use the Netbios name. You must use the fully qualified DNS name. You cannot specify the domain qualifier for the service account. You must use only the account name.
To change and use the LocalSystem account, enter the following code at a command prompt to delete the previously registered SPN :
setspn -D MSSQLSvc/myserver.microsoft.com:1433 sqlsvc
For more information about security account delegation, see the Windows 2000 documentation.