2012-09-26 24 views
1

我希望创建将由除调用它之外的其他用户执行的Web脚本。原因很简单:没有权限更改某些对象的用户可以添加/删除标签,因此该标签操作应该以其他用户身份完成。以其他用户身份在JavaScript中运行Alfresco

有没有办法做到这一点作为Web脚本没有干涉Java?

或者换句话说,有没有一种方法可以在没有Java的情况下实现这个功能(在没有写入权限的对象上添加/删除标签)?

谢谢!

D

+0

请参阅提示'runas'的答案,但请记住,您的web脚本应该仔细设计 - 如果它太灵活,那么您可能会授予用户很多权力! – DNA

回答

4

在户外的一些任务,如创建用户或组需要管理员权限。 如果您想以普通用户身份执行这些操作,您可以暂时在web脚本中向这些用户授予管理员权限。

简单地改变webscript认证使用<authentication runas="admin">user</authentication>here

OR

在描述符文件不发生变化,但在webscript控制器文件。 编码细节和如何实现可以在sudo like tools(1) here找到。和sudo like tools(2)

希望它会有所帮助。

+0

我发现这些链接对我很有价值。 – swemon

+0

谢谢你的回答,我会使用你的第一个建议 –

+0

我编辑我的答案为另一种方式只在webscript中进行更改。 :d – swemon

4

就像瑞蒙说的,你可以做到这一点。 (即webscript.get.desc.xml)的webscript声明文件保存,除其他外,该行:

<authentication>user</authentication> 

这是怎么运行 - 作为身份验证的用户。 你还可以说:

<authentication>guest</authentication> 

这意味着webscript任何人都可以跑。

最后,你可以说:

<authentication runas="admin">user</authentication> 

这意味着webscript将具有管理权限。

然后,您可以访问javascript控制器文件中所有需要的数据。