gpt4 book ai didi

java - 如何使用匿名ID通过JAVA CORBA DIIOP连接Lotus Notes数据库?

转载 作者:行者123 更新时间:2023-12-02 05:03:55 25 4
gpt4 key购买 nike

我正在尝试从我的 Java Web 应用程序连接 Lotus Notes(8.5.1) 数据库(数据库 ACL 中默认具有编辑器访问权限)。我遵循此说明 http://www.ibm.com/developerworks/lotus/library/ls-Java_access_2/通过CORBA DIIOP远程连接Lotus Notes数据库。基本上我将 NCSO.jar 添加到 eclipse 的 java 路径中,并按照说明中所述设置服务器文档。这是我从一开始的java源代码: 导入莲花.多米诺骨牌.*; 公共(public)类 CORBAconnect {

public static void main(String[] args) {

try {
String host = "devs2:63148";
Session s = NotesFactory.createSession(host);
//I also tried this with userid and password below, the userid and password is not valid.
//Session s = NotesFactory.createSession(host, "jsmith", "js4533");//
String p = s.getCommonUserName();
System.out.println(p);
Database db = s.getDatabase("devs2", "apps/dev/market.nsf");

System.out.println(db.getFilePath() );
} catch(Exception e) {
e.printStackTrace();
}

}

}

运行java代码后,我可以看到Anonymous打印在eclipse控制台上,但是我得到了NotesException: User Anomynous无法打开数据库错误。我还尝试添加我的用户名和密码,但出现 NotesException: 无效的用户名/密码。我也看到有人发布了同样的问题,但还没有解决方案。顺便说一句,Domino 目录上服务器文档上的 DIIOP 选项卡将“匿名”选项设置为"is",有人可以帮助如何使连接正常工作吗?理想情况下,我不想在 createSession 上添加用户名和密码。但如果没有选项,那么我会使用,但现在,无论有或没有用户名和密码都不起作用。请告诉我是否有任何地方需要在 domino 服务器部分或 java 部分进行设置。谢谢

最佳答案

匿名是 domino 中预定义的用户。它在不同的进程中使用,例如:

匿名用户与其他用户一样:

  • 匿名者可以加入群组
  • 匿名是通配符“*”的一部分
  • 如果不存在匿名条目,匿名将获得默认 ACL 权限

在大多数 Domino 服务器上,匿名用户可以访问大量数据库,并且拥有不低于普通用户的权限。

就您而言,具有密码的功能用户要好得多!因为匿名用户的权限并不比功能用户少。但是来自功能用户的密码是一种小小的保护,即使您必须将密码放在不安全的环境中(例如 java jar 中的静态字符串)。可能的攻击者必须找到密码,并且在没有任何密码的情况下不具有相同的权限(匿名)。

我不建议在“运行受限的Java/javascript/COM”中添加匿名。只有管​​理员和签名者 ID 才应拥有此权限。

关于java - 如何使用匿名ID通过JAVA CORBA DIIOP连接Lotus Notes数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27985902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com