AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 27564
In Process
Jordan Milne
Jordan Milne
Asked: 2009-06-18 11:24:13 +0800 CST2009-06-18 11:24:13 +0800 CST 2009-06-18 11:24:13 +0800 CST

如何为经过身份验证的用户禁用 ctrl+alt+delete 菜单中的“关机”,但启用计算机上的电源按钮?

  • 772

我正在工作中配置一台自助服务终端 PC。我遇到的唯一大问题是,如果不禁用计算机本身的电源按钮,我似乎无法禁用 control+alt+delete 菜单中的关机按钮(因此只有员工可以将其关闭)。对特定用户完全禁用 control+alt+delete 菜单也是可以接受的。

我找到的唯一真正的答案是编写我自己的 GINA 存根,这有点超出了项目的范围(和我的能力)。

附加详细信息:完全不使用资源管理器外壳,将在 kiosk 应用程序死亡时重新启动它的程序用作外壳。计算机也将被锁在一个柜子里,让用户只能访问显示器和 kb/鼠标。

windows permissions gina
  • 6 6 个回答
  • 5752 Views

6 个回答

  • Voted
  1. user178752
    2013-06-22T10:27:04+08:002013-06-22T10:27:04+08:00

    注册表编辑器 -

    (防止)不登录就关机:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system]
    "shutdownwithoutlogon"=dword:00000000
    

    适用于 XP - 没有尝试过 >= win7

    登录时 Ctrl+Alt+Del:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
    "NoClose"=dword:00000001
    

    开始菜单:

    [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
    "NoClose"=dword:00000001
    
    • 4
  2. Luke99
    2009-06-18T12:03:08+08:002009-06-18T12:03:08+08:00

    您是否考虑过使用Microsoft SteadyState?

    还有一个实用程序可让您轻松启用或禁用任务管理器。

    • 2
  3. user9326
    2009-06-18T12:07:30+08:002009-06-18T12:07:30+08:00

    我认为这种方法可以满足您的需求。我不确定这是否会影响电源按钮(可能取决于 BIOS 电源设置)。

    • 2
  4. BillN
    2009-06-18T16:04:01+08:002009-06-18T16:04:01+08:00

    不确定此信息亭是否属于域。如果您以某个用户的身份登录,那么您可以创建一个阻止关机的 GPO,并将其绑定到其中包含该用户的 OU。您的员工的登录信息不会在 OU 中,因此他们不会获得 GPO,并且将保留通过开始菜单关闭的功能。我们在呼叫中心执行此操作,我们希望 PC 在一夜之间保持打开状态,以便可以修补它们。如果他们真的需要关闭,管理员或经理可以登录并关闭。

    • 0
  5. Jordan Milne
    2009-06-18T22:03:52+08:002009-06-18T22:03:52+08:00

    我之前忽略了注册,我无法添加评论,所以我只想添加这个作为答案。

    我对考虑使用另一种锁定计算机的方法(如 SteadyState)有点远,除了关机按钮和 ctrl+alt+delete 之外的所有内容都被锁定,但我会牢记这一点未来。

    至于作为域一部分的计算机,不,它不在域上,并且用户是本地用户。

    明天我会看看 zerrias 建议的方法,看看它是否符合我的需要。

    • 0
  6. Jordan Milne
    2009-06-19T20:44:41+08:002009-06-19T20:44:41+08:00

    我找到了一种为经过身份验证的用户禁用 ctrl+alt+del 菜单的方法。结果我确实需要使用 gina stub (实际上,我修改了现有的 stub)。

    这个 gina stub 显然有几个额外的功能,例如强制登录/注销脚本和在登录前禁用 ctrl+alt+del 提示而不编辑注册表。我不得不使用这个,因为 Microsoft 在 Windows XP 平台 SDK 中的示例对我来说无法正常启动,而且我找不到另一个合适的存根。

    我对存根所做的唯一修改是将 gina.c 中 WlxLoggedOnSAS 的内容更改为

    #ifdef DEBUGLOG
        fprintf(fpginalog,"WlxLoggedOnSAS, SasType=%i.\n",dwSasType);
        fflush(fpginalog);
    #endif
        if (dwSasType == WLX_SAS_TYPE_CTRL_ALT_DEL)
        {
            /* Eat the ctrl+alt+del event */
            return WLX_SAS_ACTION_NONE;
        }
        else{
            return GWlxLoggedOnSAS( pWlxContext, dwSasType, pReserved );
        }
    

    然后我在 Visual Studio 中构建项目并将生成的 newgina 移动到 C:\Windows\system32

    最后一步是添加一个注册表项,让它在启动时加载 gina 存根

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
    "GinaDLL"="C:\\windows\\system32\\newgina.dll"
    

    缺点:

    • 这也为管理员禁用了 ctrl+alt+del,但他们有开始菜单,所以对我来说这不是问题。可能会通过一些修改来修复

    • 如果您不使用资源管理器外壳,则无法注销,重置计算机是您唯一的选择。可以使用另一个程序来注册退出热键。

    • 当按下 ctrl+alt+del 时,屏幕会闪烁几分之一秒。

    • 可能无法在 XP SP3 或 Vista 上运行(根据其他站点上的几个线程)

    笔记:

    我现在手头没有修改后存根的二进制版本(而且 Google 的 OpenID 登录在工作时被阻止,所以我不能从那里上传它,)但是如果你想自己编译存根,只需获取Visual C++ Express Edition并打开项目,然后将gina.c中WlxLoggedOnSAS里面的代码替换为前面提到的代码。当你构建它时,你应该得到一个 newgina.dll

    • 0

相关问题

  • 您最喜欢的云计算提供商是什么?[关闭]

  • Vanilla Powershell 是否足以成为 Windows 和 DB 服务器管理员的语言?

  • 为什么添加新驱动器后我的磁盘驱动器访问速度如此之慢?

  • 在 Windows Server 2003 下使用 wscipt 从 .asp 文件运行 .exe

  • 最佳混合环境(OS X + Windows)备份?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve