Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 快捷键-CTRL+;ALT+;更改密码_C#_Windows Authentication - Fatal编程技术网

C# 快捷键-CTRL+;ALT+;更改密码

C# 快捷键-CTRL+;ALT+;更改密码,c#,windows-authentication,C#,Windows Authentication,我希望能够引导用户进入Windows内置的Windows CTRL+ALT+DEL更改密码屏幕,但我还没有找到实现这一点的任何线索。 这是我想要使用的东西,而不是通过一种不太安全的方法来创建我自己的Windows窗体。 是否有命令行快捷方式、C#或PowerShell字符串可以在需要时为用户加载此屏幕 关于此, 我试着联系你saslib@ms但电子邮件已经反弹 “net user”命令没有帮助,因为我需要它来进行域(AD-DS)用户登录 多谢各位 更新 这可以通过中包含的Sas.dll中的Sen

我希望能够引导用户进入Windows内置的Windows CTRL+ALT+DEL更改密码屏幕,但我还没有找到实现这一点的任何线索。 这是我想要使用的东西,而不是通过一种不太安全的方法来创建我自己的Windows窗体。 是否有命令行快捷方式、C#或PowerShell字符串可以在需要时为用户加载此屏幕

关于此,

我试着联系你saslib@ms但电子邮件已经反弹

“net user”命令没有帮助,因为我需要它来进行域(AD-DS)用户登录

多谢各位


更新

这可以通过中包含的Sas.dll中的SendSAS函数实现。此函数需要在C#中调用

您还可以构建一个自定义表单,直接在广告中更新用户密码

using (var context = new PrincipalContext( ContextType.Domain ))
{
  using (var user = UserPrincipal.FindByIdentity( context, IdentityType.SamAccountName, userName ))
  {
      user.SetPassword( "newpassword" );
      // or
      user.ChangePassword( "oldPassword", "newpassword" );
  }
}

你好,不可能是一个非常大胆的说法。我有几种形式可以做到这一点,几乎每次有人问“这安全吗?”你可以证明它安全地到达月球,但人们仍然争论它。使用内置的Windows功能一直是可能的,只是有时非常困难。我总能找到答案,即使这需要几个月的时间。会有办法做到这一点,但我仍在测试和谷歌搜索。谢谢,请注意,您只需要Vista上的SDK,
sas.dll
包含在所有更高版本的Windows中。默认情况下,SendSAS()只能由运行在安全桌面上的易访问应用程序调用。您可以使用组策略来更改规则。SAS工作后,您仍然需要选择“更改密码”选项。应该可以向LogonUI.exe发送击键或窗口消息来执行此操作(当然不支持!),但您的代码必须在安全桌面上运行。(大概有一种支持的方法可以做到这一点,但我不熟悉。)谢谢各位,这些信息让我进一步思考,我正在再次调查。将Win 8.1 SDK视为旧版本不会安装在Windows 10中。同时查看shgina.dll。我很快就会更新