从Windows服务读取networking共享上的文件(作为服务的Tomcat上的应用程序)

我有一个tomcat6的webapp,它作为一个服务安装在一个WinServer(2008或2003r2,不知道肯定,人们还没有让我把它交给目前为止)。 Tomcat服务使用特定的服务帐户(不是本地的,而是在域控制器中创build的)运行,与运行服务器的帐户不同。

我们有一个域控制器,所以我们的用户总是与ActiveDirectory进行检查。

networking应用程序从networking共享文件夹中的文件夹中读取文件,该文件夹中有许多具有特殊限制的子文件夹。 指定接收文件的子文件夹configuration为允许具有以下授权的服务帐户

  • 通过文件夹/执行文件
  • 阅读项目
  • 阅读属性
  • 阅读分机 属性
  • 创build文件/写入数据
  • 创build文件夹/附件数据
  • 编写属性
  • 写分机 属性
  • 删除
  • 读取权限

然而,我的web应用程序无法访问子文件夹(它仅位于networking共享的根文件夹下, //fileServer/sharedRootFolder/myFolder )。 有趣的是:如果我把webapp指向我们用作所有员工共享文件的共同点(例如//fileServer/sharedRootFolder/ourCommonFolder )的子文件夹,webapp可以读取这些文件。 从我的工作站中独立的Tomcat(相同的6.x版本)运行的webapp可以读取这两个地方(使用我自己的域帐户运行,这恰好比“无法访问”的文件夹有更less的权限)。

是否有用户的额外configuration设置,服务器中的Windows服务或文件夹中的权限,我应该知道?

PS我正在寻找与右键 – 属性 – 安全数据给定的权限。

编辑:在这个线程 ,“login为服务”解释,但是,如果基于域的服务帐户有权访问我的networking共享(这是位于不同的服务器,相同的本地networking)我想要的子文件夹和服务帐户在启动服务作为服务login ,为了有效访问networking共享子文件夹,还应该执行什么操作?

编辑2: //fileServer/sharedRootFolder/ourCommonFolder文件夹对每个人都有权限,所以我想它指向的东西与服务configuration,基于域的服务帐户启动它和“login为服务”的东西或类似的东西。

编辑3:今天,我们为服务帐户(已经是服务器上的本地pipe理员)configuration“login为服务”,它不工作。 用尽想法…

我首先会validation这个错误实际上是缺less“用户”权限。 查看日志文件(tomcat目录中有一个名为log的文件夹) – 应用程序可以自行logging日志,否则会将错误发送到标准输出stream – 控制台 – 通常redirect到日志文件夹中的.out文本文件。

您能否以运行Tomcat的用户帐户login到服务器? 你可以从你的电脑到你需要的文件夹; 你能从服务器上到达吗? 我们需要在解决问题之前查明问题。