分享
 
 
 

用 Java 访问 Domino 的对象(四)--来源IBM官方网站

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

访问控制

客户端的程序可以得到什么存取级别取决于createSession 的使用方式和服务器/客户端的设置。访问控制是通过以下两种方式之一实现的:

Domino 目录中的用户名及其 Internet 口令。 这种方式对本地调用和远程调用都可以使用。对于本地调用,所访问的必须是 Domino 服务器。

当前 Notes ID (Notes.ini 文件中 KeyFileName 参数所指定的 ID)

这种方式只在进行本地调用时可以使用。程序所在的计算机上有 Notes 客户端或 Domino 服务器都可以。 通过 Domino 目录访问

通过 Domino

目录访问时,所使用的代码将决定是作为匿名用户还是 Domino 目录中已有的用户来访问。NotesFactory调用中,如果只指定了主机名,或使用空字符串作为用户名和口令,将以匿名用户的身份访问服务器。例如:

Session s = NotesFactory.createSession("myhost.east.acme.com:63148");

或者:

Session s = NotesFactory.createSession("myhost.east.acme.com:63148", "", "");

要以某个 Domino 用户的身份访问服务器,需要在参数2和参数3中分别指定用户名和 Internet 口令。用户名和口令必须与 Domino 目录中的某个个人文档匹配。例如:

Session s = NotesFactory.createSession("myhost.east.acme.com:63148", "Jane Smith/East/Acme",

"topS3cr3t");

对 Domino 服务器进行本地调用时,主机名应为空: Session s = NotesFactory.createSession("", "Jane Smith/East/Acme", "topS3cr3t") 要进行匿名的本地调用,三个参数都应为空:

Session s = NotesFactory.createSession("", "", "")

进行本地调用时,服务器不一定要运行。 服务器文档中的设置决定了是否可以进行匿名或用户名/口令的访问。在服务器文档中,"端口"-"Internet 端口"-"DIIOP"标签下,验证选项与代码的关系如下表:

验证选项与代码的关系如下表

代码

验证选项

createSession(host, "", "")

createSession(host, name, password)

匿名必须设为"是"才能访问服务器名称和口令必须设为"是"才能访问服务器

对于名称和口令验证,名称必须是 Domino 目录中某个个人文档中的用户名,口令必须是此个人文档中的 Internet 口令。管理员还可以将"强制使用服务器访问设置"选项设为"是",以强制 DIIOP 的访问遵循服务器文档的安全性标签下的"服务器访问"设置。

服务器文档中的以下域可以用来控制 Internet 会话的安全性。从本质上来说,本地或远程 Java 类创建的Internet 会话的访问权限等同于 Web 用户。

服务器文档中的以下域可以用来控制 Internet 会话的安全性

说明

服务器访问权限

访问服务器

进行远程或本地调用的用户必须列在此域中

禁止访问服务器

如果用户被列在此域中,无论远程或本地连接都不能建立

创建数据库和模板

用后台方法能否创建新数据库和模板

创建新复本

用后台方法能否创建复本数据库

创建主模板

用后台方法能否创建主模板

编程限制

运行无限制的方法和操作

列在此域中的用户可以在Domino服务器上运行受限制的Java方法*。 如果程序 所使用的用户没有列在此域中,则不能在Domino服务器上执行这些方法,例如 访问Domino服务器的文件系统等,但仍可以在程序所在的计算机上执行各种方 法,包括访问本机的文件系统。

签名将代表其他人运行的代理

作为Web用户运行的代理将以Internet会话中的用户身份运行

签名将代表代理的调用者运行的代理

作为Web用户运行的代理将以Internet会话中的用户身份运行

Internet 访问

Internet 验证

限制可以使用哪些名称作为用户名来登录

* 哪些方法是受限制的请参考 Domino 6 Designer Help 中的"Restricted LotusScript and Java agent operations" 。

服务器文档中"端口"-"Internet 端口"下,DIIOP 标签中的域的说明如下表:

服务器文档中"端口"-"Internet 端口"下,DIIOP 标签中的域的说明

说明

(TCPI/IP)姓名和口令

DIIOP 验证要求用户名和口令

(TCP/IP)匿名 DIIOP

验证不要求用户名和口令

(SSL)姓名和口令

DIIOP SSL 验证要求用户名和口令

(SSL)匿名

DIIOP SSL 验证不要求用户名和口令

强制使用服务器访问设置

DIIOP是否强制使用安全性标签下的服务器访问设置

以下notes.ini参数也会影响远程或本地Java 类建立的Internet会话的安全性:

notes.ini参数也会影响远程或本地Java 类建立的Internet会话的安全性

Notes.ini设置

说明

NoAmbiguousWebNames

NoAmbiguousWebNames=1时,如果用来登录DIIOP的用户名在$Users视图 中有多个匹配,则登录失败

WebNameAuthentic

WebNameAuthentic=1时,用来登录DIIOP的用户名应该是用户的全名

NABWebLookupView

设置NABWebLookupView="xxx",则Domino将在Domino 目录的"xxx"视图中 查找用来登录的用户名

注意在数据库的存取控制表中,"Internet 用户的最大权限"设置也会对 Internet 会话的权限产生影响,DIIOP 的登录用户的权限不能超过此项设置。

服务器大约每一个半小时刷新一次安全性的缓存。修改了安全性设置后,可以使用控制台命令"tell diiop refresh"来强制刷新。

通过 Notes ID 访问

要通过当前 Notes ID 访问服务器,在调用时应不指定任何参数:

Session s = NotesFactory.createSession()

在这种情况下,如果需要验证(如打开数据库时),会弹出一个对话框,提示输入Notes ID的口令。所使用的Notes ID是在搜索路径中能找到的第一个Notes.ini文件中,KeyFileName变量指定的。例如,Notes.ini 中有以下参数时,程序将使用 admin.id 来访问服务器:

KeyFileName=admin.id

必须输入该ID的口令,或按"取消",程序才能继续执行。 也可以将第二个参数指定为"(String)null",在第三个参数中指定该Notes ID的口令:

Session s = NotesFactory.createSession((String)null, (String)null, "tops3cr3t")

在服务器上,以上方法会按读者域限制访问,要进行完全的访问,可以用以下方法:

Session s = NotesFactory.createSessionWithFullAccess()

或者

Session s = NotesFactory.createSessionWithFullAccess("tops3cr3t")

结论

您现在了解了用Java应用程序对Domino对象进行本地调用和远程调用的基本方法。关于较复杂的访问方式,如SSL加密,servlet,连接池,单一登录,防火墙,超时控制,资源回收及问题诊断,请参考以下文章:

http://www-10.lotus.com/ldd/today.nsf/lookup/Java_access_2 (美国)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有