An AI governance framework becomes useful only when it changes how work is approved, built, deployed, monitored, and audited. Otherwise it is a policy PDF with good intentions and weak operational leverage.
Most governance programs start with familiar principles: use approved tools, protect sensitive data, keep humans accountable, apply deeper review to higher-risk systems, document decisions, and preserve audit evidence. Those principles align with public frameworks such as the NIST AI RMF Core and AI management-system standards such as ISO/IEC 42001. But a framework or standard does not automatically give engineers an execution path.
Engineering teams need implementable answers:
The working model for this post is simple: every AI policy requirement should map to at least one owner, workflow gate, platform control, runtime control, evidence artifact, or exception path. For AI agents and other automated workflows, this is related to the idea that prompts can suggest behavior, but enforceable policy needs a control point outside the model loop, as discussed in policy-as-code for AI agents. This article broadens that idea to enterprise-wide AI governance.
This is not legal advice and does not claim compliance with NIST AI RMF, ISO/IEC 42001, the EU AI Act, GDPR, HIPAA, or sector rules. Treat it as an implementation model that legal, privacy, security, engineering, product, and audit teams can adapt. Jurisdiction-specific labels, legal thresholds, regulated-use determinations, and privacy obligations require review by qualified counsel and the organization’s approved governance process.
A useful governance system looks less like a document and more like an operating model:
The reusable unit is the Policy-to-Control Map:
Requirement → Owner → Decision right → Enforcement point → Runtime signal → Evidence artifact → Exception path
For example, a policy might say:
Sensitive customer data may not be sent to unapproved external model APIs.
That statement is directionally correct, but not enforceable by itself. The enforceable version needs:
| Policy element | Enforceable interpretation |
|---|---|
| Requirement | Sensitive customer data cannot go to unapproved external model APIs |
| Owner | Data governance/privacy owner defines data classes; security/platform enforce routes |
| Decision right | Legal/privacy/security approve provider and data-use combinations |
| Enforcement point | Model gateway, egress policy, secrets policy, CI check, deployment gate |
| Runtime signal | Provider route logs, data-loss prevention findings, blocked requests, exception usage |
| Evidence artifact | Provider approval record, inventory entry, CI result, gateway logs, exception ticket |
| Exception path | Time-bound exception approved by a named risk owner with compensating controls |
Risk tiering matters. NIST’s AI RMF emphasizes governance, mapping, measurement, and management functions, including accountability and risk treatment rather than one universal control set. In implementation terms, low-risk experimentation should not need the same review process as a customer-facing production AI workflow that can materially affect users, customers, finances, safety, or operations.
The failure modes are predictable:
A paved-road model avoids both extremes: approved default routes for common use cases, explicit exceptions for unusual cases, and deeper review as risk increases. That framing mirrors the broader engineering operating model of paved roads plus explicit exceptions.
| Capability | Minimum viable implementation |
|---|---|
| Inventory | Register AI use cases with owner, provider/model route, data classes, risk tier, deployment context, and review date |
| Provider routes | Publish approved model/provider routes and block or escalate unapproved routes |
| Data rules | Map approved data classes to prompts, retrieval, embeddings, fine-tuning, evaluation, logs, and external APIs |
| Risk-tier gates | Require deeper review as exposure, autonomy, data sensitivity, or business impact increases |
| Evidence | Capture approvals, CI results, gateway logs, access records, deployment records, and exception tickets from normal workflows |
| Exceptions | Make exceptions scoped, time-bound, owner-approved, visible, and reviewable |
Ambiguous ownership is where governance slows down. A committee can help, but only if it has defined decision rights and service expectations. Otherwise it becomes a queue where legal, security, product, and engineering all wait for someone else to accept risk.
Use a RACI-style model as a starting point:
| Decision | Engineering/platform | Security | Legal/privacy | Product/business | GRC/audit |
|---|---|---|---|---|---|
| Provider approval | Implements approved routes | Reviews security posture | Reviews contract, data use, retention, residency | Confirms business need | Records evidence expectation |
| Data-class exception | Assesses feasibility | Reviews leakage and control risk | Interprets privacy/regulatory constraints | Accepts business residual risk | Tracks exception |
| Production deployment | Owns readiness and SDLC gate | Confirms security controls | Confirms required review complete | Owns launch decision | Samples evidence |
| Higher-impact use case | Designs architecture options | Reviews threat model | Interprets legal/privacy obligations | Owns use-case justification and residual risk | Defines audit trail |
| Access recertification | Supplies system ownership | Reviews privileged access | Advises on sensitive data access | Validates business need | Tracks cadence and closure |
| Control failure | Fixes or mitigates | Assesses severity | Advises reporting/privacy implications | Accepts or escalates residual risk | Preserves failure evidence |
This is a template, not a universal org chart. The important part is that no single function unilaterally accepts legal, security, privacy, and business risk. Engineering owns implementability. Security owns control expectations. Legal/privacy owns interpretation of contractual, privacy, and regulatory constraints. Product owns use-case justification and operating process. GRC/audit owns evidence expectations and test cadence.
For human review specifically, ownership must distinguish who decides, who reviews, who escalates, and who can stop the workflow. We explore this more in human review in AI workflows.
Classify AI use cases, not just models. The same foundation model can support a low-risk internal summarizer or a higher-impact customer-facing workflow. The model matters, but so do data, users, autonomy, exposure, and business impact.
Useful classification dimensions include data sensitivity, user population, external exposure, business impact, reversibility of errors, autonomy level, and whether generated output affects decisions with material user, customer, financial, legal, safety, employment, health, or operational impact.
Treat the following ladder as a design pattern until it is mapped to your internal risk taxonomy, systems of record, approvers, and legal/privacy review process. Do not use it to apply jurisdiction-specific labels; those determinations require counsel review and current regulatory analysis.
| Tier | Example use | Typical control examples |
|---|---|---|
| Experimentation | Internal prototype with synthetic/public data | Approved sandbox, no sensitive data, lightweight logging |
| Internal advisory | Employee assistant for non-sensitive tasks | Approved provider, access control, user caveats, inventory entry |
| Production advisory | AI assists support, sales, ops, or engineering workflows | Architecture review, data approval, logging, owner, monitoring |
| Automated low-impact | AI triggers reversible actions | Deployment approval, runtime controls, rollback, human escalation |
| Higher-impact workflow | AI informs decisions or actions with material impact | Independent review, explicit oversight, stronger evidence, named residual-risk acceptance |
| Prohibited | Uses outside organizational policy | Blocked route or escalation-only exception path |
Controls should tighten across the lifecycle: pre-build registration, design review, pre-deploy approval, runtime monitoring, and periodic review. Higher-risk systems generally need stronger review, more explicit oversight, better evidence, and clearer residual-risk acceptance.
Provider approval should produce controls, not a spreadsheet row.
A useful provider review evaluates more than model quality. It should consider data-use and training defaults, retention controls, privacy terms, residency, security posture, auditability, access controls, logging options, contractual terms, incident notification, and change notification. Provider trust, privacy, and security materials can inform review, but current terms, defaults, and configurations must be verified before approval because they can change.
The approval output should be machine-usable:
| Field | Example content |
|---|---|
| Provider/model | Approved provider, model family, version or route |
| Allowed data classes | Approved taxonomy values only; secrets should not be included unless a specifically designed, reviewed, and approved pattern exists |
| Allowed use cases | Summarization, code assistance, internal RAG, customer support draft, etc. |
| Approved route | Model gateway, API gateway, service catalog, approved SDK, private endpoint |
| Control examples | Logging, redaction, access group, retention setting, human review |
| Prohibited configurations | Unapproved endpoints, training-on-input defaults where not approved, unmanaged keys, unreviewed secret handling |
| Review date | Last approval and next review |
| Exception handling | Scope, expiration, approver, compensating controls |
Gateway-based enforcement is one practical pattern. As one vendor example — not a required architecture or endorsement — Kimchi describes putting a proxy in front of AI tools to centralize authentication, policy, and logging in its proxy architecture material, with related trust information in its trust center. The broader point is vendor-neutral: provider approval becomes enforceable when developers consume approved routes rather than copying API keys from a wiki.
AI data handling is broader than prompt input. Sensitive information can appear in prompts and chat history, retrieved documents, embeddings and vector stores, fine-tuning datasets, evaluation datasets, logs, traces, screenshots, support tickets, generated outputs, and external model API calls.
OWASP’s Top 10 for LLM and GenAI applications is useful here because it frames risks such as prompt injection, sensitive information disclosure, insecure output handling, supply chain issues, and vector/embedding weaknesses as application risks, not merely model risks.
The matrix below is intentionally illustrative. It is not an approval policy. Replace the placeholder labels with your approved internal taxonomy and route decisions through security/privacy/legal review before adoption. Do not publish internal data-class names, private URLs, secrets, routing details, or security-sensitive control configurations without approval.
| Illustrative data class | Prompt | Embedding | Fine-tune | Eval set | Logs | External API | Self-hosted model |
|---|---|---|---|---|---|---|---|
| Public placeholder | Candidate for standard approval | Candidate for standard approval | Candidate for standard approval | Candidate for standard approval | Candidate for standard logging | Provider approval still required | Candidate for standard controls |
| Internal placeholder | Approved route needed | Approved store needed | Review needed | Review needed | Scoped or redacted | Provider-specific approval | Access controls needed |
| Confidential placeholder | Restricted route | Restricted index | Strong review | Strong review | Redacted by default | Exception or approved route only | Restricted controls |
| Regulated-category placeholder | Counsel/privacy review | Counsel/privacy review | Counsel/privacy review | Counsel/privacy review | Strict minimization | Usually exception-only pending review | Restricted with approved controls |
| Secrets placeholder | Do not send | Do not embed | Do not use | Do not log | Do not log | Prohibited unless a specifically designed and approved control pattern exists | Prohibited unless a specifically designed and approved control pattern exists |
Treat RAG, fine-tuning, and prompt engineering differently. RAG introduces retrieval authorization, source freshness, index leakage, and access-control problems. Fine-tuning creates persistence and dataset governance problems. Prompt engineering often creates logging and disclosure problems. For architecture tradeoffs, see RAG vs. fine-tuning vs. prompt engineering.
AI access control is not just who can open the chatbot. It includes human users, service accounts, agents, internal assistants, model gateway routes, datasets, vector indexes, prompt repositories, evaluation datasets, fine-tuning jobs, and production integrations.
Access decisions should depend on role, project, environment, data class, risk tier, and use case. A developer experimenting with public data should not automatically have permission to deploy a production workflow that calls an external model with confidential customer data.
| Resource | Owner | Enforcement mechanism | Evidence examples |
|---|---|---|---|
| AI tool access | IT/platform | SSO, SCIM, IAM group | Provisioning and offboarding logs |
| Model route | Platform/security | Gateway policy, API key management | Route logs and policy config |
| Sensitive dataset | Data owner | Dataset entitlement, ABAC/RBAC | Access approval and recertification |
| Prompt repository | Engineering owner | Git permissions, code review | PR history |
| Fine-tuning job | ML/platform | Job policy, dataset approval | Run metadata and approval ticket |
| Production integration | Service owner | Deployment gate, environment permission | Deployment record |
Least privilege and separation of duties matter. Experimenter access, production deployer access, privileged dataset access, and exception approver rights should be distinct. For systems with agentic behavior, a control-plane pattern can help keep approvals, policies, identities, and logs outside the agent loop; see control plane vs. agent loop.
Human in the loop is not a control unless the human has authority, context, time, and an interface that shows what they need to review.
Oversight should depend on risk tier, impact, reversibility, autonomy, and the role the AI output plays in the workflow. At minimum, define when the human decides, reviews, escalates, stops automation, and what evidence is captured.
| Risk pattern | Oversight control examples | Evidence artifact examples |
|---|---|---|
| Internal advisory | User-visible caveat and feedback path | Usage logs, feedback records |
| Production advisory | Human reviews before external action | Review decision, output, source context |
| Automated reversible action | Human escalation on policy flag or low confidence | Alert, override, rollback record |
| Higher-impact workflow | Pre-action approval, documented rationale, possibly dual control | Approval record, reviewer identity, rationale |
| Prohibited automation | Stop and escalate | Blocked event, escalation ticket |
For higher-risk workflows, reviewers often need to see the model input, output, retrieved sources, policy flags, uncertainty indicators if available, and business context. A reviewer who only sees a final recommendation without source context is closer to a rubber stamp than a control.
Jurisdiction-specific legal thresholds and regulated-use determinations require legal/privacy review. Adding a human reviewer does not automatically satisfy regulatory obligations or make a risky workflow acceptable.
The inventory should track AI applications and use cases, not only standalone models. Many enterprise AI risks live in orchestration: prompts, retrieval, tools, datasets, providers, users, and production actions.
A baseline inventory entry should include business owner, technical owner, product area, use case, risk tier, provider/model/route, deployment environment, user population, data classes, pattern, external exposure, human oversight, access groups, logging, monitoring, exceptions, review date, and approval status.
Keep this sustainable. If fields cannot be reliably maintained, they become audit theater. Connect the inventory to existing systems where possible: service catalogs, model registries, architecture review tickets, CI/CD metadata, provider approvals, risk assessments, IAM groups, and exception records.
The inventory should answer basic audit questions quickly: what AI systems exist, who owns them, what data they use, which providers they call, what controls apply, and what exceptions are open.
This is where an AI governance framework either survives contact with delivery or becomes a side process.
Treat the following as implementation examples until they are mapped to your organization’s SDLC, change-management process, control owners, systems of record, and audit requirements.
| Stage | Governance control examples |
|---|---|
| Intake | Register use case, owner, risk tier, data classes, provider/model route, deployment target |
| Design | Threat model, data-flow review, provider approval, oversight design, logging plan |
| Build | Use approved SDKs, gateways, templates, and data-handling patterns |
| Code review | Check AI dependencies, prompt templates, retrieval sources, external calls, exceptions |
| CI/CD | Validate inventory record, approved route, secrets handling, IaC policy, logging hooks |
| Deploy | Require approvals based on risk tier and environment |
| Runtime | Enforce gateway/IAM/egress/dataset policies; monitor logs and incidents |
| Review | Recertify access, sample evidence, renew or expire exceptions |
Some controls can be policy-as-code. Others are workflow controls. Others are runtime controls. Do not force everything into one mechanism.
Examples:
Avoid publishing exact bypass paths, internal hostnames, network policies, privileged group names, or sensitive control configurations. The point is control placement, not exposing the implementation.
Auditors and executives do not need another assertion that governance exists. They need evidence that controls operated.
Evidence should come from normal workflows wherever possible: Git approvals, CI results, deployment records, gateway logs, IAM logs, provider approval records, inventory entries, architecture reviews, threat models, exception tickets, monitoring dashboards, and access recertification records.
For each control, define evidence source, owner, review cadence, and failure action.
| Control | Evidence source | Owner | Review cadence | Failure action |
|---|---|---|---|---|
| Provider route enforcement | Gateway logs, config history | Platform/security | Periodic sample | Block route or open remediation |
| Inventory required before deploy | CI/CD check and inventory record | Platform/GRC | Release sample | Stop deploy or exception |
| Sensitive-data restriction | DLP result, data-flow review | Security/privacy | Risk-based | Remove data, rotate secrets, investigate |
| Human oversight | Review record and rationale | Product/business owner | Risk-based | Retrain, redesign, or suspend workflow |
| Access recertification | IAM review record | Resource owner/security | Scheduled | Revoke or escalate |
| Exception expiration | Exception register | GRC/risk owner | Scheduled | Expire, renew, or remediate |
Dashboards should distinguish coverage from effectiveness. Useful views include inventory completeness, open exceptions, expired approvals, unreviewed higher-risk systems, access recertification status, provider route usage, and policy check failures.
As one vendor example — not an endorsement or required control framework — Amomitto’s discussion of security-program gaps is relevant because it distinguishes having documented controls from being able to show they operate in practice; see Six Pillars, One Gap. Do not invent audit pass rates or claim auditor acceptance unless you have actual evidence.
Do not start with a giant enterprise rollout. Start with one scope where demand and risk are visible.
A practical sequence:
Think in maturity phases, not guaranteed timelines:
| Phase | Goal |
|---|---|
| Document | Policy exists, but enforcement is mostly manual |
| Mapped controls | Requirements are mapped to owners, gates, controls, evidence |
| Paved road | Common use cases have approved implementation paths |
| Runtime enforcement | Gateway, IAM, CI/CD, logs, and monitoring enforce controls |
| Evidence review | Sampling and dashboards show whether controls operate |
Use this checklist as an implementation aid, not a compliance guarantee.
| Area | Questions to answer |
|---|---|
| Provider approval | Which providers and models are approved, for which use cases and data classes, through which routes? |
| Data classification | Can this data enter prompts, embeddings, fine-tuning datasets, evaluation datasets, logs, vector stores, or external APIs? |
| Sensitive information | Are redaction, tokenization, DLP, retention, retrieval authorization, and log scrubbing required? |
| Access control | Who can use the tool, route, dataset, prompt repository, agent action, and production integration? |
| Human oversight | Who decides, who reviews, when do they escalate, and when must the workflow stop? |
| Inventory | Is the system registered with owner, risk tier, provider/model, data classes, deployment context, access, oversight, logs, exceptions, and review date? |
| SDLC/CI/CD | Which gates enforce policy before build, before deploy, and during runtime? |
| Runtime controls | Are model calls routed through approved gateways, IAM, egress, dataset, and logging controls? |
| Audit evidence | Where is proof stored, who reviews it, how often is it sampled, and what happens when a control fails? |
| Exceptions | Who can approve risk, for how long, under what compensating controls, and where is the decision recorded? |
The short version: governance works when policy becomes an operating model. For each requirement, write the Policy-to-Control Map:
Requirement → Owner → Decision → Enforcement point → Runtime signal → Evidence artifact → Exception path
If any link in that chain is missing, the policy may still be useful guidance. But it is not yet an enforceable AI governance control.
Founder & CEO
AI governance becomes enforceable when policy maps to owners, gates, platform controls, runtime signals, evidence artifacts, and explicit exception paths inside engineering workflows.
Prompt engineering, RAG, and fine-tuning are not competing product categories. They are different control surfaces: prompts shape instructions, RAG supplies governed knowledge at inference time, and fine-tuning changes repeated model behavior. The right enterprise AI architecture starts with the failure mode, then adds retrieval, training, evaluation, access control, observability, auditability, and lifecycle ownership only where risk and requirements justify them.
AI-assisted software delivery is not just a coding-assistant rollout. When generation gets faster, the constraint often moves to context, tests, review, ownership, governance, and maintenance. This post lays out an AI-aware SDLC operating model.
AI made code cheap, but judgment across DevOps, data, infra, and services is still scarce. Why full-stack architects will define the next decade of software.