代码之家  ›  专栏  ›  技术社区  ›  Andie

c#。net连接字符串可用于集成安全性,但在指定用户名和密码时不起作用

  •  0
  • Andie  · 技术社区  · 7 年前

    我是sqlserver新手,我有一个连接字符串,如下所示:

    < add name="test" connectionString="server=dbServer\SQLEXPRESS;database=test;integrated security=SSPI;" />

    网站连接良好,运行良好。

    我在SSMS 17.4中创建了一个用户,并为其命名

    < add name="test" connectionString="server=dbServer\SQLEXPRESS;database=test;User Id=dbUser; Password=letmein;" />

    站点失败,并显示“用户‘dbUser’登录失败”

    用户具有以下内容:

    服务器角色:public、dbcreator

    用户映射: 默认架构:dbo
    数据库角色成员身份:db\u owner,public

    知道为什么使用用户名/密码失败吗?

    谢谢

    2 回复  |  直到 7 年前
        1
  •  4
  •   Dan Guzman    7 年前

    可能的原因包括:

    1) SQL实例未配置为允许SQL身份验证

    2) 登录名和/或密码错误

    3) 登录名无权访问其默认数据库

    检查SQL Server错误日志,因为它将提供有关登录失败原因的更详细信息。出于安全原因,这些文件不会返回给客户。可以从SSMS(管理-->SQL Server日志)或通过文本编辑器查看错误日志。当前日志文件名为“errorlog”(无扩展名),默认情况下位于安装文件夹日志子目录下。

        2
  •  1
  •   Ashutosh Kumar Singh    7 年前

    很可能您没有配置SQL Server身份验证模式。 enter image description here