Notes error: Effective users of the saved agent and the saving agent must match

Graham Acres | 4 days ago | Comments

Graham here. I ran into the error on this Blog title while on a project and wanted to share the solution with the community.

Use Case

You need to automate a function that finds and disables scheduled agents in any number of databases on a target server. To make things complicated, you may have numerous Domino Domains that those servers live on. A key problem is that those scheduled agents are signed by a variety of IDs that are not the same as the signer of the agent you are writing that is running this processing. In fact, that is the specific problem.

If the signers match, the code works. If they don't, it is very likely that you will receive the error.

My agent is scheduled to run on an Admin server. The error happens when I call NotesAgent.Save() on the target agent.


NotesAgent in LotusScript and Agent in Java have more or less the same information in the Help database. We gravitated to the bottom of the page:

To save an agent from an agent that runs on a server, the executing agent must either: be signed by someone listed under "Run unrestricted methods and operations" in the saved agent's Server document in the Domino® Directory; be signed by someone listed under "Sign agents to run on behalf of someone else"; or must have the same effective user as the saved agent. The effective user may be the signer of an agent, the user listed under "Run on behalf of" in the agent properties, or the user invoking the agent if the agent is run from the Web the "Run as web user" agent property is in effect.

That's a lot to pull apart. We took this to mean that the signer of the executing agent be in the "Run Unrestricted" field of the Server document. It turned out that it was my ID that was the signer, and through nested Groups I was in fact in the field already. We tried putting my ID directly into the field. Still no luck.

Our next move was to go to HCL Support. It was a collective effort as they were able to confirm that there was only one place where that error message was generated. Some additional troubleshooting led to a few different tests that led to the solution.

The Solution

It turns out that the documentation is missing a key piece of information. It's not just the signer of the executing agent that needs to have the rights noted in the Help, but both signers! The target signer doesn't even need a Person document in the Directory. I was also able to confirm that being a member of a Group is fine if you are using the "Run unrestricted" field.

Note that my testing was on one server rather than across servers. My next test is to use two different servers. In this scenario I am not sure that the server document of the target server also needs to have the security fields updated.

January OpenNTF Webinar: Update Your Applications with Restyle and Bring them Everywhere with Nomad

Jesse Gallagher | 2 weeks ago | Comments
What is all the excitement regarding HCL Nomad and Domino Restyle? Find out more about HCL's Restyle and how it can bring a new user interface to your applications using the Notes client and Nomad on the web. In this webinar you will learn what Restyle is, see demos and learn how to use it to design better applications for the Notes client and Nomad Web. Next, learn more about Nomad and how it extends your Notes applications to the web browser, iOS, and Android. Learn how to optimize your applications for Nomad and how to setup your Domino server for Nomad.

Come see how Domino Restyle and Nomad can breathe new life into older Notes applications and the vision for future enhancements.

Our presenters will be Maureen Leland, M.E. Miller and Bob Sielken from HCL.

This webinar will take place on January 19th at 11:00 AM (New York time).

Click here to register for the webinar:

Announcing the OpenNTF Repair Café

Graham Acres | 1 month ago | Comments
repair-Jesse.png repair-Serdar.png repair-Roberto.png repair-Heiko.png

For years people have come to chat rooms hosted by OpenNTF to ask questions, share their knowledge and learn. OpenNTF is now extending that idea into a live, face-to-face meeting place every month to join and help each other: The OpenNTF Repair Café. It’s all about repairing things together.

In the public face-to-face chat room where the Repair Café is located, you’ll find other people and subject matter experts to help you make any repairs you need, be it an admin topic or anything in the vast area of software development with the HCL portfolio. The best part is, regardless of how long you have been using these tools or your area of focus, everyone has had to solve a problem, and there is always something to be learned from your experience, even if it is how the problem was solved rather than the solution itself.

Visitors bring their topics from home and work. Together with the others they start discussing ideas on how to tackle the issue in the Repair Café. It’s an ongoing learning process. If you have nothing to get fixed, you can enjoy a virtual cup of tea or coffee. Or you can lend a hand with someone else’s problems. You can also get inspired at the reading table – by leafing through our other Discord channels.

Repair Café meetups will be hosted on the new OpenNTF Discord server. Find out more and how to join here

Here is the schedule on when the Café will be open:

Development topics: Thursday, January 12 at 11:00 AM EST / 5:00 PM CET
Admin topics: Wednesday, January 25 at 11:00 AM EST / 5:00 PM CET

You can always refer to our webinars page for the schedule.

Click HERE to Join the Repair Café