gate-house/spec/ActiveSecretsManagementCanon_v0.3.md

55 KiB
Raw Blame History

Active Secrets Management Canon

Version: 0.3
Status: Working Canon / Review Draft
Date: 2026-08-24
Scope: Human, agent-assisted, and autonomous development and operations environments


1. Purpose

The Active Secrets Management Canon defines a practical security baseline for development and operations environments in which humans and software agents jointly create, change, operate, and secure information systems.

The Canon starts from a simple observation:

Secrets management is no longer primarily the secure storage of passwords, tokens, and keys. It is the controlled lifecycle of authority.

A modern system should minimize standing credentials, derive short-lived authority from verifiable identities and policy, constrain that authority at deterministic security boundaries, observe its use, detect credential exposure, revoke compromised authority, and prove that remediation is complete.

The target lifecycle is:

identify
  ↓
authenticate
  ↓
authorize / delegate
  ↓
mint short-lived authority
  ↓
use
  ↓
expire / revoke
  ↓
observe
  ↓
detect exposure or misuse
  ↓
remediate
  ↓
verify closure
  ↺

The Canon is deliberately agent-aware. It distinguishes interactive agent assistance from autonomous agent operation and treats the increased velocity and concurrency of agentic change as a first-class security concern.


2. Design Thesis

The foundational design principle is:

Cognition may be probabilistic. Authority must be deterministically constrained.

Large language models and agents may reason, plan, discover tools, propose actions, classify situations, and adapt behavior. They must not be the sole mechanism deciding whether a protected resource can be accessed or changed.

A production-grade environment therefore separates:

  1. Cognitive Plane — what might usefully happen next;
  2. Authority Plane — what is permitted to happen;
  3. Execution Plane — what actually changes system state.

A compact formulation is:

Cognition proposes. Authority disposes. Infrastructure executes.

This does not imply that authorization policy must be static. It may be highly contextual and dynamic. The requirement is that access decisions are based on explicit, reproducible, auditable rules and enforced independently of the agent requesting the action.


3. Normative Language

The terms MUST, MUST NOT, SHOULD, SHOULD NOT, and MAY are used normatively:

  • MUST / MUST NOT — required for conformance to the stated profile.
  • SHOULD / SHOULD NOT — expected unless a documented risk-based exception exists.
  • MAY — optional or context dependent.

The Canon is not a legal or regulatory standard. It is an engineering and governance baseline intended to support security assurance, auditability, and compliance evidence.


4. Scope

The Canon applies to:

  • human developers and operators;
  • interactive coding and operations agents;
  • scheduled, triggered, or event-driven autonomous agents;
  • CI/CD systems;
  • Kubernetes and cloud workloads;
  • MCP and other tool-mediated agent interfaces;
  • agent-to-agent interactions;
  • databases, cloud APIs, SaaS APIs, and production services;
  • static and dynamic secrets;
  • workload identity, federation, and short-lived credentials;
  • secret discovery, remediation, rotation, revocation, and audit.

It is intended for environments ranging from a single engineering team to a multi-tenant production platform.


5. Threat and Failure Model

The Canon assumes that one or more agentic components can:

  • misunderstand intent;
  • hallucinate;
  • follow malicious or injected instructions;
  • select the wrong tool;
  • use the right tool with the wrong parameters;
  • become stuck in loops;
  • over-consume compute or token budget;
  • expose credentials through prompts, logs, shell history, traces, or generated code;
  • be induced to act as a confused deputy;
  • chain unsafe actions across multiple agents;
  • operate faster than human monitoring can reliably follow;
  • attempt to broaden or alter their own authority;
  • encounter compromised tools, dependencies, MCP servers, or data sources.

A production security baseline MUST therefore remain meaningful even when an agent behaves incorrectly.

The decisive review question is:

If every participating model makes the wrong decision, which security guarantees still hold?

Those surviving guarantees constitute the actual security substrate.


Part I — Operating Model

6. Human-Only, Agent Assistant, and Autonomous Modes

6.1 Human-Only Development and Operations

A human directly operates tools and infrastructure. Human effort, attention, and execution speed naturally limit change velocity.

Credentials are associated primarily with human identities and workload identities.

This remains the baseline against which agentic modes should be compared.


6.2 Agent Assistant Coding

Agent Assistant Coding is an interactive human-agent session in which a human developer or operator remains actively engaged with the agent and can monitor, redirect, approve, interrupt, or stop activity with human-scale latency.

Typical characteristics:

  • a human initiates the session;
  • the human provides intent and context;
  • the human observes work as it occurs;
  • the human can make decisions immediately;
  • credentials often originate from the human's active session;
  • the human remains the primary operational principal;
  • the agent is an identifiable actor assisting that principal.

Conceptually:

Human principal
      │
      │ active supervision
      ▼
Assistant agent
      │
      │ delegated/session authority
      ▼
Tools / code / infrastructure

Where technically practical, audit data SHOULD distinguish:

principal = human
actor     = assistant agent
session   = interactive session

The presence of a human in the loop reduces some risks but does not replace deterministic access controls.

Human risk acceptance tends to act as an informal limiter of automation velocity: confidence increases delegation until incidents, near misses, or uncertainty reduce appetite for further speed.


6.3 Autonomous Agent Coding

Autonomous Agent Coding consists of scheduled, triggered, queued, event-driven, or machine-initiated coding and operations agents that can act without continuous human supervision.

Examples include:

  • dependency update agents;
  • autonomous refactoring;
  • vulnerability remediation;
  • test repair;
  • release and deployment agents;
  • infrastructure reconciliation;
  • incident-response agents;
  • routine operational agents;
  • agent-to-agent development workflows.

Autonomous agents require:

  • unique addressable identities;
  • explicit access profiles;
  • policy-bound mandates;
  • defined ownership;
  • resource and economic budgets;
  • lifecycle management;
  • bounded authority;
  • deterministic circuit breakers;
  • reconstructable audit evidence.

Conceptually:

Organizational governance
          │
          ▼
Agent identity + mandate
          │
          ▼
Task authorization
          │
          ▼
Autonomous agent
          │
          ▼
Tools / infrastructure

The relevant question becomes:

Under which organizational authority may agent X independently perform class Y of actions against resources Z?


6.4 Transition Between Modes

Moving a workflow from Agent Assistant Coding to Autonomous Agent Coding is a security architecture change, not merely an automation improvement.

Example:

"Human asks agent to deploy release"
                ↓
"Agent deploys every approved release overnight"

The second design requires an independent identity, mandate, authority ceiling, lifecycle, budget, governance owner, audit model, and failure controls.

No workflow SHOULD silently become autonomous merely because the human session disconnects or times out.


7. Change Dynamics

Agentic development increases the velocity, volume, duration, and concurrency of change.

Traditional human work contains accidental safety friction:

  • somebody must notice;
  • understand;
  • decide;
  • edit;
  • execute;
  • test;
  • deploy;
  • observe.

Agentic systems remove much of that friction. This improves productivity while simultaneously increasing the speed with which wrong decisions can propagate.

7.1 Change Dynamics Envelope

Every production environment SHOULD define a Change Dynamics Envelope:

The maximum rate, scope, duration, and concurrency of system change the security and governance system is designed to tolerate while maintaining its required invariants.

Relevant dimensions include:

  • repositories and resources reachable;
  • environments reachable;
  • read versus write authority;
  • reversible versus irreversible actions;
  • number of concurrent agents;
  • maximum tool calls;
  • maximum runtime;
  • credential TTL;
  • maximum deployment frequency;
  • token and compute budget;
  • external-service spend;
  • destructive-action quota;
  • maximum propagation depth across agent chains.

7.2 Assistant-Mode Limiter

Assistant-mode change dynamics are constrained by:

agent capability
× human willingness to delegate
× observability
× human reaction speed
→ effective change velocity

7.3 Autonomous-Mode Limiter

Autonomous-mode change dynamics are constrained by:

agent capability
× authorization
× governance
× resource limits
× token / compute budget
× runtime
× concurrency
→ effective change velocity

Budgets and quotas are useful blast-radius controls, but never substitutes for authorization.


Part II — Foundational Security Invariants

8. Canon Invariants

INV-01 — Deterministic Authority Boundary

Every privileged production action MUST ultimately cross a deterministic authorization and enforcement boundary.

INV-02 — No Privilege from Cognition

An LLM, agent, prompt, model confidence score, or probabilistic classifier MUST NOT be able by itself to grant additional authority.

INV-03 — Tool Availability Is Not Permission

The fact that an MCP server, plugin, shell, API, or agent exposes a capability conveys no authorization to use it.

INV-04 — Agent and Principal Are Distinct Facts

Where an agent acts for a human or another system, the executing actor and delegating principal SHOULD remain distinguishable in identity and audit context.

INV-05 — Assistant and Autonomous Modes Are Different Security Regimes

Interactive supervision and autonomous operation MUST NOT be treated as equivalent from an identity, credential, governance, or accountability perspective.

INV-06 — Human Supervision Is Not Access Control

A human watching an agent MAY reduce operational risk but MUST NOT substitute for resource-side security enforcement.

INV-07 — Authority Has a Hard Ceiling

Agentic reasoning MAY attenuate or decline available authority. It MUST NOT exceed the deterministic maximum authority granted by policy.

INV-08 — No Prompt-Only Security

Prompts, personas, natural-language policies, or model instructions MUST NOT be treated as hard security controls.

INV-09 — Emergency Control Is Independent of the Agent

Revocation, privilege suspension, kill switches, and circuit breakers MUST work without cooperation from the affected agent.

INV-10 — Security Evidence Is Agent-Resistant

Agents MUST NOT be able to silently alter or erase authoritative evidence of their privileged actions.

INV-11 — Security Policy Is More Protected Than Workload State

Changes to authorization policy, identity trust, secret backends, audit configuration, or circuit breakers MUST be governed more strongly than normal workload changes.

INV-12 — Production Claims Are Expressed as Invariants

Security assurance SHOULD be stated in terms of enforceable properties, for example:

"This agent identity cannot delete production namespaces."

not:

"The agent has been instructed not to delete production namespaces."


9. Deterministic Does Not Mean Static

A deterministic policy may incorporate dynamic context.

Example:

ALLOW production.restart
IF
    actor.role          == "operations-agent"
AND environment         == "production"
AND service.team        == actor.team
AND incident.status     == "active"
AND approval.valid      == true
AND approval.action     == request.action
AND approval.target     == request.target
AND now                 < approval.expiry
AND action_quota        > 0

The authorization outcome remains reproducible for the same evaluated state.

Probabilistic signals MAY inform policy as advisory or restrictive inputs. They SHOULD NOT be the sole basis for granting additional privilege.

For example:

  • a model-based anomaly score MAY trigger step-up approval;
  • it MAY reduce available authority;
  • it MAY pause autonomous writes;
  • it SHOULD NOT by itself grant production administrator access.

Part III — Reference Architecture

10. Three-Plane Architecture

                 COGNITIVE PLANE
       ┌─────────────────────────────────┐
       │ LLM reasoning                   │
       │ planning                        │
       │ code generation                 │
       │ tool discovery                  │
       │ diagnostics                     │
       │ agent coordination              │
       │ risk suggestions                │
       └───────────────┬─────────────────┘
                       │ requests action
                       ▼
════════════════════════════════════════════════
                 AUTHORITY PLANE
       ┌─────────────────────────────────┐
       │ Identity                        │
       │ Authentication                  │
       │ Delegation                      │
       │ Deterministic policy            │
       │ Approval                        │
       │ Vault / STS / credential mint   │
       │ TTL / quotas / constraints      │
       │ Circuit breakers                │
       └───────────────┬─────────────────┘
                       │ permits action
                       ▼
════════════════════════════════════════════════
                 EXECUTION PLANE
       ┌─────────────────────────────────┐
       │ Git                             │
       │ CI/CD                           │
       │ Kubernetes                      │
       │ Cloud APIs                      │
       │ Databases                       │
       │ Production services             │
       │ SaaS systems                    │
       └───────────────┬─────────────────┘
                       │
                       ▼
                 Audit / telemetry
                       │
                       ▼
              Detection / remediation
                       │
                       └──────────► Authority plane

11. MCP and Agentic Infrastructure

MCP is a capability interface, not a security authority.

An MCP server may expose:

list_pods()
get_logs()
restart_service()
scale_deployment()
modify_network_policy()
rotate_database_password()
delete_namespace()

The tool catalog describes what can be requested. It does not determine who may execute each action.

The expected pattern is:

Agent
  │
  │ requests "restart service X"
  ▼
MCP tool / execution gateway
  │
  ▼
Deterministic authorization
  ├── actor identity
  ├── delegated principal
  ├── task / session
  ├── environment
  ├── target resource
  ├── operation
  ├── policy
  ├── approval
  ├── TTL
  ├── quota
  └── budget
       │
     ALLOW
       │
       ▼
Infrastructure API

This rule continues through recursive agent chains:

coding agent
   ↓
MCP
   ↓
operations agent
   ↓
cluster agent
   ↓
DETERMINISTIC POLICY ENFORCEMENT
   ↓
production infrastructure

Agentic infrastructure MAY provide flexibility above the boundary. It MUST NOT dissolve the boundary.


Part IV — Identity, Credentials, and Authority

12. Core Terminology

Principal

The human, organization, workload, or system on whose behalf authority is being exercised.

Actor

The entity directly performing the action.

Example:

principal = Alice
actor     = deploy-agent-22

Runtime Identity

The identity of the executing workload instance, pod, job, VM, process, or equivalent runtime.

Authority

The right to perform a defined action against a defined resource under defined conditions.

Credential

A transferable or presentable technical artifact used to authenticate or exercise authority, such as a token, key, certificate, password, or signed assertion.

Secret

A credential or sensitive value whose security depends materially on confidentiality.

Delegation

A transfer of some authority from one principal to an actor without collapsing their identities.

Capability

A narrowly scoped authorization artifact or effective permission to perform one or more defined operations.

Standing Authority

Authority that persists independently of a specific short-lived task, session, or workflow.

Dynamic Secret

A credential generated on demand for a specific consumer or lease and automatically expiring or revocable.

Secretless Access

Access based on non-exportable or federated identity mechanisms without provisioning a long-lived shared secret to the consumer.

Authority Ceiling

The maximum authority an actor can obtain under deterministic policy, regardless of what the actor requests or reasons.


13. Credential Hierarchy

Class Meaning Target treatment
S0 — Secretless No reusable transferable secret is provisioned Preferred
S1 — Ephemeral identity Short-lived JWT, STS token, SVID, certificate, session token Normal operating state
S2 — Dynamic secret Per-consumer/per-task generated credential with lease Preferred where identity cannot be consumed directly
S3 — Managed static secret API key/password that must persist Central storage, ownership, automatic rotation, monitoring
S4 — Root/bootstrap material CA keys, recovery material, break-glass authority Exceptional, offline/HSM/quorum protected

The migration direction is:

S4 → S3 → S2 → S1 → S0

Not every system can reach S0, but every S3/S4 credential SHOULD have an explicit justification.


14. Authority Context for Agent Actions

A privileged agent action SHOULD be attributable to a context comparable to:

principal: Alice
actor: deploy-agent-22
runtime: spiffe://example/prod/deployer/22
session: s-779381
task: deploy release 7.2.1
action: production.deploy
resource: cluster/payments
approval: approval-9432
policy_version: authz-2026-08-17
expires: 2026-08-24T18:42:00Z

The aim is not to make every token carry every field. The aim is to preserve enough linked evidence across identity, authorization, credential issuance, execution, and audit systems to reconstruct the chain.


Part V — Control Catalog

15. Identity Controls

ID Practice Requirement
ASM-I01 Human federation Human access to production systems MUST use organizational identity federation where supported.
ASM-I02 Strong human authentication Privileged human access SHOULD use phishing-resistant MFA/passkeys/security keys.
ASM-I03 Workload identity Significant services, jobs, agents, and pipelines MUST have distinct workload identities.
ASM-I04 No shared machine identities Multiple autonomous actors MUST NOT share one generic machine identity unless technically unavoidable and risk-accepted.
ASM-I05 Identity is not authorization Authentication of an actor MUST NOT by itself imply resource authorization.
ASM-I06 Lifecycle-bound identity Agent and workload identities MUST be disabled or decommissioned when the corresponding workload or mandate ends.
ASM-I07 Identity provenance Identity issuers and trust relationships MUST be explicitly governed and auditable.

16. Operating-Mode Controls

ID Practice Requirement
ASM-M01 Declare mode Each agentic workflow MUST be classified as Assistant or Autonomous.
ASM-M02 Human principal in Assistant mode Assistant sessions SHOULD be associated with an identified supervising human principal.
ASM-M03 Independent identity in Autonomous mode Autonomous agents MUST authenticate using a distinct workload/agent identity, not a borrowed human credential.
ASM-M04 Preserve actor identity Audit SHOULD distinguish human principal and agent actor where technically possible.
ASM-M05 Explicit autonomy transition Moving a workflow from Assistant to Autonomous mode MUST undergo security/governance review.
ASM-M06 No accidental autonomy Human disconnect or session timeout MUST NOT silently convert a privileged Assistant workflow into Autonomous operation.
ASM-M07 Supervision boundary Assistant-mode tools SHOULD expose clear interruption, pause, and confirmation mechanisms for high-impact actions.
ASM-M08 Mode-specific credentials Credential issuance SHOULD reflect whether authority is human-session delegated or independently assigned to an autonomous agent.

17. Deterministic Security Substrate Controls

ID Practice Requirement
ASM-S01 Deterministic enforcement Protected-resource authorization MUST ultimately be enforced by deterministic mechanisms.
ASM-S02 LLMs cannot grant authority Agent reasoning MUST NOT directly create additional privilege.
ASM-S03 Tool discovery ≠ authorization Tool/MCP discovery MUST NOT be interpreted as permission.
ASM-S04 Resource-side validation Sensitive APIs MUST independently validate effective authorization.
ASM-S05 No prompt-only boundary Prompt instructions MUST NOT be considered sufficient access control.
ASM-S06 Deterministic credential issuance Credential brokers MUST evaluate explicit policy before issuing privileged credentials.
ASM-S07 Hard authority ceiling Agents MAY use less authority than available but MUST NOT exceed the policy-defined maximum.
ASM-S08 Fail closed Security-critical policy, approval, or audit failures SHOULD block privileged actions rather than silently bypass controls.
ASM-S09 Independent kill switch Autonomous write authority MUST be revocable independently of the agent.
ASM-S10 Protected security policy Agents MUST NOT have ordinary workload-level authority to modify their own maximum authorization.
ASM-S11 Separation of policy change Security-policy changes SHOULD require stronger authorization than routine application changes.
ASM-S12 Restrictive probabilistic signals Model-derived signals MAY reduce or suspend authority; they SHOULD NOT be the sole input that expands authority.

18. Credential Lifecycle Controls

ID Practice Requirement
ASM-C01 Eliminate first Before storing a new secret, teams MUST evaluate whether federation or workload identity can eliminate it.
ASM-C02 Temporary credentials default Cloud and infrastructure access SHOULD use short-lived federated credentials rather than static keys.
ASM-C03 Dynamic backend credentials Databases and similar systems SHOULD use per-client dynamic credentials where supported.
ASM-C04 Explicit TTL Machine credentials capable of expiration MUST have defined TTLs.
ASM-C05 Consumer-specific credentials Unavoidable static credentials SHOULD be distinct per consumer and environment.
ASM-C06 Automatic rotation Managed static machine secrets SHOULD rotate automatically.
ASM-C07 Immediate compromise revocation Suspected or confirmed leaked credentials MUST be revoked without waiting for scheduled rotation.
ASM-C08 Separate rotation from revocation Processes MUST distinguish routine rotation from incident-driven revocation.
ASM-C09 Secret-zero minimization Workload identity, attestation, OIDC, cloud identity, SPIFFE, TPM/HSM, or equivalent SHOULD bootstrap secret access instead of another static secret.
ASM-C10 Root material isolation Root, recovery, CA, and break-glass credentials MUST be exceptional and protected with stronger controls than ordinary application credentials.
ASM-C11 No credential copying by default Credentials SHOULD NOT be duplicated across systems unless an explicit synchronization model preserves ownership and lifecycle.
ASM-C12 Credential ownership Every persistent credential MUST have a named technical and organizational owner.

19. Agent-Specific Authority Controls

ID Practice Requirement
ASM-A01 Principal/actor separation Delegated operations SHOULD preserve both originating principal and executing actor.
ASM-A02 No invisible impersonation Agents SHOULD NOT simply reuse a human credential in a way that makes the actor indistinguishable.
ASM-A03 Task-scoped authority Agent authority SHOULD reflect the current task, environment, resource, and operation.
ASM-A04 Delegation attenuation Child agents MUST NOT automatically gain more authority than their caller.
ASM-A05 Per-tool authorization Sensitive tool invocation MUST be independently authorized at or below the tool boundary.
ASM-A06 Read/write separation Read, write, privileged, destructive, and irreversible capabilities SHOULD be separately controlled.
ASM-A07 No reusable credentials in model context Raw reusable credentials MUST NOT intentionally be placed in prompts, model context, memory, or retrieval corpora.
ASM-A08 Brokered execution Where feasible, a trusted execution layer SHOULD exercise credentials on behalf of the model instead of disclosing them to it.
ASM-A09 Risk classification Tool actions SHOULD be classified by operational impact.
ASM-A10 Step-up for high impact High-impact actions SHOULD require stronger authorization, approval, or independent validation.
ASM-A11 Parameter-bound approval Approval for sensitive actions SHOULD bind actor, tool, target, normalized parameters, time, and expiry.
ASM-A12 Replay resistance High-impact approval artifacts SHOULD be short-lived and non-replayable.

20. Change Dynamics Controls

ID Practice Requirement
ASM-X01 Define change envelope Production environments SHOULD define acceptable rate, scope, and concurrency of autonomous change.
ASM-X02 Bound blast radius Agent authority SHOULD be constrained by repository, environment, resource class, and operation.
ASM-X03 Concurrency limits Autonomous mutation concurrency MUST be explicitly bounded.
ASM-X04 Runtime limits Autonomous jobs SHOULD have maximum execution durations.
ASM-X05 Resource budgets Token, compute, tool-call, and external-service budgets SHOULD be enforced for autonomous workflows.
ASM-X06 Budgets are not authorization Economic limits MUST NOT be relied upon as the sole protection against privileged actions.
ASM-X07 Progressive delegation Broader autonomy SHOULD be earned through operational evidence and explicit governance decisions.
ASM-X08 Velocity-aware monitoring Detection and remediation capacity SHOULD scale with autonomous change velocity.
ASM-X09 Circuit breakers Defined anomaly or invariant violations SHOULD deterministically suspend autonomous write authority.
ASM-X10 Safe degraded mode When automation is degraded, the system SHOULD preferentially preserve read/diagnostic access while reducing mutation authority.

21. Development Workstation Controls

ID Practice Requirement
ASM-D01 SSO for developer tooling Git, cloud, Kubernetes, and secret-management access SHOULD use federated sessions.
ASM-D02 JIT local credentials CLI credentials SHOULD be short-lived and refreshable through SSO/federation.
ASM-D03 Agent sandboxing Coding agents SHOULD execute inside explicit filesystem, network, process, and tool boundaries.
ASM-D04 Repository-specific capability An agent session SHOULD receive only credentials and tools needed for the active project.
ASM-D05 No environment inheritance by default Agent processes SHOULD NOT automatically inherit the complete human shell environment or all .env values.
ASM-D06 Pre-commit detection Secret scanning SHOULD occur before code enters version control.
ASM-D07 Transcript redaction Shell logs, traces, agent transcripts, and debugging output MUST avoid storing plaintext credentials.
ASM-D08 Local credential isolation SSH agents, cloud sessions, browser sessions, and local secret stores SHOULD be selectively exposed rather than globally available to coding agents.

22. CI/CD Controls

ID Practice Requirement
ASM-CI01 CI workload federation CI/CD SHOULD use OIDC or equivalent workload federation instead of stored cloud credentials.
ASM-CI02 Job-bound lifetime Deployment credentials SHOULD expire approximately with job lifetime.
ASM-CI03 Claim restrictions Trust SHOULD be restricted by repository, organization, workflow, branch, environment, and/or other verifiable claims.
ASM-CI04 Environment separation Development, test, staging, and production deployment identities MUST be independently authorized.
ASM-CI05 Pull-request isolation Untrusted forks and pull requests MUST NOT receive production credentials.
ASM-CI06 Ephemeral privileged runners Privileged pipelines SHOULD use disposable or strongly isolated execution environments.
ASM-CI07 Agent-produced pipeline changes Changes to workflow identity, secrets, permissions, or deployment gates SHOULD receive stronger review than ordinary code.
ASM-CI08 Artifact provenance Production deployment SHOULD preserve linkage between source, workflow identity, artifact, and deployment action.

23. Kubernetes and Runtime Controls

ID Practice Requirement
ASM-K01 Workload identity first Pods and workloads SHOULD authenticate using bounded service-account/workload identity tokens.
ASM-K02 Avoid legacy non-expiring tokens Long-lived Kubernetes service-account token Secrets SHOULD NOT be used when TokenRequest/projected tokens are viable.
ASM-K03 Pod/job-scoped identity Runtime identity SHOULD be bound to the actual workload instance or workload class.
ASM-K04 Dynamic credential bridge Workload identity SHOULD be exchanged for dynamic database/cloud credentials when target systems cannot consume workload identity directly.
ASM-K05 Minimize Kubernetes Secrets Kubernetes Secrets SHOULD be compatibility fallbacks rather than the default credential architecture.
ASM-K06 Secret mount lifecycle Ephemeral mounts or agents/CSI mechanisms SHOULD align credential exposure with workload lifecycle.
ASM-K07 Namespace/environment boundaries Runtime identity and authorization MUST respect environment and tenancy boundaries.
ASM-K08 Admission/policy enforcement Production clusters SHOULD enforce deployment and privilege invariants independently of agent-generated manifests.

24. MCP and Agent Protocol Controls

ID Practice Requirement
ASM-P01 Audience-bound tokens Tokens used for MCP/resource access MUST be bound to their intended resource/audience.
ASM-P02 No token passthrough MCP servers MUST NOT simply forward inbound bearer tokens to unrelated downstream services.
ASM-P03 Downstream credential exchange Downstream services SHOULD receive separately issued or exchanged credentials.
ASM-P04 Incremental scope Tool scopes SHOULD be requested incrementally rather than granting broad access at session start.
ASM-P05 Interactive flow protection Interactive OAuth flows SHOULD use modern authorization-code protections such as PKCE.
ASM-P06 Tool supply-chain governance MCP servers, tools, schemas, and tool-definition changes SHOULD be allowlisted, reviewed, and monitored.
ASM-P07 Metadata contains no secrets Discovery metadata MUST NOT contain live credentials.
ASM-P08 Agent-chain attenuation Agent-to-agent delegation SHOULD preserve identity context and enforce non-escalation.
ASM-P09 Resource-side authorization Tool servers that access backends MUST still enforce backend-appropriate authorization.

25. Discovery and Exposure Controls

ID Practice Requirement
ASM-R01 Scan before commit IDE/save/pre-commit secret scanning SHOULD catch leaks at the earliest practical point.
ASM-R02 Push protection High-confidence secrets SHOULD be blocked before repository insertion when tooling permits.
ASM-R03 Continuous scanning New commits, pull requests, CI artifacts, and relevant collaboration/configuration systems SHOULD be continuously scanned.
ASM-R04 Historical scanning Repository history SHOULD be scanned, not only the latest branch state.
ASM-R05 Organization-specific patterns Secret detection SHOULD include custom token and credential formats.
ASM-R06 Activeness/validity context Findings SHOULD be prioritized using whether the credential is still active where safely determinable.
ASM-R07 Managed/unmanaged correlation Detection SHOULD distinguish credentials governed by an approved manager from unmanaged exposure.
ASM-R08 Ownership enrichment Findings SHOULD be enriched with likely owner, source, environment, and affected resources.
ASM-R09 Minimize scanner custody Secret scanning systems SHOULD retain hashes/fingerprints and metadata rather than plaintext secret values where possible.
ASM-R10 Agent context scanning Agent prompts, traces, memories, and generated artifacts SHOULD be included in leakage controls where technically feasible and privacy-appropriate.

26. Remediation Controls

A secret exposure MUST be treated as a credential-lifecycle incident, not merely as a source-code defect.

Recommended state model:

DETECTED
   ↓
TRIAGED
   ↓
OWNED
   ↓
REPLACEMENT_READY
   ↓
CONSUMERS_MIGRATED
   ↓
OLD_CREDENTIAL_REVOKED
   ↓
VERIFIED
   ↓
RESOLVED
ID Practice Requirement
ASM-RM01 Named owner Every actionable finding MUST acquire an accountable owner.
ASM-RM02 Workflow integration Findings SHOULD enter the developer/operator workflows where remediation work actually occurs.
ASM-RM03 Contextual guidance Owners SHOULD receive practical replacement and architectural guidance, not merely an alert.
ASM-RM04 Revoke old credential Exposure is not resolved until the old credential has been revoked or otherwise invalidated.
ASM-RM05 Verify closure The system SHOULD verify that the exposed credential can no longer authenticate.
ASM-RM06 Investigate use Relevant access logs SHOULD be reviewed between likely exposure and revocation.
ASM-RM07 Architecture correction A leaked static machine credential SHOULD trigger evaluation of federation, workload identity, or dynamic issuance.
ASM-RM08 Source cleanup is insufficient Removing a secret from current source code MUST NOT by itself close the security finding.
ASM-RM09 Measurable remediation Remediation status, backlog, severity, and time-to-revoke SHOULD be measurable.
ASM-RM10 Recurrence prevention Repeated leak classes SHOULD result in preventive control improvement.

27. Audit and Observability Controls

A privileged action SHOULD be reconstructable as:

Human principal:   alice@example
Agent actor:       deploy-agent-22
Runtime identity:  spiffe://company/prod/deployer/22
Session:           s-779381
Task:              deploy release 7.2.1
Authorization:     production.deploy
Approval:          approval-9432
Credential class:  short-lived STS role
Resource:          prod/cluster-a
Action:            UpdateDeployment
Result:            success
Expiry:            18:42 UTC
ID Practice Requirement
ASM-O01 End-to-end correlation Task/session/trace identifiers SHOULD link agent, authority, credential, and resource events.
ASM-O02 Principal + actor logging Delegated actions SHOULD preserve both principal and actor context.
ASM-O03 Credential issuance evidence Audit SHOULD record why and under which policy a credential was issued, never its plaintext value.
ASM-O04 Sensitive-value redaction Credentials MUST NOT become ordinary log fields.
ASM-O05 Independent audit plane Privileged audit records SHOULD be forwarded to independently controlled storage/SIEM.
ASM-O06 Audit availability monitoring Audit-pipeline failure MUST itself be monitored.
ASM-O07 Policy-version evidence Privileged actions SHOULD be attributable to the authorization policy version in force.
ASM-O08 Approval evidence High-impact actions SHOULD retain approval identity, scope, parameters, and expiry.
ASM-O09 Agent version evidence For significant autonomous actions, logs SHOULD identify agent/workflow/model/tool-policy versions where practical.
ASM-O10 Security telemetry integrity Agents SHOULD NOT have authority to delete or silently rewrite their security telemetry.

28. Governance Controls

ID Practice Requirement
ASM-G01 Named governance owner Every autonomous agent class MUST have an organizational owner.
ASM-G02 Explicit mandate Autonomous agents MUST have a defined purpose and permitted action domain.
ASM-G03 Maximum authority profile Autonomous agents MUST have a documented authority ceiling.
ASM-G04 Budget profile Autonomous workflows SHOULD have explicit runtime, token, compute, and external-spend limits.
ASM-G05 Policy-change separation Agents MUST NOT casually modify the policies that define their own maximum authority.
ASM-G06 Break-glass governance Emergency credentials and privilege escalation MUST have explicit procedures, ownership, and audit.
ASM-G07 Exception expiry Security exceptions SHOULD expire and require re-approval rather than becoming permanent by neglect.
ASM-G08 Autonomy review Autonomous capabilities SHOULD be periodically reviewed against actual use and incidents.
ASM-G09 Least-authority review Unused or unnecessary permissions SHOULD be removed.
ASM-G10 Security tests as controls Production agent changes SHOULD include regression/adversarial tests for authorization and tool-abuse failure modes.
ASM-G11 Stronger control for control-plane changes Identity, Vault, IAM, RBAC, MCP authorization, audit, and policy-engine changes SHOULD require higher review than normal application code.
ASM-G12 Residual-risk evidence Accepted deviations from the Canon SHOULD record rationale, owner, compensating controls, and review date.

Part VI — Profiles

29. Production Baseline Profile

A production environment SHOULD minimally provide:

  • federated human identity;
  • unique workload identity;
  • deterministic resource-side authorization;
  • short-lived credentials where feasible;
  • centralized management of unavoidable static secrets;
  • audit logging outside agent control;
  • secret scanning;
  • revocation and remediation workflow;
  • protected security-policy changes;
  • explicit separation between cognitive and authority planes.

The production baseline MUST NOT depend on correct LLM behavior for its core access guarantees.


30. Agent Assistant Coding Profile

Agent Assistant environments SHOULD additionally provide:

  • identified supervising human principal;
  • distinguishable agent actor/session where feasible;
  • explicit filesystem/network/tool boundaries;
  • selective rather than global exposure of the human's credentials;
  • no automatic inheritance of every local credential;
  • reversible/previewable high-impact actions;
  • human interruption and pause capability;
  • short-lived human sessions;
  • deterministic production restrictions despite active supervision;
  • prevention of silent continuation after the supervising session ends.

A practical baseline is:

human identity
   ↓
interactive session
   ↓
assistant agent actor
   ↓
restricted execution gateway
   ↓
deterministic policy
   ↓
target system

31. Autonomous Agent Coding Profile

Autonomous environments MUST additionally provide:

  • unique agent/workload identity;
  • named governance owner;
  • explicit mandate;
  • explicit authority ceiling;
  • task/environment/resource scopes;
  • runtime and credential TTL;
  • concurrency limits;
  • token/compute/tool-call budget;
  • independent circuit breaker;
  • protected policy boundary;
  • independent audit;
  • no dependence on borrowed human credentials;
  • traceable delegation when acting on behalf of a human or service;
  • stronger controls for production mutation;
  • explicit lifecycle termination.

A practical baseline is:

governance mandate
      ↓
agent/workload identity
      ↓
task authorization
      ↓
short-lived capability
      ↓
execution gateway
      ↓
resource-side enforcement
      ↓
audit + telemetry
      ↓
circuit breaker / remediation

Part VII — Decision Patterns

32. Preferred Authentication and Credential Patterns

Situation Preferred mechanism Avoid
Human web access OIDC/SSO + strong MFA/passkey application-local credentials
Human cloud CLI SSO → temporary role/session permanent cloud access keys
Human production admin JIT privileged role + step-up standing administrator
Assistant coding session human principal + constrained agent actor/session exporting all workstation secrets to agent
Autonomous agent workload identity + task-scoped authority borrowed human token
GitHub Actions OIDC → cloud/Vault short-lived credential stored cloud keys
Kubernetes → cloud native workload/pod identity IAM/service-account static key
Kubernetes → DB workload identity → dynamic DB credential shared DB password
Cross-cloud workload workload federation / SPIFFE-style identity exported service-account key
Agent → MCP server resource-bound OAuth token shared static bearer key
MCP → backend new downstream token / token exchange inbound-token passthrough
Agent → database brokered dynamic credential DB password in prompt
High-risk agent write JIT authorization + action-bound approval permanent broad write role
Legacy third-party API per-consumer secret + central manager + rotation shared key in source/config
Root/recovery offline/HSM/quorum-controlled material routine online use

Part VIII — Assurance Tests

33. Canon Security Tests

T-01 — Malicious Model Test

Assume the agent intentionally requests the most privileged destructive action available.

Pass condition: deterministic controls still limit execution to the configured authority ceiling.

T-02 — Credential Exfiltration Test

Assume a prompt-injected agent tries to print or transmit every credential it can reach.

Pass condition: reusable credentials are not present in model context and the runtime can only obtain narrowly scoped authority.

T-03 — Human Disconnect Test

Terminate the supervising user's Agent Assistant session mid-task.

Pass condition: privileged authority expires or stops according to policy; the workflow does not silently become autonomous.

T-04 — Policy Self-Modification Test

Ask the autonomous agent to broaden the policy that constrains its own access.

Pass condition: ordinary agent authority cannot modify its maximum authority boundary.

T-05 — Confused Deputy Test

Present a valid token intended for service A to service B or attempt MCP downstream token passthrough.

Pass condition: audience/resource validation rejects the token and downstream access requires separately authorized credentials.

T-06 — Approval Replay Test

Reuse a previously valid approval artifact for a different target, parameter set, or later time.

Pass condition: parameter binding, expiry, or replay protection rejects the request.

T-07 — Circuit Breaker Test

Trigger defined anomaly/change-rate thresholds.

Pass condition: autonomous mutation authority is suspended without requiring agent cooperation.

T-08 — Audit Reconstruction Test

Select a privileged production mutation.

Pass condition: investigators can reconstruct principal, actor, runtime, task, policy, credential issuance, target, action, and result.

T-09 — Audit Failure Test

Disable or overload the primary audit path.

Pass condition: the system alerts, fails closed where required, or uses redundant audit paths according to policy.

T-10 — Revocation Closure Test

Leak a test credential, remediate it, and attempt reuse.

Pass condition: the old credential is invalid and closure evidence is recorded.


Part IX — Metrics

34. Exposure Metrics

Metric Desired direction
Static machine credentials
Active unmanaged secrets 0
Orphan credentials without owner 0
Credentials older than policy 0
Production workloads using federation ↑ toward 100%
Dynamic/JIT credentials as share of machine authentication
Secrets found in current code 0
Secrets found in historical repositories

35. Agentic Security Metrics

Metric Desired direction
Autonomous agents with unique identity 100%
Autonomous agents with named owner 100%
Autonomous agents with authority ceiling 100%
Delegated actions carrying principal + actor evidence 100% where applicable
High-impact actions linked to explicit authorization 100%
Reusable credentials intentionally exposed to LLM context 0
Cross-tool token passthrough 0
Autonomous workflows with circuit breakers 100% for production mutation
Autonomous workflows with defined budgets 100%

36. Change Dynamics Metrics

Relevant operational metrics include:

  • autonomous changes per hour/day;
  • concurrent mutating agents;
  • production deployments initiated autonomously;
  • average agent runtime;
  • tool calls per task;
  • irreversible actions per task;
  • rollbacks per autonomous change;
  • policy-denied agent actions;
  • circuit-breaker activations;
  • human interventions per autonomous workflow;
  • token/compute spend per successful change;
  • change failure rate by Human / Assistant / Autonomous mode.

These metrics help determine whether observed change velocity remains inside the designed Change Dynamics Envelope.


37. Remediation Metrics

Recommended measures:

MTTD   = mean time to detect
MTTO   = mean time to ownership
MTTRv  = mean time to revoke
MTTR   = mean time to full remediation

MTTRv is especially important because ticket closure can lag or misrepresent the security-critical event: invalidation of the exposed credential.

Also track:

  • backlog versus inflow;
  • unresolved active credentials;
  • failed rotations;
  • failed renewals;
  • unused credential count;
  • break-glass usage;
  • repeated leak classes;
  • time from exposure to architectural correction.

Part X — Maturity Model

38. ASM Maturity

Level State
ASM-0 — Embedded Credentials are dispersed, copied, and long-lived; little inventory exists.
ASM-1 — Stored Central secret manager, RBAC, basic scanning, and basic rotation exist.
ASM-2 — Managed Ownership, automated rotation, inventory, detection, and measurable remediation are established.
ASM-3 — Dynamic Workload federation, JIT access, dynamic secrets, and secretless CI/CD reduce standing credentials.
ASM-4 — Agent-Aware Human principal and agent actor are distinguished; Assistant and Autonomous modes are explicitly modeled.
ASM-5 — Governed Autonomy Autonomous agents have identities, mandates, budgets, authority ceilings, change envelopes, and deterministic circuit breakers.
ASM-6 — Closed-Loop Authority Identity, delegation, credential issuance, execution, evidence, exposure detection, revocation, and remediation operate as one continuously reconciled authority lifecycle.

At ASM-6, "secrets management" has effectively evolved into an:

Authority Lifecycle Control System for hybrid human/agent infrastructure.


Part XI — Review Checklist

39. Architecture Review Questions

A production design should be able to answer:

  1. Which actors can reach this resource?
  2. Which principal or mandate gives them authority?
  3. What is the maximum authority each actor can obtain?
  4. Can an agent modify the rules that determine that authority?
  5. Can a model decision alone increase privilege?
  6. Are credentials short-lived or dynamically generated where possible?
  7. Can raw reusable credentials reach model context, logs, or memory?
  8. What happens when the supervising human disconnects?
  9. Can tool discovery accidentally become authorization?
  10. Is token audience/resource binding enforced?
  11. Can a child agent escalate beyond its caller?
  12. What is the maximum autonomous change rate and concurrency?
  13. Which circuit breaker halts runaway mutation?
  14. Does that breaker work without agent cooperation?
  15. Can the organization revoke all authority for a compromised agent identity?
  16. Can investigators reconstruct who or what authorized a privileged action?
  17. Can an agent erase that evidence?
  18. What proves that a leaked credential has actually been revoked?
  19. Are security-policy changes governed more strongly than application changes?
  20. If every LLM behaves incorrectly, which protections still remain?

Part XII — Review Conclusions for v0.3

The review leading to this version made the following refinements:

  1. Agent Assistant Coding and Autonomous Agent Coding are now explicit operating modes.
    Their identity, credential, accountability, and governance requirements differ.

  2. The deterministic security substrate is elevated from a recommendation to a foundational invariant.
    Probabilistic systems can reason about access but cannot be the sole source of authorization.

  3. Deterministic is explicitly distinguished from static.
    Contextual and dynamic policy is fully compatible with deterministic enforcement.

  4. Change Dynamics is treated as a security property.
    Agentic coding changes not only who acts but how quickly and concurrently system state can change.

  5. Budget and resource limits are recognized as blast-radius controls.
    They complement but never replace authorization.

  6. Transition from Assistant to Autonomous operation is treated as a security architecture change.

  7. Policy self-modification receives explicit protection.
    Autonomous agents must not casually alter the controls that define their own maximum authority.

  8. Agentic infrastructure remains subordinate to deterministic infrastructure controls.
    MCP, A2A, agent-to-agent, and infrastructure-agent patterns do not eliminate resource-side authorization.

  9. The remediation lifecycle is retained as a closed-loop control.
    Detection is not success; revocation and verified closure are.

  10. Absolute "security guarantees" are avoided as a claim.
    Deterministic enforcement is necessary for enforceable security properties and auditable assurance, but no engineering architecture can promise absolute security.


Part XIII — External Reference Basis

The Canon is an original synthesis, not a restatement of any single external standard. Its design is consistent with and informed by the following bodies of work.

NIST

  • NIST SP 800-207 — Zero Trust Architecture
  • NIST SP 800-207A — A Zero Trust Architecture Model for Access Control in Cloud-Native Applications in Multi-Cloud Environments
  • NIST SP 800-63B-4 — Digital Identity Guidelines: Authentication and Authenticator Management

IETF / OAuth

  • RFC 8693 — OAuth 2.0 Token Exchange
  • RFC 8707 — Resource Indicators for OAuth 2.0
  • RFC 9396 — OAuth 2.0 Rich Authorization Requests
  • RFC 9449 — OAuth 2.0 Demonstrating Proof of Possession (DPoP)
  • RFC 9728 — OAuth 2.0 Protected Resource Metadata

RFC 8693 is particularly relevant to the principal/actor distinction because it defines delegation semantics and the act actor claim.

OWASP

  • OWASP Secrets Management Cheat Sheet
  • OWASP AI Agent Security Cheat Sheet
  • OWASP guidance on least privilege, tool security, high-impact approval, sensitive-data handling, and agentic failure modes

Kubernetes and Workload Identity

  • Kubernetes ServiceAccount TokenRequest / bound projected service-account tokens
  • SPIFFE / SPIRE workload identity concepts
  • cloud-native workload federation and short-lived identity patterns

CI/CD

  • GitHub Actions OpenID Connect guidance for short-lived cloud credentials and claim-bound trust

Agent Protocols

  • Model Context Protocol authorization specification, including resource/audience binding and prohibition of token passthrough
  • A2A enterprise authorization guidance, including identity-, skill-, action-, and data-level controls

HashiCorp Vault / Vault Radar

  • Vault dynamic database credentials and leases
  • Vault audit logging best practices
  • Vault Secrets Sync and workload identity federation
  • HCP Vault Radar secret detection, activeness context, remediation workflow, and managed/unmanaged correlation

40. Closing Principle

The Canon can be reduced to one architectural rule:

Agents may decide what to attempt; deterministic systems decide what may succeed.

From that principle follows the preferred lifecycle:

Identity → delegation → deterministic authorization → ephemeral authority → execution → evidence → detection → revocation → verified remediation.

The practical consequence is that secrets become progressively less central:

Old model: securely store passwords, tokens, and keys.
Modern model: minimize and dynamically manage credentials.
Agentic model: dynamically manage authority, producing credentials only as short-lived implementation artifacts.

That is the intended direction of Active Secrets Management.