由于触发器执行,登录“用户”登录失败

问题描述 投票:0回答:2

我在部署的 ASP.NET Web 应用程序上随机收到此错误。 我没有在数据库中使用任何触发器,所以我不知道该怎么做。 这是在周末没有人参与申请时出现的,它只是随机发生的。 请帮助这是关键任务

这是我收到错误的第一个实例:

  public static Guid LoginUser
    {
        get
        {
            Guid g = new Guid();
            MembershipUser m = Membership.GetUser();
            if (m != null)
                g = (Guid)m.ProviderUserKey;

            return g;
        }
    }
sql
2个回答
8
投票

登录失败是在服务器级别生成的,而不是数据库级别生成的。

也就是说,您可能有一个 LOGON 触发器。您可以在 sys.server_triggers 中检查这一点。

现在,MS Connect 上至少描述了一个已知问题,以及 Pinal Dave (YMMV)

的一些调查+潜在修复

4
投票

您可以通过以下方式仔细检查触发器是否存在:

use YourDb
select * from sys.objects where type = 'TR'

编辑:这看起来像 ASP.NET 成员资格,最终出现在用户数据库中(不是 SQL Server 登录名)。您能看到 ASP.NET 成员资格提供程序使用什么连接字符串吗? 它通常在 Web.config 中,例如:

<providers>
  <add name="AspNetSqlMembershipProvider"  
      ...
      connectionStringName="<<connection string>>"
© www.soinside.com 2019 - 2024. All rights reserved.