Join our Newsletter — 33% off our NHI Course
Home Glossary Cyber Security CustomResourceDefinition
Cyber Security

CustomResourceDefinition

← Back to Glossary
By NHI Mgmt Group Updated September 8, 2026 Domain: Cyber Security

A CustomResourceDefinition, or CRD, extends Kubernetes with new API objects beyond the built-in resource types. It lets teams define custom schemas and controllers for application-specific workflows. Because CRDs become part of the cluster control plane, weak permissions or unsafe mutation paths can turn ordinary configuration into a privileged attack surface.

Expanded Definition

A CustomResourceDefinition, or CRD, is the Kubernetes mechanism for adding a new API type that the cluster understands and stores like a native object. It defines the object schema, validation rules, and API surface for a custom workload, platform capability, or operator-managed workflow.

CRDs are not just application metadata. Once installed, they extend the cluster’s control plane, so the object type itself becomes part of cluster governance. That is the key boundary: a CRD defines what can exist; its controller defines what the cluster does with it. A CRD may be used for anything from backup orchestration to policy automation, but it should not be confused with a simple ConfigMap or a custom application data model.

Guidance-vs-consensus note: there is broad agreement that CRDs should be treated as privileged platform constructs, but implementation patterns vary. Some teams tightly restrict who can create or modify them, while others allow broader platform engineering access and rely on admission, validation, and controller hardening. The common misunderstanding is to treat a CRD as “just another app object” rather than a control-plane extension.

Examples and Use Cases

CRDs appear when teams need Kubernetes to model domain-specific resources in a native way rather than through external scripts or ad hoc APIs.

  • An operator installs a CRD for database clusters so teams can request replicas, backups, and failover through Kubernetes objects.
  • A security platform defines a CRD for policy exceptions, letting an admission controller reconcile approved deviations across namespaces.
  • A platform team creates a CRD for scheduled jobs with richer lifecycle states than a standard CronJob can express.
  • A network automation system uses a CRD to declare routes, certificates, or load balancer intent, then a controller enforces the desired state.

The implementation tradeoff is convenience versus blast radius. A CRD can simplify operations by giving teams a clean API, but every new field, transition, and controller action also creates another place where malformed input or unsafe permissions can affect the cluster.

For readers comparing machine-facing controls across identity and platform governance, the OWASP Non-Human Identity Top 10 is useful context when CRD-driven automation depends on service accounts, tokens, or other non-human access paths.

Security Implications

CRDs become security-sensitive because they expand the attack and failure surface of the Kubernetes API. If a CRD is too permissive, poorly validated, or backed by a controller that trusts object fields too much, ordinary object creation can trigger privileged behavior inside the cluster.

Mismanagement can lead to excessive write access, controller abuse, escalation through dangerous reconciliation logic, or accidental denial of service when malformed objects cause repeated reconcile loops. Since CRDs can influence real infrastructure state, errors often affect more than one namespace and may spread through automation that assumes the CRD is trustworthy.

A common practitioner observation is that the CRD definition and the controller are inseparable from a security standpoint. Securing only the controller while leaving the custom API broadly writable still leaves a path for abuse. The reverse is also true: a restrictive schema does not fully protect the cluster if the controller performs privileged actions based on weakly validated intent.

Domain and Governance Relevance

In Kubernetes governance, CRDs sit at the point where platform extensibility becomes control-plane authority. That makes ownership, change control, and review discipline more important than they are for ordinary application configuration. The practical question is not whether a CRD is useful, but who can define it, who can modify it, and what cluster-level capabilities it can indirectly trigger.

For identity and non-human access, CRDs matter because many operators and controllers run with service accounts, cloud credentials, or other machine identities. If the CRD governs privileged automation, then the identity behind the controller must be treated as part of the trust boundary, not as an implementation detail. In that sense, CRDs are a governance issue for both platform teams and identity owners.

Where CRDs are used for infrastructure or policy orchestration, the safest interpretation is to treat them as controlled API extensions with security review, versioning discipline, and explicit ownership. They are most effective when the organisation recognises that extensibility in Kubernetes also means extensibility in authority.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

OWASP Non-Human Identity Top 10 and MITRE ATT&CK address the attack and risk surface, while CIS Controls v8 and NIST CSF 2.0 set the governance and control requirements practitioners need to meet.

FrameworkControl / ReferenceRelevance
CIS Controls v85 — Account ManagementCRD controllers often rely on privileged accounts and service identities.
6 — Access Control ManagementCRDs can become a privileged API surface if write access is too broad.
16 — Application Software SecurityCRD schemas and controllers introduce custom code and validation risk.
Recommendation — Restrict and review accounts that can create or mutate CRDs and their controllers. Enforce least-privilege access to CRD creation, update, and deletion paths. Validate CRD schemas and harden controller logic before exposing new resource types.
OWASP Non-Human Identity Top 10NHI-01 — Inventory and Ownership of Non-Human IdentitiesCRD automation often runs through service accounts and other machine identities.
NHI-04 — Secrets and Credential ManagementCRD-managed automation may depend on tokens, keys, or certificates.
NHI-05 — Authorization and Permission BoundariesCRD objects can trigger privileged actions if permission boundaries are weak.
Recommendation — Inventory controller identities and assign clear ownership for every CRD-backed automation path. Protect and rotate credentials used by CRD controllers and reconciler workflows. Constrain what CRD-based automation can do and verify its effective permissions.
NIST CSF 2.0PR.AC — Identity Management, Authentication, and Access ControlCRDs become risky when cluster access and mutation rights are not tightly governed.
PR.PT — Protective TechnologyCRD admission and controller safeguards are protective technologies for the control plane.
Recommendation — Apply strong access control to who can define, modify, and operate CRDs. Use admission controls and validation to block unsafe CRD objects and mutations.
MITRE ATT&CKT1611 — Escape to HostUnsafe controllers or privileged workloads tied to CRDs can contribute to node-level compromise paths.
Recommendation — Map CRD abuse paths to attacker movement opportunities and monitor for privilege expansion.

Deepen Your Knowledge

Sign up to our weekly newsletter — get 33% off our NHI Foundation Level Course

    NHIMG Editorial Note
    Reviewed and updated by the NHIMG editorial team on September 8, 2026.
    NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org