ServiceNow Orchestration: Security and Access Design
Role Model for Orchestration
Orchestration Admin: creates and maintains workflows. Has full access to Orchestration module and can deploy workflows to production. This role requires deep platform knowledge and should be held by experienced architects.
Workflow Developer: creates and tests workflows in development and staging environments. Cannot deploy to production; admin reviews and deploys. This allows development work without production risk.
Approver: reviews and approves workflow execution when workflows have approval steps built in. This role is not about Orchestration configuration; it is about business decisions. Example: approving a server restart or a critical change.
Viewer: can see workflow definitions, execution history, and results. Cannot create or modify workflows. Useful for auditors or stakeholders who need visibility without modification rights.
Automation User (Service Account): a non-human account that workflows use to interact with other systems. This account has minimal rights: just enough to perform the workflow’s intended actions, nothing more.
Least Privilege Principles
Grant the minimum permissions needed for each role. An orchestration developer does not need to deploy to production. A workflow approver does not need to create workflows. An automation user should not be able to create new users or delete records.
For automation users (service accounts), define explicit permissions based on the workflow. If a workflow only needs to read incidents and update their status, grant those permissions only. Do not grant broad write access to all tables.
Review permissions quarterly. Remove access when people leave teams or change roles. Accumulating permissions over time is a security drift: someone who left the team a year ago might still have admin access.
Segregation of Duties
The person who creates a workflow should not be the only one who can approve it. Someone else (the admin or a peer) should review before deployment to production. This catches mistakes and prevents intentional misuse.
Critical workflows (those that make changes to production) should require approval before execution, not just before deployment. A manual approval step in the workflow ensures that even if the workflow is deployed, a human still decides whether to run it.
Separate read and write access. Users who read workflow history or execution results should not be able to modify workflows. Viewers and developers are different roles for this reason.
Audit Evidence and Logging
Log all workflow executions: who triggered it, what it did, and what the result was. These logs are essential for compliance and troubleshooting. Store logs in a central audit system, not just in ServiceNow logs.
Track approval decisions. If an approval step required a manual sign-off, log who approved it, when, and any comments they added. This creates accountability: if something went wrong, you know who signed off on it.
Retain logs for the compliance duration your regulator or policy sets. Set up automated archival: logs older than the active retention window move to cold storage.
Authentication and Credential Management
Automation users (service accounts) should use strong, unique passwords or API keys. Never hardcode credentials in workflows. Use ServiceNow’s credential store or a vault (like HashiCorp Vault) to store secrets securely.
Rotate credentials regularly (quarterly or semi-annually). If a credential is compromised, rotate it immediately. Log credential rotation: who rotated it, when, and why.
Never share service account credentials with multiple people. If team members need to run a workflow, they authenticate as themselves, and the workflow executes as the service account internally. This maintains audit trails of who triggered what.
Workflow-Specific Security
Workflows that modify critical systems (restart a server, delete records) should include approval gates and logging. Do not allow silent, autonomous changes to production systems. At minimum, log what changed and who triggered it.
Workflows that deal with sensitive data (passwords, financial data, personal information) should encrypt data in transit and at rest. Use TLS for all API calls. Never log passwords or PII.
Limit workflow scope. A workflow that manages incident tickets should only be able to read and update incidents, not users or CMDB records. This limits blast radius if the workflow is compromised.
Review Cycle and Governance
Review critical workflows quarterly. Has the workflow executed as intended? Have there been errors or unexpected behaviours? Are permissions still correct? This review catches security drift.
When systems change (a monitored server is decommissioned, an API endpoint changes), review affected workflows to ensure they still work correctly. An orphaned workflow running against a deleted system is a risk.
Document workflow purpose and dependencies. Why was this workflow created? What systems does it depend on? If any of those systems change, the workflow might break. Documentation helps catch this.
Choosing the identity a workflow runs as
Before any role model is drawn, a workflow needs a decision about the identity it executes under. Many security problems in orchestration trace back to a workflow that runs as a person who has far more access than the workflow needs, or as a shared account that nobody can trace. The choice is between three patterns, and each has a different audit story.
| Execution identity | When it fits | Audit trail it leaves | Main risk |
|---|---|---|---|
| Dedicated service account scoped to one workflow | Recurring automation touching the same tables and systems every run | Clear, if the account is named after the workflow and never shared | Scope creep when a second workflow starts reusing the account |
| The requesting user’s own credentials | Actions that must appear as the person’s own work, such as approving their request | Strong on who asked, weaker on what the automation did | Workflow inherits whatever the requester can reach, including things they should not change |
| A shared operations account | Legacy workflows that were built before anyone scoped identities | Poor, because several people and processes look identical | Any compromise exposes every workflow that uses it |
The shared operations account is the one to retire first. Replacing it is usually a matter of creating one service account per workflow family, granting it the exact table and method access the workflow exercises in testing, and switching the workflow over during a quiet window. Teams often skip the testing step and discover missing permissions in the middle of an incident.
Rotating credentials without stopping a workflow
Credential rotation is where orchestration security often breaks in production. A rotation that replaces the only working secret in one step will stop every run that depends on it, and the failures will look like connectivity faults. A safer sequence keeps two valid credentials at once for a short overlap.
- Create the new credential on the target system while the old one still works.
- Store the new value in the credential store under a separate record, not by overwriting the live one.
- Run a test execution that uses only the new record, and confirm it writes the expected result.
- Point the workflow at the new record in a controlled change, then watch the next scheduled runs.
- Disable the old credential on the target system once the overlap window has passed without failures.
The overlap window should be agreed in advance and written into the rotation record, together with who performed each step and when. A rotation without that record makes a later failure very hard to attribute.
Designing approval gates that people actually review
An approval step is only a control if the approver can see what they are approving. A common failure is an approval request that shows the workflow name and a generic summary, so the approver clicks through every time. Effective gates show the target system, the number of records affected, the reversibility of each step and the identity the workflow will run under. If the workflow can touch more than one system, the gate should name each system.
Gates belong on irreversible steps, not on every step. A workflow that asks for approval forty times per run trains people to approve without reading, which removes the control entirely. Place the gate before the first irreversible write, and let the reversible steps run unattended.
Reviewing access held by automation accounts
Access reviews often cover people and forget automation. Service accounts accumulate roles when a workflow is extended, and nobody removes the earlier grants. Review each orchestration account against the workflows that use it: list the roles granted, mark which ones the current workflow version exercises, and remove the rest. Where a role is needed by a workflow that no longer runs, disable that workflow first, then the grant.
Keep the review evidence in the same place as the access requests. The access recertification guide covers how to record a defensible retain-or-remove decision, which can be applied to automation accounts as well.
A pre-production checklist for workflow access
Run this before a workflow is promoted, and record the answers in the change record rather than in someone’s memory.
- The execution identity is a named service account, the requester’s own credentials, or a documented exception.
- Every table and method the workflow uses appears in the account’s granted roles, and nothing else does.
- Credentials are read from the credential store at run time, not written into steps or scripts.
- Each irreversible step has an approval gate that displays the target, the record count and the run-as identity.
- Failed authentication produces an alert to the owning team, not a silent retry loop.
- Execution logs record the trigger, the identity, each external call and the final outcome, and are kept in a store that the workflow’s own administrators cannot edit.
Where the security design meets operations
The access model is only as good as the handover to the people who operate the workflows. An operator who needs to rerun a failed execution should do so without learning the service account password, and without being granted write access they do not need. That usually means operators hold a rerun permission on the execution record and nothing else. The question of who may change access in the first place sits in the broader ownership model, covered in the roles and responsibilities guide for orchestration.
Frequently asked questions about orchestration security
Should a workflow ever run as the requester’s own account?
Sometimes, when the action must be recorded as the person’s own work, such as an approval they would otherwise make manually. Limit this to workflows whose actions the requester could already perform themselves, and document the exception. Otherwise a workflow quietly becomes a way to exceed a person’s rights.
How do we tell if a service account has too much access?
Compare the roles granted with the operations recorded in the execution logs over a representative period. Any role that was never exercised is a candidate for removal. Testing this against real runs is more reliable than reading the role list and guessing.
What evidence will an auditor ask for first?
Expect questions about who can change a workflow, which identity it runs under, who approved each gated step and where the logs are kept. Having those four answers written down and linked to each workflow often resolves most of the questions before they are asked.
Next step
Accounts created before anyone scoped them are a common starting point for a clean-up.
Frequently asked questions
Can we use a single service account for all workflows?
Not recommended. If that account is compromised, all workflows are compromised. Use specific service accounts for specific workflows or groups of related workflows. This limits blast radius.
What if a workflow fails and leaves the system in an inconsistent state?
This is why error handling and rollback logic are important. Workflows should be idempotent: if they fail partway through, running them again should complete the operation or roll it back safely. Test this scenario in staging.
How do we audit who executed a workflow and what it changed?
Orchestration logs execution. You can see that workflow X ran at time Y. To see who triggered it, check the incident or ticket record that triggered the workflow. Combine ServiceNow audit logs with Orchestration logs for a complete picture.
Related guides
Related Oblytech services
Where this topic turns into delivery work, these are the Oblytech services that cover it.
Planning, running or fixing a ServiceNow programme? Tell us where you are and we will suggest a sensible next step.
Contact us