有限的用户如何从他的工作站上启动服务器上的任务

我们有一个批量报告软件(Visual Cut),可以用来生成PDF文件的需求报告。 它运行在一台服务器上。

我不希望在每个人的计算机上安装软件,而不需要生成PDF,因为必须单独在每台计算机上设置单个报告configuration选项。 我周期性地改变这些选项乘以机器的数量会很快变得烦人。

该软件可以从一个简单的命令行触发。

用户如何在服务器上启动这个命令行进程?

这不是需要按计划运行的事情,而是根据需要特别设置的。 最后说明:这两个系统都是Windows。

你在说一个Windows服务器和widnows工作站吗? 也许你可以从sysinternals使用psexec: http : //technet.microsoft.com/en-us/sysinternals/bb897553.aspx

您可以在远程服务器上指定一个命令

psexec -u domain \ user -p pass \\服务器命令

grub的psexec答案似乎是一个快速和肮脏的解决scheme的好select。 您可以将其作为批处理脚本推送到桌面。

你也可以考虑把命令包装成一个简单的CGI webapp。 基本上是一个单一的窗体和几个button接受参数(如果需要)的页面启动您的EXE。 人们喜欢webapps :-)。

脚步:

  1. 在Active Directory中创build一个域本地组“应用程序组”
  2. 在Active Directory中,创build一个全局组“Application Users”,将Application Users全局组作为成员添加到Application Group域本地组。
  3. 在Active Directory中,将需要访问此应用程序的用户作为成员添加到“应用程序用户”
  4. 在服务器上给应用程序文件夹上的“应用程序组”域本地组读取和执行NTFS权限(至less)。 为PDF输出文件夹提供写入权限。
  5. 在服务器上,在应用程序文件夹上创build一个共享。 删除每个人共享权限,并添加“应用程序组”的读/写(如果PDF输出文件夹在同一层次结构内)
  6. 创build或修改现有的batch file以使用所需的命令行选项调用应用程序(确保UNCpath正常,或根据需要映射驱动器)。
  7. 在应用程序用户(不是服务器上的pipe理员)
  8. 将访问方法传达给最终用户。

如果用户只是需要最新的报告,没有任何额外的input参数,我会创buildASP.NET应用程序(类似sleskebuild议),但它只是单一的URL用户可以点击并看到在浏览器中打开的PDF报告。

您可能需要考虑设置terminal服务,并允许有限的用户远程桌面到安装应用程序的服务器上,以在服务器上“本地”运行。 这就是我过去对于只有几个许可证的应用程序所做的事情 – 而不是尝试获取许可证以将应用程序推送到每个工作站。

否则,psexec选项可能是您最好的select。