XPages 可以使用 Notes Java API 对文档进行签名/加密,这里有一些示例:
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/NotesDocument_sample_JavaScript_code_for_XPages#sign
不幸的是,这一切都是由服务器身份完成的——在上面的示例中,文档由服务器 ID 签名(在 XPiNC 的情况下,它是用户的 ID),因此服务器能够加密文档(使用 PublicEncryptionKeys 字段中指定的用户的公钥)。但问题是签署或解密文件(需要私钥)。使用加密文档初始化数据源失败。
可以使用 LotusScript 代理和 Notes C API 调用来调用签名/解密方法,但 API 需要文件系统上可用的 Notes ID 文件和该 ID 的用户密码(作为字符串)。
我正在寻找建议,如何安全地签署或解密文档(例如基于存储在用户邮件文件中的 ID)。