在Windows 7登录屏幕上添加按钮 [英] Adding a button to the Windows 7 Logon screen

查看:119
本文介绍了在Windows 7登录屏幕上添加按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想为Windows 7用户实现自动重置密码功能。当登录屏幕提示时,应为域用户显示一个忘记密码按钮,该按钮将打开密码重置向导。所以问题是如何在标准的Windows登录屏幕上添加命令按钮?

I want to implement a self reset password functionality for Windows 7 users. When the Logon screen prompts the domain users should be presented with a forgot password button which will open the password reset wizard. So the problem is how to add a command button to the standard windows logon screen?

我知道Windows XP中的GINA,如下所述:
将命令按钮添加到Windows登录屏幕

I know about GINA in Windows XP as mentioned here: Adding command button to Windows Logon screen

但是这个话题已经有3年历史了,并且在Vista / Windows 7中,Microsoft提出了 Microsoft Windows凭据提供程序。

But this topic is 3 years old, and with Vista / Windows 7 Microsoft came up with "Microsoft Windows Credential Provider".

推荐答案

这些按钮称为标题,它们在凭据提供程序中实现。您所读到的有关Gina的所有内容都无法在Vista或更高版本中使用。

Those button are called "Tiles", and they are implemented in a Credential Provider. Anything you read about a Gina will not work in Vista or later.

由LogonUI.exe进程创建的磁贴,由Winlogon.exe本身启动。 LogonUI.exe具有很高的特权。您不想在那里运行任何东西。此外,您运行的任何向导都将在系统帐户下运行。除了安全性问题,任何重置 current 用户密码的操作都将无法正常工作。

Those tiles a created by the LogonUI.exe process, itself launched by Winlogon.exe. LogonUI.exe runs with high priviledges. You don't want to run anything there. Besides, any wizard you run will run under the system account. Security issues aside, anything that resets the password of the current user will not work.

但是让我们假设您有一个可以重置的解决方案用户的密码。就像网站(或本地应用程序)一样:

But let's assume that you have a solution that can reset a user's password. Like a web site (or a local application) that :


  1. 询问用户名

  2. 提出一些安全问题

  3. 连接到Active Directory重置密码

然后这是一个实现功能的方法。

Then here is a way to implement the functionality.

创建一个用户,如果可能的话,创建一个域用户。给它起一个易于记忆的名称和密码,例如 reset和 reset。确保所有人都知道密码。

Create a user, a domain user if possible. Give it a name and a password easy to remember, like "reset" and "reset". Make shure that everybody knows the password.

更改该用户的外壳为Internet Explorer,您将以信息亭模式运行,指向您的Web应用程序。

Change the shell of that user to Internet Explorer, that you would be running in kiosk mode, pointing to your web application.

现在,当有人想重设密码时,他们将执行以下操作:

Now when someone wants to reset their password, here is what they will do :


  1. 像每天一样使用标准Windows凭据提供程序,但是使用用户重置和密码重置。

  2. 他们将代替普通的Windows shell会显示给您密码重置Web应用程序。

  3. 用户重置密码,并指示他们使用 CTRL ATL < kbd> DEL

  4. 他们可以使用自己的用户名和全新密码登录。

  1. Use the standard Windows Credential Provider, like they do every day, but with the user "reset" and the password "reset".
  2. Instead of the normal Windows shell, they will be presented with your password reset web application.
  3. The user resets their password and they are instructed to log off using CTRLATLDEL
  4. They can log in with their own username and brand new password.

如果您准备编写一些代码,则可以改进此想法:

This idea can be improved upon if you are ready to write some code:


  • 代替Internet Explorer,编写一个简单的Web包装Web浏览器控件的应用程序。

  • 缺少一个凭据提供程序示例来提供众所周知的密码重置用户名和密码,只需单击一下即可重置密码。

  • 更改该密码重置凭据提供程序的图像以反映密码重置功能。<​​/ li>
  • Instead of Internet Explorer, write a simple web application that wraps the web browser control. if the application is closed, or any other funny business, logoff.
  • Hack one of the Credential Provider samples to supply the well know password reset username and password, making password reset merely a click away
  • Change that password reset credential provider's image to reflect the password reset functionnality.

这篇关于在Windows 7登录屏幕上添加按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆