PHP IIS 验证访问网络驱动器文件

PHP IIS Authenticated Access to network drive files

我正在尝试使用 PHP 设置对位于本地网络驱动器上的 mdb 文件的访问权限。 当前,当尝试访问“//servername/folder/file”时,服务器显示 'Access restricted',这是可以理解的,因为网络用户无权访问它。

  1. 是否可以在 IIS 中设置对网络驱动器上特定文件的 'read only' 权限(限制对该驱动器上任何其他 files/folders 的任何其他权限),是是否需要安装?

  2. 这样的访问可以用密码验证吗? (实施不应影响其他本地用户访问此网络驱动器的能力)。

  3. 任何提示将不胜感激! (基本上 PHP 需要访问(只读)位于共享驱动器上的单个文件,但该访问应该是最大安全的)

谢谢!

关于您的一些问题,我将给出如下答复:

首先,无需安装third-party插件即可在IIS中对网络驱动器上的特定文件设置“read-only”权限。

如果你想通过服务器A中的UNC路径访问服务器B共享文件夹中的特定文件,并且对该文件只有read-only权限,你可以执行以下操作:

1、在ServerA上创建一个用户名,并将该用户放入IIS_IUSRS组;同样在ServerB中创建相同的用户名和密码(必须相同,否则UNC认证无法登录)

2、在ServerB中创建一个共享文件夹。在共享设置中,为IIS_ShareUser用户添加读取权限(如果需要存储东西,添加写入权限)

3、在serverA的站点上创建一个虚拟目录,路径指向\\serverB\images,以特定用户连接,手动输入新的用户名和密码。

4、Select服务器A中站点对应的应用程序池,在高级设置中找到身份选项,下拉到select自定义账户,设置新的用户名和密码,这样就可以通过服务器A中的UNC路径访问服务器B中的文件了。

5、如果需要对网盘的某个文件设置“read-only”权限,限制其他文件的其他权限,可以在该用户名下设置权限服务器 B 中的文件。

另外,关于你的第二个问题,IIS默认直接使用应用程序池中的身份访问。如果想在访问共享文件前输入用户名和密码,需要在程序中写代码实现pop-up框输入用户名和密码