自定义凭据提供程序在 MFA 之前检查凭据

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

我正在开发自定义凭据提供程序,需要在针对 Active Directory 或缓存凭据进行 MFA 操作之前预先检查域或本地用户凭据。我现在使用 LogonUser 方法来检查。它在我的所有情况下都运行良好,但我有一个小问题,如果有网络可用但 DC 不可用,LogonUser 方法需要很长时间(约 45 秒)。有谁知道我怎样才能通过这个?或者我应该改变我的验证方法?

c# winapi credential-providers
1个回答
0
投票

我想我在Alexander的评论的帮助下想出了一个解决方案。我正在使用

LogonUser(userName, domain, password, (int)LogonTypes.Network, (int)LogonProviders.WinNT40, ref refToken)

使用 LogonTypes.Network 和 LogonProvider.WinNT40 比我以前尝试的要快。如果 DC 不可用,则需要 12 秒来验证用户身份。

这是我的旧代码

LogonUser(userName, domain, password, (int)LogonTypes.Interactive, (int)LogonProviders.Default, ref refToken)

如果 DC 不可用,则需要 45 秒来验证用户身份。

© www.soinside.com 2019 - 2024. All rights reserved.