首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xPages xAgent安全性

xPages xAgent安全性
EN

Stack Overflow用户
提问于 2012-04-21 20:58:20
回答 3查看 885关注 0票数 3

我目前正在实现Mark Leusink的OpenNTF多文件上传器。

这个非常好的自定义控件使用xAgent将选定的文件附件嵌入到目标Notes文档中。在我将Authors和Readers字段添加到Notes文档之前,一切都很正常。现在我在上传文件时收到一个安全错误(402)。

我的想法是Upload xAgent不能编辑目标文档来附加文件。如果我删除安全字段,一切都会恢复正常。

我的问题是,xAgents是否使用与当前用户相同的安全性运行?如果没有,我是否可以像设置Lotus脚本代理一样为xAgent设置一个"run as“用户?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-04-21 22:42:38

我建议您查看xAgent的代码并重写它,以便使用sessionAsSigner访问数据库/文档来上传文件。这将导致它作为应用程序的签名者运行,并绕过您遇到的安全问题。

票数 5
EN

Stack Overflow用户

发布于 2012-04-22 17:11:32

Tom和Declan的答案都是正确的,但这不适用于文件上传器。

它使用闪存组件进行实际的上传(称为SWFUpload)。由于浏览器cookie不与Flash共享,因此它不能将用户的会话cookie与文件一起发送到Domino服务器,因此执行上传的用户没有登录(也称为匿名)。这就是为什么上传器要求允许匿名用户读/写ACL中的公共文档,并将处理上传文件的XPage/ XAgent (aUpload.xsp)设置为允许“公共访问用户”。它使用sessionAsSigner对象来访问数据库的内容

通常,上述设置将允许每个人匿名上传文件。这就是我基于Mark Barton的想法实现自定义authentication solution的原因:在上传每个文件之前,都会向XPage发出一个请求,以检索唯一的密钥。该(aGetAuth.xsp) XPage在用户的凭证下运行,并将密钥存储在数据库的文档中。该密钥与上传的文件一起发送,并与存储的密钥进行比较。仅当密钥匹配时才允许上传。

在您的例子中,我首先要检查aUpload.xsp XAgent中的代码是否可以使用sessionAsSigner调用读写目标文档。

票数 2
EN

Stack Overflow用户

发布于 2012-04-23 07:58:18

马克,德克兰和蒂姆,感谢你们的加入。

我修改了xAgent **aGetAuth.xsp**以使用sessionAsSigner来获取当前数据库。起初,我得到了错误"sessionAsSigner not found"

谷歌显示,一个快速的答案是在测试之前重新签署模板。在重新签署模板后,两次,并执行一个“干净”,一切工作出色。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10259124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档