Authentication Basics
Authentication is the process of confirming a user or computers identity. The process normally consists of four steps:- The user makes a claim of identity, usually by providing a username. For example, I might make this claim by telling a database that my username is mchapple.
- The system challenges the user to prove his or her identity. The most common challenge is a request for a password.
- The user responds to the challenge by providing the requested proof. In this example, I would provide the database with my password
- The system verifies that the user has provided acceptable proof by, for example, checking the password against a local password database or using a centralized authentication server
SQL Server Authentication Modes
SQL Server 2008 offers two authentication mode options:- Windows authentication mode requires users to provide a valid Windows username and password to access the database server. In enterprise environments, these credentials are normally Active Directory domain credentials.
- Mixed authentication mode allows the use of Windows credentials but supplements them with local SQL Server user accounts that the administrator may create and maintain within SQL Server.
Selecting an Authentication Mode
Microsofts best practice recommendation is that you use Windows authentication mode whenever possible. The main benefit is that the use of this mode allows you to centralize account administration for your entire enterprise in a single place: Active Directory. This dramatically reduces the chances of error or oversight.For example, consider the scenario where a trusted database administrator leaves your organization on unfriendly terms. If you use Windows authentication mode, revoking that users access takes place automatically when you disable or remove the DBAs Active Directory account. If you use mixed authentication mode, you not only need to disable the DBAs Windows account, but you also need to comb through the local user listings on each database server to ensure that no local accounts exist where the DBA may know the password. Thats a lot of work!
In conclusion, I suggest that you heed Microsofts advice and implement Windows authentication mode for your SQL Server databases whenever possible.

