session - 我希望我的 Domino Servlet 获得经过身份验证的用户 session

标签 session servlets xpages lotus-domino xpages-extlib

这似乎是一个非常基本的问题,在 Domino 上托管的正在运行的 Servlet 中,我想要访问 Domino 资源,我已经使用 IBM Notes 和 Domino 的非常精细的安全性明智地保护了这些资源。

我希望 Servlet 能够向 Domino 读取和写入数据,同时保留来自调用 Servlet(或 xAgent)的客户端的数据并防止客户端直接写入。

我很高兴能够获得代表应用程序签名者的 session 。我可以通过使用 ?open&login 调用 Servlet 并登录来获取注册用户的 session 。这不切实际。

我看过这里:How can you use SessionAsSigner in a Java Bean called from an XPage?其中 Mark Leusink ( https://stackoverflow.com/users/1177870/mark-leusink ) 暗示可以使用 ExtLib 的 getCurrentSessionAsSigner() 。我已经尝试过,使用单个用户 ID 签署了整个应用程序,但它不会返回 session 。答案似乎在于 Servlet 无法获取 FacesContext 对象。

感觉答案应该是显而易见的,但对我来说却并非如此。有什么想法吗?

最佳答案

FacesContextJSF 的东西,可以从 XAgent (=XPage) 使用。

在 servlet 中,您可以执行以下操作:

Session session = NotesFactory.createSession(null, "user", "password");

服务器 ID 通常没有密码,执行此操作将使用服务器 ID:

Session session = NotesFactory.createSession();

关于session - 我希望我的 Domino Servlet 获得经过身份验证的用户 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14771700/

相关文章:

Xpages 使用 auth Token 调用 Rest 服务

java - 提交后使用托管 Bean 模式读取/写入 XPage

php - 如果用户闲置 10 分钟,则使 Zend session 过期

http - session 、HTTP 连接之间的区别?

java - 在 Java Servlet 中按下按钮后看不到表格

tomcat - 如何将我的 Spring 申请展示到互联网上?

xpages - 如何将 3.2.0 主题与 BootStrap4Xpages 一起使用?

php - 如何使用 PHP 和 MySQL 检测用户在完成预订过程之前是否关闭浏览器或选项卡?

php - undefined offset PHP,不确定它的作用

java - 多个浏览器实例是否在同一个 session 中运行