在进行安全审查之后,我正在拆分当前在公司域中的单个计算机上的Windows 2008 Server应用程序的层。 我想将IIS 7 Web UI移动到域中的新计算机上,以便用户可以使用其AD帐户进行身份validation,并将其余(应用程序层和数据库服务器)留在当前计算机上,但从防火墙后的域中移出。
应用程序层服务需要在域服务器上的各种共享上创build文件。 以前,服务作为一个特殊的域用户运行,可以访问共享。 现在这是不可能的。
有没有办法允许域服务器上的共享文件夹(通常是资源)访问非域用户/机器?
您可以授予访问域资源(即共享)到一个非域的机器…提供的服务在该机器访问共享使用远程凭据:
第二种是最安全的方法(坐在应用程序层计算机上的远程攻击者将无法访问域帐户(可访问整个域),而只能访问其拥有本地帐户的域计算机。
但是你将无法简单地设置这样的用户来运行应用程序服务。 您必须在应用程序中拥有一些支持才能根据连接到的服务器来指定不同的凭据。
因此,如果支持这种情况=>说您的应用程序层机器APPTIER在MSHOME工作组中,并且您的共享位于MYDOMAIN域中的\\ SERVER1 \ share1和\\ SERVER2 \ share2:
有人有类似的问题在这里回答
未经身份validation的用户如何访问Windows共享?
以下是给出的答案的剪切/粘贴
要做你想做的事情,你必须在托pipe文件的计算机上启用“访客”帐户,然后授予“每个人”组无论你想要的访问。
“访客”是一个用户帐户,但其启用/禁用状态被操作系统解释为布尔“允许未经validation的用户连接? 权限仍然控制对文件的访问权限,但是您通过启用访客权限来打开一些权限。
不要在域控制器计算机上执行此操作,因为您将成为所有DC上的Guest …
添加到菲尔的答案和克里斯的评论,启用来宾帐户是不是一个选项(我第二 – 客人永远不应该启用),我必须说:不,没有办法实现单独的Microsoft Windows所需的结果。
不过,使用第三方产品build立解决scheme也是可能的。 考虑以下大概的想法:
在域成员上设置SSH隧道端点。 如果我们假设SSH服务器允许使用用户名和密码login,那么它可以将这些信息传递给DC–而且,您可以从非域计算机连接并使用用户名和密码login。
如果您希望任何人都可以读取这些文件,请将EVERYONE条目添加到文件夹和SHARE权限(始终同时执行这两个操作)。 这样任何人都可以读取文件。 当然,您可以让他们始终进行身份validation,因为客户端计算机不必位于相同的域或甚至域中就可以访问需要身份validation的共享。
由于在文件服务器上需要额外的安全性,所以启用Windows防火墙并且只有所有CIFS / SMB从“受信任”的IP地址访问。