Windows不知道密码的“运行方式”


13

我们正在我工作的大学广播电台安装数字媒体系统。我们正在尝试使程序员(阅读; DJ,而非编码人员)能够访问音乐,而又不允许他们将音乐中的任何内容复制到闪存驱动器上或通过Internet传输。

我们正在Windows系统(客户端计算机为Windows XP,媒体服务器为Windows Server 2008)上运行。我的想法是这样。

  • 创建一个对数字媒体完全没有访问权限的用户(ProgramUser)。
  • 创建一个用户(MediaUser),该用户对程序员不了解且不知道密码的数字媒体具有只读访问权限。
  • 让用户以ProgramUser身份登录Windows,使他们根本无法访问媒体。
  • 以MediaUser身份运行我们的播放应用程序(Traktor),使程序员可以播放媒体,但不能复制或修改它。

这似乎是完美的解决方案,但是有一个陷阱。如果回放应用程序或计算机崩溃,则只有程序员才能在合理的时间内使它再次运行(我们是15 kW FM广播电台,因此停机时间很长)。因此,我的困境...

如何使程序员能够以不知道密码的用户身份启动播放应用程序?

Answers:


32

sudo.bat

@echo off
runas /user:Administrator /savecred %1

令人惊讶的是,即使重新启动或断电后,它也不会再次询问密码


2
+1为正确答案。我的上帝是那个安全漏洞
Dave Cheney

认真地讲,这怎么不知道是一个安全漏洞?为什么打开?
Marm0t

2
我相当确定这仅在帐户密码已保存在凭据管理器中的情况下才有效,因此,与OSX或其他可以保存和重复使用凭据的系统相比,这实际上不是一个安全漏洞。
马克·亨德森

您仍然需要在第一时间知道密码,如果更改密码,它将停止工作。
ivan_pozdeev '16

1

...不允许他们将其中的任何一个复制到其闪存驱动器或通过Internet传输

在这些机器上禁用USB闪存驱动器,Internet访问等。


0

我有几种方法可以解决这个问题。首先(也是更困难的)是编写一个启动Traktor的小型Windows服务。因此,ProgramUser可以向服务请求新的Traktor实例,并且该服务以MediaUser身份运行,因此Traktor以MediaUser身份启动。

另一种可能且更容易的方法是设置一个启动快捷方式,该启动快捷方式在每次登录时启动Traktor-Windows快捷方式允许您在快捷方式属性中设置适当用户的凭据。如果计算机崩溃,程序员只需要登录,他们就有一个以MediaUser身份运行的新Traktor!

希望这些解决方案之一将为您服务!


我自己和另一位管理员都是软件工程师,所以这不会有问题。我们还运行了另一个服务,该服务监视混合板的GPIO输入,因此我们已经在这样做。这是个好主意,谢谢!

0

您可以制作一个程序来启动DJ的MediaUser进程。可以这样做,使其以ProgramUser的身份运行。

MediaUser的密码/凭据将需要编译到程序中,以便它知道密码,但是最终用户永远不需要知道这一点。他们只有一个带有“ Restart Tracktor”的按钮或程序,它可以完成所有工作。

这是该过程的C#示例。唯一的更改是对凭据进行硬编码,以便DJ看不到它们。


这基本上是我要建议的内容,但请注意,这是通过隐晦实现安全性。如果最终用户可以找到并运行procmon或procexp的副本,那么他们就可以毫无问题地获得密码。
Ryan Bolger

@Ryan:在这种情况下如何从procmon或procexp获取密码?您可以获取运行进程的用户名,但我认为您无法获取凭据。我明白那个转速。用硬编码的密码设计可执行文件可以做到这一点,但是除此之外,您将如何获得此信息?

0

看看Steel RunAs。在没有其他可行的替代方案的情况下,我已在SysAdmin生涯中将其用于多个脚本。绝对方便。它生成一个可执行文件,在其中加密存储的凭据。 连锁


0

理想的情况是,您可以使用一个单独的GUI将Traktor修改为作为服务运行。这为您提供了最佳的安全性选项-Traktor随后将以具有正确凭据的用户身份运行,而无需知道其身份,也无需输入密码来重新启动它。实际上,如果它在服务管理单元中崩溃,则可以使其重新启动。

然后,用于驱动Traktor的GUI被编写为用户自己运行的自己的应用程序,它将消息发送到Traktor服务(通过TCP / IP,RPC,共享内存或任何其他形式的IPC)以使其能够执行用户想要。如果使用跨网络协议(例如TCP / IP)使GUI工作,则用户可以登录到其工作站,并且traktor服务可以在更可靠的服务器上运行,可能会锁定该服务器以防止“意外”重启。如果您还不错,则可以编写一个Web应用程序来驱动Traktor(也就是说,Web服务器会将消息发送到该服务),并且您的用户可以在家中运行该站!

traktor服务将通过服务器启动,而无需登录。


有趣的想法,但是Traktor是非常专有的,并且实际上没有API。唯一的集成点是MIDI,发送键和VST插件。尽管Traktor作为具有自定义UI的基于服务的回放引擎的想法很吸引人,但随着我们研究一种更强大的自定义UI来处理图表和播放列表创建之类的事情,这种想法很有吸引力。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.