令牌顺序对SQL Server的ODBC连接字符串有影响吗?

时间:2019-08-08 12:24:51

标签: c# sql-server connection odbc azure-sql-database

我正在尝试在运行时注入连接字符串的密码部分,以便可以安全地保存密码。以前,我用实际的密码完全替换了放置密码令牌的部分。

现在,我尝试仅在末尾附加它,并且连接失败。 连接字符串中令牌的顺序真的重要吗?

以前,我的连接字符串如下所示:

  

Driver = {用于SQL Server的ODBC驱动程序13}; Server = tcp:[服务器   地址],1433;数据库= [名称]; Uid = [用户名]; Pwd = [密码];加密=是; TrustServerCertificate =否;连接   超时= 30;

现在,失败的连接字符串如下所示:

  

Driver = {用于SQL Server的ODBC驱动程序13}; Server = tcp:[服务器   地址],1433;数据库= [名称]; Uid = [用户名];加密=是; TrustServerCertificate =否;连接   超时= 30; Pwd = [密码];

尝试在最后添加Pwd令牌时出现两个错误:

  

错误[01S00] [Microsoft] [SQL Server的ODBC驱动程序13]无效   连接字符串属性

     

错误[28000] [Microsoft] [SQL Server的ODBC驱动程序13] [SQL   服务器]用户“ [用户名]”的登录失败

我用来构造连接字符串的代码如下:

    public static string GetConnectionString(string connectionString, string server, string masterPassword)
    {
        if (connectionString.Contains($"Server=tcp:{server}"))
            connectionString = connectionString + $"Pwd={masterPassword};";

        return connectionString;
    }

0 个答案:

没有答案