C# 服务器在1次登录尝试失败后锁定用户名?

C# 服务器在1次登录尝试失败后锁定用户名?,c#,.net,active-directory,ldap,C#,.net,Active Directory,Ldap,我有以下用于自定义身份验证实现的C#方法: public bool Authenticate(AuthenticateRequest userCredentials) { var encoding = Encoding.GetEncoding("iso-8859-1"); var userName = encoding.GetString(Convert.FromBase64String(userCredentials.NetworkUserId)

我有以下用于自定义身份验证实现的C#方法:

    public bool Authenticate(AuthenticateRequest userCredentials)
    {
        var encoding = Encoding.GetEncoding("iso-8859-1");
        var userName = encoding.GetString(Convert.FromBase64String(userCredentials.NetworkUserId));
        var password = encoding.GetString(Convert.FromBase64String(userCredentials.Password));
        var pc = new PrincipalContext(ContextType.Domain, userCredentials.DomainName);
        var isValid = pc.ValidateCredentials(userName, password);
        return isValid;
    }

如果提供了正确的用户凭据,则此操作效果良好。当提供不正确的用户凭据时,这也很有效。问题在于,当仅提供一次无效的用户凭据时,用户帐户会被锁定,并且后续登录尝试会失败,即使提交了正确的凭据也是如此。有没有办法将此代码或服务器配置为在用户帐户锁定之前允许3次登录尝试?

我猜数据库中有一个标志来确定用户是否被锁定?查找设置该标志的代码。此外,您可能要做的是添加另一个数据库字段(如果还没有),以统计最多3次的尝试次数。PrincipalContext.ValidateCredentials()是AD特定身份验证过程的接口。它没有连接到自定义应用数据库
特定于广告的身份验证过程
您需要与管理您特定于广告的身份验证过程的人员交谈。可能是您的网络管理员。