JD EDWARDS SECURITY
Security, Privacy, Access Control and Governance Requirements for Connecting AI Agents to JD Edwards

Internal audit will ask who can do what, how it is evidenced and what happens when it goes wrong.
- Identity is the foundation. If every request runs under one shared service account, your JD Edwards role design has been flattened and every other control is weaker.
- Capability matters more than conduct. The agent should be structurally unable to do most things, not merely instructed not to.
- The audit record has to be produced automatically as a by product of doing the work, not assembled afterwards.
- Data handling terms decide whether ledger content may leave your boundary at all, which is a policy question before it is a technical one.
- ChatFin inherits your existing role design, calls only whitelisted orchestrations, requires approval on anything that posts and records the complete chain.
Security reviews of AI projects tend to focus on the model, which is usually the least interesting part of the risk. The model has no credentials and no network path to anything. The risk lives in the layer between the model and your ledger.
This page is organised by the questions a reviewer asks, so it doubles as a checklist you can take into the architecture session.
Identity: Whose Permissions Apply
Everything else rests on this. JD Edwards has a mature role and environment security model, and the single most consequential design decision is whether the agent operates inside it or beside it.
Because AIS sessions carry username, environment and role, an agent can inherit the requesting user's entitlements. The alternative, a single powerful service account used for everyone, is easier to build and destroys the meaning of your audit trail.

Governance is what makes finance say yes
Finance leaders hesitate on AI because they carry the consequences if it goes wrong. Clear identity rules answer that worry directly.
Some people, instead of seeing possibility, come from a place of fear. I'm going to be responsible, so I need to control it.
Caitlin Haberberger, on the AgentCFO podcast
When an agent can only see what the requesting user can see, the controller's existing controls still hold. That is usually the point where resistance turns into approval.
Least Privilege as Capability, Not Instruction
A control that depends on the agent choosing not to do something is not a control. The design principle is that most actions are impossible rather than discouraged.
The mechanism is an explicit whitelist of orchestrations the agent may call. Anything absent cannot be invoked regardless of what the model proposes, and the whitelist is short enough for a reviewer to read in one sitting.
Network and Secrets
Placement matters more than product choice here, and the constraints are conventional. The AIS Server is an internal service and should remain one under every deployment option.

Data Handling and Privacy
This is a policy question before it is a technical one, and it should be settled early because it constrains the architecture.
Decide what may leave your boundary, under what terms, and with what retention. Ledger content is commercially sensitive and frequently contains personal data in supplier and customer records, which brings privacy obligations alongside the commercial ones.
Approvals as the Primary Control
For anything that writes, human approval is the control that makes the rest defensible. It is the point at which accountability attaches to a named person.
The design requirement is that it cannot be bypassed, that the approver sees the full proposal and its evidence rather than a summary, and that thresholds follow your existing authority design rather than a parallel one invented for the agent.
"A control that relies on the agent choosing not to do something is not a control. It is a hope with a policy document attached."

The Audit Record
The record should be a by product of doing the work rather than an exercise performed afterwards, and it should contain enough that a reviewer two years later can reconstruct what happened without asking anyone.
Incident Response
Reviewers will ask what happens when something goes wrong, and the answer should be specific.
There should be a defined reversal route with its own approval, a way to suspend the agent immediately without touching JD Edwards, and a record complete enough to determine scope quickly.

Design for the Review Before You Build
ChatFin operates inside your existing JD Edwards role design, calls only whitelisted orchestrations, keeps read and write access structurally separate, enforces named approval on every posting, and produces the audit record automatically.
Auditors do not ask whether the AI was accurate. They ask who could do what, how it is evidenced, and how you would undo it.
Frequently Asked Questions
What is the most important security decision for JD Edwards AI agents?
Identity. Everything else rests on whether the agent operates inside your existing role and environment model or beside it. AIS sessions carry username, environment and role, so an agent can inherit the requesting user's entitlements. A single powerful service account used for everyone is easier to build and destroys the meaning of your audit trail, because every action is attributed to the same identity.
How is least privilege enforced in practice?
Through an explicit whitelist of orchestrations the agent may call, short enough for a reviewer to read in one sitting and subject to change control. Anything absent cannot be invoked regardless of what the model proposes. Read and write access should use distinct identities and distinct whitelists, so an analytical path has no route to posting, with value thresholds and scope exclusions on top.
What should the audit record contain?
Four things, captured automatically as a by product of the work rather than assembled afterwards: the original request and who made it, the rows and documents read retained rather than referenced, the exact proposal presented for approval before any edit, and the approval decision including approver, timestamp, modifications and the resulting document and batch number.