SqlCredential Class
SqlCredential provides a more secure way to specify the password for a login attempt using SQL Server Authentication.
SqlCredential is comprised of a user id and a password that will be used for SQL Server Authentication. The password in a SqlCredential object is of type SecureString.
SqlCredential cannot be inherited.
Windows Authentication (Integrated Security = true) remains the most secure way to log in to a SQL Server database.
Assembly: System.Data (in System.Data.dll)
| Name | Description | |
|---|---|---|
![]() | SqlCredential(String^, SecureString^) | Creates an object of type SqlCredential. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
Use Credential to get or set a connection's SqlCredential object. Use ChangePassword to change the password for a SqlCredential object. For information on how a SqlCredential object affects connection pool behavior, see SQL Server Connection Pooling (ADO.NET).
An InvalidOperationException exception will be raised if a non-null SqlCredential object is used in a connection with any of the following connection string keywords:
Integrated Security = true
Password
User ID
Context Connection = true
The following sample connects to a SQL Server database using Credential:
// change connection string in the APP.CONFIG file
<connectionStrings>
<add name="MyConnString"
connectionString="Initial Catalog=myDB;Server=myServer"
providerName="System.Data.SqlClient" />
</connectionStrings>
// then use the following snippet:
using System.Configuration;
System.Windows.Controls.TextBox txtUserId = new System.Windows.Controls.TextBox();
System.Windows.Controls.PasswordBox txtPwd = new System.Windows.Controls.PasswordBox();
Configuration config = Configuration.WebConfigurationManager.OpenWebConfiguration(Null);
ConnectionStringSettings connString = config.ConnectionStrings.ConnectionString[“MyConnString”];
using (SqlConnection conn = new SqlConnection(connString.ConnectionString))
{
SecureString pwd = txtPwd.SecurePassword;
pwd.MakeReadOnly();
SqlCredential cred = new SqlCredential(txtUserId.Text, pwd);
conn.Credential = cred;
conn.Open();
Available since 4.5
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

