Lotus Notes Scheduled代理无法在其他服务器中打开数据库 [英] Lotus Notes Scheduled agent failed to open database in different server

查看:134
本文介绍了Lotus Notes Scheduled代理无法在其他服务器中打开数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在服务器1中有一个数据库,该数据库引用服务器2中的多个数据库以进行记录验证.计划的代理运行时,会遇到未设置对象变量"错误.但是,当我尝试手动运行代理时(右键单击代理名称,单击运行"),它将顺利运行而没有错误.

I have a database in server 1 which refers to multiple databases in server 2 for record validation purposes. When the scheduled agent runs, it encounters an "Object Variable not set" error. However, when I tried to manually run the agent (Right click agent name, click Run) it runs smoothly without error.

我模拟了2个虚拟服务器中的数据库设置,并能够重现该错误.逐行调试显示在尝试打开其他服务器中的数据库时发生了错误.由于手动运行可以顺利进行,所以我认为代码或变量(服务器和数据库路径)没有错误.

I simulated the database setup in 2 virtual servers and was able to reproduce the error. Line by line debugging shows that the error occurred when it tries to open the database in the other server. Since manual run works smoothly, I do not think the code or variables (server & database path) is wrong.

我已经检查了所有数据库的ACL,以包括签名者和服务器,还尝试安排在所有3种安全模式(受限制,不受限制和具有管理权限的限制)下运行代理.我已经研究了服务器文档和安全性,并允许访问这两个服务器以及从这两个服务器进行访问.还有什么我可能想念的?

I've check the ACL for all databases to include the signer and server, also tried to schedule run the agent in all 3 security modes (Restricted, Unrestricted and Restricted with Admin Right). I've looked into the server document and security and allowed access to and from both servers. Anything else that I may have missed?

推荐答案

我们将调用代理程序的服务器"server1"和存储数据库的服务器"server2"调用.问题在于该代理正在以对其进行签名的用户的身份运行,而server1已验证该签名,而server2尚未验证. Server2需要知道签名,以便它可以对数据库执行ACL,因此server2必须从server1获取签名信息.但是从理论上讲,server1可能位于server2上,因此默认情况下,server2不信任来自server1的签名信息.

Let's call the server where the agent runs "server1", and the server where the database is stored "server2". The problem is that the agent is running under the identity of the user that signed it, and server1 has verified that signature, but server2 has not. Server2 needs to know the signature so that it can enforce the ACL on the database, so server2 must get the signature information from server1. But server1 could theoretically lie to server2, so by default server2 does not trust signature information from server1.

幸运的是,有一种方法可以告诉server2信任在server1上运行的代理上的签名.在server2上Domino目录中server2的服务器文档中,转到安全性"选项卡,然后找到标有受信任的服务器"的字段.在此字段中输入server1的标准名称,然后重新启动server2. (我不确定是否真的需要重新启动.)

Fortunately, there is a way to tell server2 to trust the signatures on agents that are running on server1. In the Server Document for server2 in the Domino Directory on server2, go to the Security tab, and find the field labeled "Trusted Servers". Enter server1's fully qualified name in this field, and restart server2. (I'm not sure if the restart is really needed.)

这应该允许您在server1上的代理读取server2上的数据库.

That should allow your agent on server1 to read databases on server2.

这篇关于Lotus Notes Scheduled代理无法在其他服务器中打开数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆