Share via


SqlCredential Class

Definition

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.

public ref class SqlCredential sealed
public sealed class SqlCredential
type SqlCredential = class
Public NotInheritable Class SqlCredential
Inheritance
SqlCredential

Examples

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="Microsoft.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();
}

Remarks

Use Credential to get or set a connection's SqlCredential object. Use ChangePassword(String, String) 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:

Constructors

SqlCredential(String, SecureString)

Creates an object of type SqlCredential .

Properties

Password

Gets the password component of the SqlCredential object.

UserId

Gets the user ID component of the SqlCredential object.

Applies to