我有三台服务器。
- 服务器 1 - 打印服务器,Windows Server 2008 标准版
- 服务器 2 - 域控制器,Windows Server 2008 R2 标准版
- 服务器 3 - 终端服务服务器,Windows Server 2008 R2 标准版
在服务器 1 上,我安装了 5 台打印机。所有打印机都是 TCP/IP 打印机。应该限制一台打印机,以便只有指定 AD 组的成员才能打印到它。因此,在“打印管理”中,在受限制打印机的“安全”选项卡中,AD 安全组受限打印机 - 授权域用户被授予了打印允许权限。具有打印允许权限的默认 Everyone 组已被删除。
唯一的成员受限打印机 - 授权域用户是 Domain\TestAllowed。
所有 5 台打印机都通过服务器 2 上的 GPO 安装在服务器 3 上,服务器 2 上的 GPO 会自动添加打印机。一切正常。
然后,我以 Domain\TestProhibited 身份登录到服务器 3 并尝试打印到受限打印机,然后页面就打印出来了。
为什么打印该页面?我需要做什么才能确保只有受限打印机 - 授权域用户能够打印到受限打印机吗?
我已经阅读(并确认我正确配置了 ACL)Microsoft 的 TechNet 页面设置打印服务器的权限。
我甚至明确拒绝了 Domain\TestProhibited 在服务器 1 上的受限打印机上的打印权限。我注销了服务器 3,重新登录后,Domain\TestProhibited 仍然能够打印到受限打印机。
答案1
看来,即使打印机通过共享打印机名称安装在终端服务服务器上,更改打印服务器上打印机的安全权限也不够。
如果我登录到终端服务服务器,我会发现当使用组策略安装打印机时,打印机的安全权限不会被转移。在我登录到终端服务服务器并更改打印机的安全权限后,我注销并重新登录,现在打印机已正确限制。
答案2
Windows 中网络打印的重点是它们有两个对象:端口和队列。
对于您的设置,您在 Server1 上创建了一个端口和一个队列,并且为该队列设置了 ACL。然后,在 Server3 上(通过 GPO),出于某种原因,您显然使用 Server1 的端口创建了一个新队列,而不是指向 Server1 上的队列。而且由于该队列是新的,因此它不会从 Server1 上的队列获取 ACL!