您的位置:首页 > 移动开发 > Objective-C

SAS OBJECT SPAWNER 的ALLOWXCMD和NONOXCMD选项在WIN2003下无效问题解决方法

2006-03-15 15:14 483 查看
     
  当你提交代码到IT IOM服务器时,如果在代码中使用了操作系统的SHELL命令,比如FILENAME PIPE或者SYSTASK命令等,那么运行这些代码的时候会报告如下错误:
   ERROR: Access is denied.
   或者
   ERROR: Insufficient authorization for SYSTASK COMMAND.
   
   由于安全原因,Object Spawner默认是使用NOXCMD选项,这样可以预防客户端提交任意类型的操作系统命令
 
  如当前用户拥有超级用户权限,那么Object Spawner在启动的时候可以加入ALLOWXCMD或者NONOXCMD选项,这样可以允许客户端使用操作系统的命令。这是可以工作的,但WIN2003SERVER例外。
 
   要在WIN2003中正确解决这个问题,则需要为BATCH组赋予对cmd.exe命令的读/执行权限。

  要验证BATCH组已经具有相应的权限,可以运行下面命令查看:
      C:/WINDOWS/system32> cacls %COMSPEC%
   
    如果权限正确,你会看到类似下面的输出:
 
      C:/WINDOWS/system32/cmd.exe BUILTIN/Administrators:F
                                  NT AUTHORITY/BATCH:R
                                  NT AUTHORITY/INTERACTIVE:R
                                  NT AUTHORITY/SERVICE:R
                                  NT AUTHORITY/SYSTEM:F
                                  PCR64DUAL2/TelnetClients:R
 
   下面的步骤指导你对BATCH租为CMD.EXE命令赋予读/执行权限
 
      1.) 你必须用超级用户登录
 
      2.) 定位到C:/WINDOWS/system32/cmd.exe文件
 
      3.) 在文件中右击鼠标,在弹出的快捷菜单上选择属性子菜单项,然后在安全卡片上,单击高级按钮
 
      4.) 在高级安全设置窗口的权限卡片上,单击添加按钮
 
      5.) 在输入对象名称以选择字段中输入BATCH,然后单击检查名称按钮,如果输入正确,BATCH名称会出现下划线。然后单击确定按钮
     
      6.) 在权限窗口,为BATCH用户组选上允许读取/运行、读取2个子项
 
      7.) 单击确认保存修改结果。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐