在预定代理上执行 @Certificate([Key Length];Certificate) 的解决方法?

workaround to execue @Certificate([KeyLength];Certificate) on scheduled agent?

我有一个从 Names.nsf

检索数据的数据库

我想用 Domino Directory 中每个人的 public 证书长度值填充一个字段。 @Certificate([KeyLength];Certificate) 从视图(代理视图)或打开文档时执行作业。

但在预定代理中使用时不返回值:

doc.CertificateLength=Evaluate("@Certificate([KeyLength];Certificate)",doc)

我们有解决办法吗? Unitil 我只找到了 uidocument 的解决方案,没有后端解决方案。

证书项设置了 PROTECTED 标志。如果您在文档属性对话框的第二个选项卡上的字段列表中查看该项目,您可以看到它。

该标志表示您需要编辑者访问权限或更高权限才能访问该字段。因此,问题很可能是您的代理人 运行 的身份没有编辑者访问权限。验证代理的签名者在数据库的 ACL 中是否具有编辑权限。此外,在 Domino Designer 中打开代理程序,并检查 Security 属性选项卡上的运行时安全级别。可能需要将其设置为级别 2(允许受限操作),但我不确定。在任何情况下,如果它得到您的签名并且您只有 Reader 或作者权限,请使用适当的 ID 文件重新签名。想一想,如果是你的代理,除非是私人代理,否则你有设计者权限,所以可能是运行时安全级别设置。