我正在制作一个应用程序,我正在阅读来自 Lotus Notes 的邮件。我已经使这个应用程序与 Domino Server 相互依赖。
但是在这种情况下。如果用户的 Lotus Notes 配置了 Domino 服务器。它会弹出密码。
我不想显示弹出窗口。不想在 UI 中添加文本框。
有没有办法以编程方式获得 NSF 密码?使用 Domino.dll。
我正在制作一个应用程序,我正在阅读来自 Lotus Notes 的邮件。我已经使这个应用程序与 Domino Server 相互依赖。
但是在这种情况下。如果用户的 Lotus Notes 配置了 Domino 服务器。它会弹出密码。
我不想显示弹出窗口。不想在 UI 中添加文本框。
有没有办法以编程方式获得 NSF 密码?使用 Domino.dll。
我认为没有 API 函数可以检索 Domino 密码。
有一个API函数可以重置密码,但旧密码是一个参数。
肖恩
你当然不能这样做。密码不存储在任何地方,但用于访问 RSA 私钥,这实际上是进行身份验证的内容。听起来好像您要去服务器上的邮件文件,但是...“如果用户的 Lotus Notes 配置了 Domino 服务器...”。如果存在未加密的邮件文件的本地副本,则无需进行身份验证即可访问它。如果它是加密的,或者您需要访问服务器,那么用户绝对需要进行身份验证。
如果这是在客户端工作站上运行的应用程序,并且用户在该工作站上运行 Notes 客户端,则可以“共享”密码,这样您的应用程序就不需要提示用户。这是一个选项,从 Notes 客户端启用。在 R8 中,此选项位于“文件”>“安全”>“用户安全”下,然后在“安全基础”选项卡下,有一个标记为“不提示其他基于 Notes 的程序输入密码”的复选框。(在 R7 和更早版本中,它在一个类似的菜单项下,我认为只是标记为“用户 ID”。)
从帮助路径:IBM Domino Designer 基本用户指南和参考 > LotusScript/COM/OLE 类 > LotusScript 类编码指南 > 通过 COM 访问 Domino 对象
调用 session.InitializeUsingNotesUserName("name", "passwordOptional")
这是在您将 session 设置为新创建的 Lotus.NotesSession 对象之后。
(在使用 Domino API 解锁 ID 后,您无法从 Domino API 获取用户密码。但是,您可以从用户那里获取密码,然后通过 Interop 将其提交给 Domino。)