Dela 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

Remarks

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

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();  
}

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