我按照 Microsoft Technet 博客和其他几个网站的说明编写了一个类似于密码过滤器 的 dll 文件。我只需要在事件目录环境中通过“PasswordChangeNotify”方法获取明文密码(我还包含了用于写入日志文件的 fprintf,以看看它在做什么)。
我在注册表编辑器中指定了我的 dll 的名称 as per this link
现在,当用户更改其密码时,方法“InitializeChangeNotify”、“PasswordChangeNotify”、“PasswordFilter”永远不会被调用。我什至访问过this solution 并安装了相应的 MS vcredist-x64!但是没有用,我觉得很烦人!请有人帮帮我。或者有没有其他方法可以在 Active Directory 环境中捕获密码?
注意:如果我从普通 C# 文件调用我的 dll 文件的“InitializeChangeNotify”(因为它不需要任何参数),它会写入日志(工作正常)。
最佳答案
根据 Microsoft 的说法,您不应使用任何 .NET 语言编写密码过滤器。他们声明“由核心操作系统进程加载的组件中的任何高级语言、框架或运行时的行为是未定义的。”
关于c# - 在 Windows 2008 R2 中注册我的密码过滤器后没有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20950841/