Onam Security

Governance and approvals

How Onam Operations decides what an agent may do, how risk is classified, and how a person approves a change before anything is applied.

The approval centre is in early access. Executing an approved change in a customer cloud is on the roadmap.

Principles, in priority order

  1. Human in the loop — no configuration allows a change to your cloud without a recorded human approval. There is no flag for this.
  2. Fail safe — on ambiguity, timeout, missing data or policy doubt, stop and report.
  3. Least privilege — each agent holds the narrowest scope that does its job, checked per call.
  4. Explicit authorisation — permission is granted to an agent, organisation, accounts, resource class, tool and action — never implied by a role.
  5. Evidence-based — a claim with no evidence is a defect.

Permissions

A permission is a tuple: agent · organisation · accounts · resource class · tool · action. The effective permission is the intersection of the agent’s grant, your own authority, your organisation’s policy and the conversation’s scope. An agent cannot exceed the person it acts for, and no agent can ever hold the approve action — the database refuses to record it.

Risk classes

Risk is assigned by policy from the kind of change, resource class, environment, blast radius, reversibility and data sensitivity. An agent never classifies its own risk.

RiskApprovalExamples
LowNoneAny read or analysis; adding a tag; enabling a log
MediumOne approverResizing a non-production instance; encrypting a new bucket
HighOne approver plus a dry runNarrowing a production security group; changing a production IAM policy
CriticalTwo distinct approvers, one an organisation admin; dry run; change windowDeleting a production database; changing an organisation-level policy

A change is raised one class automatically when the target is production, is on an attack path to a crown jewel, holds regulated data, supports a tier-1 recovery plan, has no rollback, affects more than ten resources, or falls in a change freeze. Nothing lowers a class. Your organisation may set a higher floor, never a lower one.

What makes an approval real

PropertyMeaning
Bound to the changeThe approval records the change’s hash; approving one change cannot authorise another
Drift-checkedThe target is re-read just before execution; if it changed, the approval is superseded
ExpiringDefault seven days
Dual controlCritical changes need two distinct approvers, one an organisation admin
Separation of dutiesWhere enabled, the requester cannot approve
Reasoned rejectionA reason is mandatory and fed back to the agents
Rollback firstThe approver sees the rollback plan before deciding; an irreversible change is approved as irreversible
MeasuredReview time is recorded, so rubber-stamping becomes visible
Approval lifecycle: proposal, risk class, pending, the four decisions, approval bound to a hash, drift check before execution.
Approval lifecycle: proposal, risk class, pending, the four decisions, approval bound to a hash, drift check before execution.

The four decisions

  • Approve — records the decision and binds the change’s hash.
  • Reject — terminal for this change; a reason is mandatory.
  • Modify — change parameters within the bounds the skill declares; risk is re-classified.
  • Simulate — a dry run with no side effect, shown before you decide.

An approval link in an email or chat message only opens the workspace — it never decides.

Autonomy ceiling and kill switch

Your organisation sets how far agents may go: read → analyse → recommend → simulate → propose → execute. Early access starts at propose. The kill switch in Settings stops all agent activity for your organisation; tasks in flight are cancelled safely and nothing already executed is reverted.

Audit

Every agent turn, tool call, decision, approval and action is recorded with actor, time, input, output and justification — append-only and hash-chained, so an edit or deletion is detectable. The Activity screen shows whether the chain is intact.