【发布时间】:2014-10-31 01:27:48
【问题描述】:
我的组织有一个有效的组策略,它只允许可执行程序驻留在 Program Files(或 Program Files X86)目录下。显然,这些目录对于普通用户是不可写的。我可以访问本地管理员权限,因此如果需要,我可以在那里安装东西。但是当然将整个 cygwin 树放在那里是没有意义的,因为用户需要能够写入 /home、/tmp 等。我想我可以用链接做一些事情,也许安装到c:\cygwin,然后只移动 Program Files 下的 /bin 目录并创建一个到它的硬链接?
有没有人遇到过类似的情况并想出了一个优雅的解决方案?这是 Win 7 企业版。
【问题讨论】:
-
类似的问题和答案在stackoverflow.com/questions/3343988/…。我不确定这是否是最好的,但答案是 6。
-
@HarryJohnston:你到底是什么意思?您是否期望用户空间
cygwin1.dll提供真正的安全性或其他东西? Cygwin 只能使用它在平台上找到的机制。例如,Cygwin 文件可以通过 NTFS ACL 保护,操作系统内核将强制执行这些。 -
其实没多久就发现了:“从 1.5.13 版本开始,Cygwin 开发人员不知道 cygwin dll 中有任何功能可以让用户获得权限或访问他们在 Windows 下无权访问的对象。”所以问题不存在了。
-
@HarryJohnston:Cygwin 1.5.13 是nearly a decade gone now。无论如何,我关于 Cygwin 纯粹是用户空间的观点是,你不能指望它强制执行诸如 read-only shared memory 之类的东西。共享内存位于所有 Cygwin 进程的内存空间中,因此 Cygwin DLL 不会强加动态链接到它的进程无法绕过的障碍。
-
@WarrenYoung:这是有道理的,不是吗?在 Windows 中,同一进程的不同部分之间从来没有任何安全性,AFAIK 对 UNIX 也是如此。我在谈论属于不同用户的进程之间的安全性。但这一切都没有实际意义,因为事实证明我的信息已经完全过时了。
标签: windows-7 cygwin group-policy