Skip to main content

Actor Governance

Rivaro governs agents and users (actors) based on their cumulative behavior over time — not just individual requests. Trust scores, automatic escalation, and a tamper-evident audit trail give you continuous control over every actor in your AI estate.

Zero Trust Model

Rivaro starts every actor at a trust score of 0. Trust is never assumed — it must be earned through approved identity and clean behavior. The maximum trust any actor can reach is determined by their identity strength.

Trust Score

Every actor has a trust score between 0 and 100. It is dynamic — it changes in real time as the actor behaves.

How trust is earned

EventTrust change
Admin approves the agentInitial grant (default: +50.0)
Clean interaction (ALLOW decision)+0.2 per interaction (configurable)
Behavioral stability — stable agentNormal earn rate
Behavioral stability — cold start (<5 interactions)0.5× earn rate
Attack chain pattern detected0× earn rate (no trust gain)

Trust ceilings by identity strength

Identity strengthMaximum trust
BASIC (unknown/unregistered)25
STANDARD (registered, no approved assets)50
VERIFIED (registered + approved asset)80
STRONG (approved asset + verified user binding)95

How trust degrades

EventTrust change
Policy violation detected−1.0 per violation (configurable)
TERMINATE action−100 (score drops to 0)
note

Trust restoration (passive recovery over time) is available but disabled by default. When enabled: +0.5 per day, capped at the actor's maximum trust ceiling.

Risk Score

For each enforcement decision, Rivaro computes a risk score (0–100) from four components:

ComponentFormulaMax contribution
Signal riskBased on detection severity (LOW: 10, MEDIUM: 30, HIGH: 60, CRITICAL: 100)100
Violation riskmin(effectiveViolations × 2.0, 50.0)50
Trust risk(100 − trustScore) × 0.330
Session riskCredentials accessed (+30), sensitive data + outbound (+20), high event volume (+10)50

The final score is: min((signal + violation + trust + session) × recencyMultiplier, 100). Violations within the last 24 hours apply a recency multiplier (default 1.5×).

Risk levels

Risk levelThreshold (default)What triggers it
MINIMALScore < 40Normal operation
ELEVATEDScore ≥ 40 or violations ≥ warn thresholdIncreased monitoring
HIGHScore ≥ 60 or trust < 40Rate limiting
CRITICALScore ≥ 80 or trust < 30Quarantine or termination

Automatic Escalation

When risk levels climb, Rivaro automatically applies progressively stricter actions. Each tier is individually configurable and can be disabled.

Risk levelAutomatic actionWhat happens
MINIMALNormal operation, no action
ELEVATEDWARNViolation logged with elevated visibility in the dashboard
HIGHRATE_LIMITActor throttled to 10–20 requests/minute
CRITICALQUARANTINEAll requests blocked; actor enters quarantine queue for admin review
CRITICAL + repeatTERMINATEActor permanently blocked (requires admin reactivation)

Quarantine thresholds (defaults)

SettingDefault
Quarantine threshold (violations)20
Termination threshold (violations)50
Trust score — HIGH risk trigger< 40
Trust score — CRITICAL trigger< 30

All thresholds are configurable per organization in Settings > Governance Policy.

Governance Presets

Three preset governance configurations are available:

PresetDescription
LENIENTHigher thresholds, slower escalation — suitable for development environments or low-risk internal tooling
DEFAULTBalanced — the defaults described above
STRICTLower thresholds, faster escalation — recommended for production agents handling sensitive data

Quarantine

When an actor is quarantined (automatically or manually):

  • All proxy requests return 403 immediately
  • The actor appears in the Governance > Quarantine Queue in the dashboard
  • An admin must review and either release or terminate the actor
  • On release: violation count resets to the clock since release (not lifetime total), and trust score begins recovering

Time-aware violation counting

When an admin releases a quarantined actor, the violation clock resets. Subsequent escalation triggers are based on violations since the last reactivation, not lifetime totals — preventing reactivated actors from being immediately re-quarantined.

Termination

When an actor is terminated:

  • All proxy requests are permanently blocked
  • Trust score drops to 0
  • The actor cannot be reactivated through normal flows — requires explicit admin reactivation
  • This is reserved for severe, repeated, or malicious policy violations

Manual Actions

Administrators can manually quarantine, terminate, or reactivate any actor regardless of their current risk level:

ActionWhere
QuarantineDashboard: Agents > [Agent] > Quarantine, or POST /api/governance/actors/{actorId}/quarantine
TerminateDashboard: Agents > [Agent] > Terminate, or POST /api/governance/actors/{actorId}/terminate
ReactivateDashboard: Governance > Quarantine Queue > Release, or POST /api/governance/actors/{actorId}/reactivate

Governance History

Every governance decision — automatic or manual — is recorded in a tamper-evident audit trail. Each record is cryptographically chained to the previous one (using content hashes) so the history cannot be altered retroactively.

What's recorded

FieldDescription
actionALLOW, WARN, RATE_LIMIT, QUARANTINE, TERMINATE, or OBSERVE
reasonHuman-readable decision rationale
riskLevel / riskScoreRisk assessment at time of decision
actorTrustBeforeTrust score before this decision
actorViolationsBeforeViolation count before this decision
actorStatusBefore / actorStatusAfterStatus change
decidedAtExact timestamp of decision
signalType / signalSeverityThe detection that triggered this decision
overriddenWhether an admin manually overrode this decision
contentHash / previousRecordHashCryptographic chain-of-custody hashes

Access governance history in the dashboard at Governance > History or via GET /api/governance/history/{actorId}.

Disabling Automatic Actions

Automatic quarantine and termination can be disabled per organization. When disabled, Rivaro still calculates risk scores and trust scores and surfaces warnings in the dashboard — but takes no automatic blocking action. Useful during initial rollout or for non-production environments.

Next steps